Brew Haven

A full-stack coffee shop e-commerce application — personal project built end-to-end.

Web Engineering

Brew Haven — E-Commerce Coffee Shop

A personal project to build a complete, production-grade storefront from scratch — designing the API, implementing authentication, and shipping a React frontend that talks to it cleanly.

Type

Personal Project

Status

Completed

Year

2024–2025

Category

Full-Stack Web Dev

Brew Haven storefront
Brew Haven product page
Brew Haven dashboard

Project Overview

Brew Haven is a full-stack e-commerce application for a coffee shop storefront. It covers the complete user journey — browsing the menu, adding items to a cart, checking out — with a secure backend API and an admin role for managing products and orders. Built entirely solo, from database schema design to the final React UI.

The Challenge

Building a real e-commerce product requires solving several hard problems at once — authentication that's actually secure, role-based access that doesn't leak, a REST API that's predictable, and a frontend that handles state cleanly across a shopping experience. Doing all of this solo, from scratch, without cutting corners.

The Approach

I started with the data model and API design before writing any UI. JWT authentication with bcrypt password hashing was implemented first — then role-based middleware to separate customer and admin routes. The React frontend was built after the API was stable, using context for cart state and protected routes for the admin panel.

What Was Built

A complete, working storefront with two user roles, a full product management system, and a secure checkout flow — all connected through a clean REST API.

2
User Roles (Customer, Admin)
JWT
Auth System
REST
API Architecture
MERN
Full Stack

Technology Stack

Frontend

ReactReact RouterContext APICSS

Backend

Node.jsExpress.jsJWTbcrypt

Database & Tools

MongoDBMongooseGit

Key Features

Everything you'd expect from a production storefront — built without any shortcuts.

JWT Auth with RBAC

Secure login and registration with bcrypt hashing, protected routes, and role-based middleware separating customer and admin access.

Full Shopping Experience

Product browsing, cart management with React Context, and a complete checkout flow from selection to order confirmation.

Admin Product Management

Admin panel for adding, editing, and removing products — with order visibility and role-gated access control throughout.