A focused e-commerce MVP built to validate a small-business storefront, emphasizing product discovery and a clean checkout flow.

Core Stack
Framework
Language
Frontend
Backend
Database
Payments
Tooling
Context
This MVP tackles the gap between over-templated storefronts and over-engineered systems by building a premium, intentional experience that converts quickly while staying technically sound enough to scale.
Most small e-commerce sites fall into one of two traps:
I implemented a Backend-for-Frontend (BFF) pattern using Next.js to keep the system modular and to make it possible to extract backend logic later without rewriting core functionality.
I chose Stripe plus a custom backend over Shopify to gain full control over data and flows and to deepen system design understanding, at the cost of increased implementation complexity.
Challenges & Tradeoffs
Designed core entities for products, orders, and payments with order snapshots to preserve historical accuracy and auditability (who, what, when).
Server-side Stripe integration with PaymentIntent flow and clear separation between UI and payment logic; idempotency identified as critical to prevent duplicate charges.
Homepage structured around clear hero messaging, best sellers, brand story, category navigation, and a focused call-to-action inspired by premium brands.
This project is less about building a store and more about designing a system that balances user trust, business logic, and technical scalability.