Full-stack case study
Visitor Registry (MEAN)
A compact full-stack app built on the MEAN stack — an Angular front end served by an Express + MongoDB API on a single origin — with full create/read/update/delete on a list of visitors and their feedback.
- Role
- Full-stack — design & build, solo
- Front end
- Angular 19, TypeScript
- Back end
- Express, MongoDB, Mongoose
- Context
- Harvard Extension — Web App Dev
Public demo — sample data resets periodically, and the free server may take ~30–50s to wake on first load.
What it is
A visitor registry where you add a visitor with a bit of feedback, see everyone in a list, and edit or remove entries. It's small on purpose — the point was to practice a clean, end-to-end Angular + Express + MongoDB build, the Angular counterpart to my React/MERN checklist app.
How it's built
It's a monolith: the Express server builds and
serves the compiled Angular app and exposes the REST API under /api, so
the whole thing runs on one origin — no CORS, no separate front-end host.
Angular client
Angular 19 SPA · list + add/edit views · HttpClient → /api · router
Express API
REST /api/visitors · routes → services → model · serves the Angular build
MongoDB
Mongoose Visitor model · name + feedback
Request flow: Angular HttpClient → /api/visitors → Express route → service → Mongoose → MongoDB, and back.
Stack
Front end
- Angular 19
- TypeScript
- RxJS
- Angular Router
- HttpClient
Back end
- Node.js
- Express
- MongoDB
- Mongoose
Honest context
This began as coursework for my Harvard Extension Web Application Development micro-certificate. I include it to round out the stack story — Angular alongside React — and because it's real, working, full-stack code I designed and deployed solo (Render + MongoDB Atlas). Natural next steps would be form validation, pagination, and tests.