Je viens de manger.I've just eaten.
To specifically flag that something happened only a moment ago, French has a dedicated construction, separate from the ordinary passé composé — it uses venir (present tense when the reference point is now, imparfait when it's in the past) followed by de + infinitive. The passé composé can describe a recent action too, but on its own it carries no built-in "just now" nuance; venir de + infinitive exists specifically to add that nuance.
Quick shortcut: conjugate venir in the present, add de, then the infinitive: je viens de manger, *elle **vient d'*arriver. It's the mirror image of the futur proche (aller + infinitive, for the near future) — this is the "recent past" equivalent.
The form
Venir is irregular in the present. Conjugate it, add de (which elides to d' before a vowel sound, including a mute h), then the infinitive — which never changes:
| Subject | venir | + de + infinitive |
|---|---|---|
| je | viens | viens de partir |
| tu | viens | viens de partir |
| il / elle / on | vient | vient de partir |
| nous | venons | venons de partir |
| vous | venez | venez de partir |
| ils / elles | viennent | viennent de partir |
- Je viens de finir mes devoirs. (I've just finished my homework.)
- Ils viennent d'arriver. (They've just arrived — de elides to d' before the vowel of arriver.)
- Elle vient d'hésiter avant de répondre. (She's just hesitated before answering — hésiter starts with a mute h, so de elides the same way.)
- Nous venons de manger. (We've just eaten.)
Not "come from doing something" — a fixed grammatical pattern
Venir on its own means "to come," and venir de + a place means "to come from" (Je viens de Lyon — I come from Lyon). But venir de + infinitive is a completely different, fixed pattern: it doesn't describe movement at all, only that an action just finished. Don't try to translate it literally as "to come from doing" — treat venir de + infinitive as its own grammatical unit meaning "to have just done."
The negative
ne… pas wraps around the conjugated venir, exactly as with aller in the futur proche:
- Je ne viens pas de finir — il me reste encore une page. (I haven't just finished — I still have a page left.)
- Elle ne vient pas de partir, elle est là depuis une heure.
Pronouns
A reflexive or object pronoun that belongs to the infinitive goes right before that infinitive, not before venir:
- Je viens de me lever. (I've just gotten up.)
- ✅ Elle vient de le voir, never ❌ Elle le vient de voir.
Venir de in the imperfect: "had just" happened
Venir de also works in the imparfait, shifting the whole pattern one step back in time — "had just done," relative to some past moment:
- Quand je suis arrivé, elle venait de partir. (When I arrived, she had just left.)
- Nous venions de manger quand le téléphone a sonné. (We had just eaten when the phone rang.)
This is the only other tense venir de commonly takes in this pattern — the infinitive itself still never changes, only venir.
Not a replacement for the passé composé
Venir de + infinitive is not just another way to say "I did something" — it specifically emphasizes that the action is very recent, seen from right now (or, in the imperfect, from that past moment). The ordinary passé composé stays the everyday way to talk about the past in general, with no "just now" meaning built in:
- J'ai mangé. (I ate / I have eaten — a plain completed action, no particular recency implied.)
- Je viens de manger. (I've just eaten — specifically, a moment ago.)
Use venir de only when "just now" is actually part of what you mean to say; otherwise, the passé composé is the ordinary choice.
Common mistakes
- ❌ Je viens manger. → ✅ Je viens de manger. (de is required between venir and the infinitive)
- ❌ J'ai venu de manger. → ✅ Je viens de manger. (venir de + infinitive uses the present or imparfait of venir, never the passé composé of venir)
- ❌ Elle vient de arriver. → ✅ *Elle **vient d'*arriver. (de elides to d' before a vowel)
- ❌ Elle le vient de voir. → ✅ Elle vient de le voir. (the pronoun goes before the infinitive, not before venir)
- ❌ Je viens de manger hier. → ✅ J'ai mangé hier. (the present viens de is anchored to right now, so it can't combine with a past time word like hier — for a past reference point, use the imparfait: hier, je venais de manger quand…)
Quick check
Put venir de + the verb in brackets into the correct form:
- Nous ____ (finir) le film.
- Elle ____ (arriver) — laisse-la souffler un peu !
- Quand tu m'as appelé, je ____ (me lever). (imparfait)
- Ils ____ (partir), tu viens de les rater.
- Je ____ (voir) ton frère dans la rue.
Show answers
- nous venons de finir 2. *elle **vient d'*arriver 3. je venais de me lever 4. ils viennent de partir 5. je viens de voir
Learn faster with GrammarMama
This article covers one topic — here's how GrammarMama helps you turn it into lasting progress:
-
Know your level — A quick placement test finds your CEFR level, so every exercise fits you. Find your level →
-
Follow a clear path — Practise every topic in the right order, from A1 all the way to C2. See the full path →
-
Set your own goal — Tell us what you're learning for, and exercises follow your interests. Set a goal →
-
Track your mistakes — See the patterns behind what trips you up, and fix them for good. Review your mistakes →
-
Build your vocabulary — Words from your exercises are saved and reviewed with spaced repetition. Open your vocabulary →
-
Practise speaking — Answer exercises out loud instead of typing, whenever you like. Try speech practice →
-
Train your pronunciation — Get instant, word-by-word feedback on how you sound. Train your pronunciation →
-
Practise a little every day — Short daily exercises, matched to your level, keep the language fresh. Start practising →
Key takeaways
- Venir de + infinitive = "to have just done [something]" — present tense of venir + de + infinitive, which never changes.
- de elides to d' before a vowel sound, including a mute h: *vient **d'*arriver, *vient **d'*hésiter.
- In the imparfait, the same pattern means "had just done": elle venait de partir.
- It's the mirror image of the futur proche (aller + infinitive) — recent past instead of near future.
- It's a fixed grammatical pattern, not literally "come from doing" — don't confuse it with venir de + a place (origin).
- Object and reflexive pronouns go before the infinitive: je viens de me lever.
- It adds a "just now" meaning that the ordinary passé composé doesn't have — it doesn't replace the passé composé as the general past tense, and the present form viens de can't combine with a past time word like hier (use the imparfait venais de instead for a past reference point).