ShopHub cover art

ShopHub

Built

A self-hosted online store you can start with one command.

Role
Solo. Design and full stack.
Timeline
2025
Stack
Next.js, React 19, TypeScript, Prisma, MongoDB, NextAuth, Docker, shadcn/ui
Status
Built

01 / The problem

Small sellers often want their own store without paying a monthly platform fee. ShopHub is a full store you can run on your own server: storefront, products with variants, cart, accounts, orders, reviews and an admin dashboard.

02 / Decisions

  1. One command to run it

    Docker Compose brings up the app and MongoDB together, with an optional Nginx proxy, so setup is a single script.

  2. Roles from the start

    Customers and admins sign in through the same system, with email verification and role checks on every admin route.

03 / Results

  • Runs locally or on any server with Docker. Card payments are next on the list.

More detail

The problem

Small sellers often want their own store without paying a monthly platform fee or wiring ten plugins together.

What I built

  • A storefront with products, variants and customer reviews.
  • A cart that works for guests and signed-in customers.
  • Accounts with email verification and separate customer and admin roles.
  • Orders from checkout to fulfilment, managed from an admin dashboard.
  • One-command setup. Docker Compose starts the app and MongoDB together, with an optional Nginx proxy.

Stack

Next.js, React 19 and TypeScript, Prisma with MongoDB, NextAuth, Nodemailer, Tailwind CSS and shadcn/ui, Docker and Docker Compose.

Outcome

It runs locally or on any server with Docker. Card payments are next on the list.