DevilsPlanet

A streetwear storefront, end-to-end: catalog, cart, Stripe checkout, admin panel. Where I learned how much an e-commerce admin actually needs.

About

DevilsPlanet was my first full e-commerce build, and the scope grew faster than expected — which turned out to be the most educational part. What started as a product catalog and cart became a full storefront with inventory management, order tracking, and an admin dashboard over three months. The product catalog supports filtering by category, size, and price range using MongoDB's aggregation pipeline. Cart state lives in the database rather than localStorage (after learning that localStorage-only carts break the moment a user switches devices mid-session). Stripe Checkout handles payments with webhook verification for order confirmation — the webhook integration was the most finicky piece, requiring idempotency handling to prevent duplicate orders on retried events. The admin dashboard ended up being half the total work. Store owners needed real-time inventory counts, low-stock alerts, order fulfillment status, and basic sales analytics. I built this with a React dashboard consuming a dedicated admin API layer with role-based access. The main lesson: e-commerce admin tooling is where the real complexity lives, not the storefront. Every feature a customer uses generates three admin requirements: a way to configure it, a way to view its state, and a way to fix it when something goes wrong. Building both sides simultaneously forced better API design from the start.

Features

  • Dynamic product catalog with filtering and sorting
  • User authentication and profile management
  • Shopping cart with real-time updates
  • Secure payment integration using Stripe
  • Order tracking and admin dashboard for inventory
  • Responsive UI optimized for mobile and desktop

Tech stack

ReactNode.jsExpressMongoDBJavaScriptStripe API

Screenshots

DevilsPlanet — Storefront
Storefront
DevilsPlanet — Product catalog
Product catalog
DevilsPlanet — Checkout flow
Checkout flow