A five-page marketing site for Thurman Events Management — home, services, team, gallery, contact. Built solo in 2023 on Next.js 13 with Tailwind, Framer Motion page transitions, and a Nodemailer-backed contact pipeline that drops leads straight into the team's inbox. No CMS, no third-party form provider, no monthly bill.
"We needed a site that could carry an events brand — services, team, gallery, a contact form that actually worked — without the cost of a full agency engagement."
— Thurman Events Management · 2023
The calls that meaningfully moved the outcome. Not the cosmetic stuff.
File-based routes per section, wrapped in a shared Layout with nav, footer, and a page-transition overlay. Copy and section data live in /config — pages stay thin and content is editable without touching JSX.
/api/send-email is a Next.js API route that sends through a Gmail app password. Submissions trigger react-toastify feedback on the client and arrive directly in the team's inbox. No third-party form provider, no monthly fee, no data sitting in someone else's database.
react-responsive-masonry handles the events gallery — drops mixed-aspect images into a balanced multi-column layout that reflows at every breakpoint. CTA links out to the full Google Drive album for visitors who want more.
Each route mount runs a custom transition overlay. nextjs-toploader handles the top progress bar between pages. Small motion polish that lifts the site above the template tier without dragging in a heavy animation framework.
Sitemap and robots.txt regenerate automatically on every build via the postbuild script. SEO basics handled at deploy time, no manual maintenance, no forgotten updates after a content change.
Most content lives in /config and reusable /components — route files stay thin. Whoever picked the codebase up next could update copy, swap imagery, or add a section without learning the framework. Same handover pattern still used today.


