On this page
The problem
The agency needed a marketing site whose content the team could manage themselves — projects, services, pricing, and incoming leads — without touching code or waiting on a deploy for every edit.
What I built
A two-sided Next.js (App Router) app: a public, DB-driven marketing site and a password-protected admin CMS. MongoDB and Mongoose store all content, the dashboard offers full CRUD with drag-to-reorder and Cloudinary image uploads, and contact submissions flow into a leads pipeline with email notifications.
Outcomes
- Public site and full admin CMS from a single codebase
- Self-serve content editing — CRUD, reorder, and image upload
- Contact-to-lead pipeline with email alerts