A luxury watch e-commerce platform built for a premium retail brand. Editorial product pages, curated Heritage Collections, a persistent wishlist, cart, and a full order flow — engineered with a React front end and an Express back end, with MongoDB powering the product catalogue and order management.

Vyntra is a luxury watch brand with a serious catalogue — limited-edition series, Swiss-movement timepieces, Heritage Collection pieces from Seiko and G-Shock, and curated editorial photography to match. What they needed was a storefront that met the product at its own level: premium, editorial, and built to convert a considered buyer rather than a casual browser.
The brief was a fully custom platform with no template shortcuts. A storefront that reflects the brand, a product browsing experience built around collection curation and craftsmanship storytelling, a persistent wishlist for customers saving pieces before committing, and a cart and checkout flow that doesn't lose the sale at the last step.
I built everything solo — React front end with a carefully designed component system, an Express REST API, MongoDB for the product catalogue and order data, and Stripe handling the payment flow. No template. No compromise.
The Vyntra Creed — heritage, precision, craftsmanship, elegance — shaped every design and engineering decision. One: browsing must feel like discovery, not filtering. Customers move through curated collections and editorial image sections, not a generic product grid. The storefront earns attention before it asks for a purchase.
Two: the path from intent to checkout must be frictionless. The wishlist persists across sessions so a customer can save a timepiece today and return tomorrow. The cart is always one click away. The checkout is direct and clear — no upsells, no clutter, no reason to abandon. A customer who decides to buy a ₹7,899 watch should not have to fight the interface to do it.
The homepage opens with the Obsidian Series — a limited-edition campaign with editorial photography and a craftsmanship narrative. From there, customers move through collection sections: Heritage, Sport, Minimalist. Each watch gets a dedicated product page with full-size imagery, Swiss movement specifications, pricing with discount details, and a single 'Move to Shopping Bag' action. A persistent wishlist lets them save pieces across sessions without losing their shortlist.
The cart shows a clean order summary with itemised pricing. Checkout collects shipping details and hands off to Stripe for secure payment. On the back end, the Express API handles product queries, cart state, wishlist syncing, order creation, and user authentication. MongoDB stores the full catalogue, orders, and customer records. The admin side gives the client complete control over product listings, inventory, and order fulfilment without touching the codebase.

Vyntra is a full-stack e-commerce platform built with React on the client and Express on the server. MongoDB stores the product catalogue, orders, and customer data. Stripe handles payments. Every surface — storefront, product pages, wishlist, cart, and checkout — is a purpose-built React component connected to a clean, versioned Express API.
A component-driven React front end with a carefully designed system for the editorial storefront, collection pages, product detail views, wishlist, and cart. State is managed cleanly across components — wishlist persists in local storage, cart state is synced with the API.
RESTful Express API handling product queries, cart operations, wishlist syncing, order creation, and user authentication. JWT-based auth with protected routes for checkout and order history. Admin endpoints for product and order management are guarded by role middleware.
Mongoose models for watches, collections, orders, and customers. Products are organised by collection (Heritage, Sport, Limited Edition) with full metadata: price, MRP, stock count, specifications, and image references. Orders capture item snapshots so price changes don't affect historical records.
Stripe handles the full payment flow — card collection, charge, and confirmation. Webhook handlers on the Express side confirm payment success and trigger order creation. No card data ever touches the application server; Stripe owns that responsibility entirely.
Muhammed Safvan is a full-stack web engineer who builds products end to end: interfaces in React, APIs in Express and Node, MongoDB databases, and Stripe payment integrations — all built from scratch, no templates.
Vyntra was a full-stack client build: a custom luxury e-commerce platform engineered from the ground up, with editorial UI that matches the brand's premium positioning, and a clean codebase the client owns entirely. Currently open to full-time roles and freelance builds.