Evianchezvous

React.jsGraphQLMagento 2
View site
Evianchezvous — interface screenshot 2 (React.js, GraphQL)
Evianchezvous — interface screenshot 3 (React.js, GraphQL)

Context

Full rebuild of evianchezvous, Evian's home water delivery site (Paris / Île-de-France): migration from a monolithic Magento 1 to headless Magento 2 with a React + GraphQL front-end. Front-end tech lead for 2 years, from scoping to production.

My approach

The project meant doing everything at once: migrating Magento 1 → 2, pulling the front out of the monolith into a React app, rethinking checkout and the customer account, and porting the subscription logic (recurring water delivery) that Magento doesn't ship with. With SSR running underneath to keep search rankings, and performance that had to beat the V1 from day one.

  • React front-end built from scratch across the full e-commerce tunnel: cart, checkout, account, subscriptions, postal-code-based delivery slots — all the business logic moved to JS.
  • Custom GraphQL layer on top of Magento 2: native M2 doesn't cover everything, lots of custom resolvers and extended schemas to serve the front without unnecessary round-trips.
  • Subscription module + recurring payments + one-shot orders, wired into per-zone delivery constraints — something Magento can't do alone, coded custom on both sides.

Stack & technical choices

Magento 2 on the back for the e-commerce stack (catalog, orders, customers, payments), with a custom-extended GraphQL layer. React + Apollo Client + SSR on the front for performance and SEO — pulling out of a Magento monolith without losing indexation is the whole headless bet. React also enables a real mobile experience — components designed for touch and native-feeling transitions — that Magento 1 couldn't deliver. M1 → M2 data migration (products, customers, orders, active subscriptions) without breaking history.

React.jsGraphQLMagento 2

Outcome & takeaways

Still live years after delivery. Performance and conversion rate up vs the Magento 1 V1. On a personal level, this is my first React e-commerce site and my first front-end tech lead role over 2 years. The main lesson: moving a Magento to headless means rebuilding in React things the V1 used to give for free — cart, sessions, customer flows. A lot of plumbing to lay back down to gain on UX and perf.

Tell me about your project — I'll be straight with you about whether I can help.

Senior fullstack developer — I help startups and tech teams build the right thing, and build it right.

Based in France — fully remote or on-site depending on the project. Lyon, Grenoble, Annecy, Paris…