E-commerce platform
Storefront with payments, inventory and an admin panel — checkout to warehouse.
What it does
A storefront covering the full loop: product catalog, cart, checkout with card payments, and an admin panel for inventory and order status. Customers browse, pay and get a confirmation email; the admin side is where stock counts, prices and fulfillment actually get managed, not just seeded once and forgotten.
How it's built
Next.js on the frontend, with PostgreSQL as the source of truth for products, orders and inventory counts. Stripe handles card payments and webhooks drive order-status updates, so the app never has to poll for payment confirmation. Redis sits in front of the catalog for session data and short-lived caching — cart contents and product listings — to keep checkout latency low under load. Inventory decrements happen inside the same transaction as order creation to avoid overselling when two customers check out at once.
- Admin panel is a separate authenticated route tree, not a different app