All work

Case study

E-commerce & Admin

A storefront and its admin panel: catalog, real-time stock, orders and email notifications.

Role
Design, frontend, backend
Stack
Next.js · Neon Postgres · Better Auth · Stripe
Visit live site

The problem

A small store needs more than a storefront: someone has to manage the catalog, watch stock and process orders, and most templates stop at the pretty front page. The goal was a complete shop that a non-technical owner can run from day one, without a developer to set it up.

What I built

  • Storefront with catalog, product pages, cart and Stripe checkout.
  • Admin panel for products, stock and orders, behind its own admin login.
  • Real-time stock, so the storefront never sells what is no longer there.
  • Order confirmation emails.
  • One-click deploy that provisions the database, storage and the first admin account.

Key decisions

One repository, two products

The storefront and the admin share one Next.js app and one database schema, so a product edited in the admin is the same row the storefront reads. No sync jobs, no second API to keep in step.

Provisioning instead of instructions

Buyers do not follow a setup guide. After payment, a private copy of the repo is created and deployed to their own Vercel account with the database, storage and admin login already wired.

Owned, portable stack

Neon Postgres, Drizzle and Better Auth keep every piece on standard, exportable tools, so the owner can move hosting later without rewriting the app.