Project← selected work
Tsuki Market: E-Commerce Platform
Full-stack online store built with React, Node.js/Express and MongoDB: a searchable product catalogue with sizes and stock status, user accounts, Stripe Checkout, order history and downloadable PDF invoices.
Overview
A full-stack online store. Shoppers search and browse the catalogue, zoom into product photos, pick a size and quantity, and pay through Stripe's hosted Checkout. Signed-in users can review their order history and download a PDF invoice for each order.
React with Bootstrap on the front end, and Node.js, Express and MongoDB Atlas behind it, with JWT sessions, deployed on Vercel. Started as a winter-internship project and extended into a semester mini project.
Key Features
- Searchable catalogue with sizes, stock status and image zoom
- Stripe Checkout
- User accounts and profiles
- Order history with PDF invoices
Stack
frontend
React.jsBootstrap
backend
Node.jsExpressMongoDB
authentication
JWT
payment
Stripe
deployment
VercelMongoDB Atlas
Challenges & Solutions
- Taking card payments without handling card data.Handed card entry to Stripe's hosted Checkout: the server creates the session and the client redirects to it with Stripe.js, so card details never touch the app's own server.
- Stopping shoppers from ordering items that are out of stock.Flagged each catalogue item in or out of stock, showing a SOLD OUT chip and disabling size, quantity and add-to-cart on unavailable products.