Freelance · Full-stack
Freelance clients · ConfidentialE-commerce Platforms
Single-vendor online stores for freelance clients: a customer storefront, an admin panel for products, orders and inventory, and integrated payments.
Client and product names are withheld for confidentiality.
Problem
Businesses needed their own online store, plus a way to manage products, orders and stock day to day.
What I built
- Customer-facing storefronts in Next.js and React
- Backend APIs in Node.js and Express, with MongoDB
- An admin panel for products, orders and inventory
- Payment gateway integration at checkout
Technical highlights
- Delivered end to end as a freelancer, covering frontend, backend and payments
- Admin tooling so clients could run their stores themselves
Key decisions
- 01
Next.js for the storefront
Server-rendered product pages that search engines can index, so the store can be found through search.
- 02
MongoDB for the catalogue
Products carry varied attributes and variants, and a document model holds them naturally without rigid schemas.
- 03
An admin panel built for non-technical owners
Clients manage products, stock and orders themselves, with no developer needed for day-to-day changes.
- 04
A hosted payment gateway
The gateway handles card data, so no sensitive payment details ever touch our servers.
Hardest problems
- Payment and order states: confirmations, failures and refunds
- Keeping inventory accurate so stock never oversells
- Product variants: sizes, colours and pricing combinations
- A smooth checkout experience
Architecture
- Next.js storefront | Admin panel
- Node.js · Express APIs
- Payment gateway
- MongoDB
Stack
- Next.js
- React
- Node.js
- Express.js
- MongoDB