Back to portfolio
Production system
2026
Association website and admin system

AMAC Platform

Production site and dashboard for AMAC, managing members, events, workshops, directives and join requests.

Type

Institutional + Admin

Modules

Members / Events

Status

Production

Problem

AMAC needed a public presence for the association and a private system to manage members, workshops, events, registrations, directives and membership workflows from one place.

Contribution

Built a Next.js and Express TypeScript monorepo with a public marketing site, join form, authenticated dashboard, CRUD modules, image uploads, PDF reports and email-backed membership requests.

Key points

Public site communicates AMAC's mission and lets mechanics, workshops and students request membership.

Dashboard modules manage members, member types, workshops, workshop assignments, events, registrations, directives and users.

PDF exports for member lists and event registrations, plus Azure Blob image handling for event and content assets.

How it is built

Next.js app split into public routes and protected dashboard routes.

Express API protected by API keys and signed session cookies, with routes mounted both with and without /api for deployment compatibility.

PostgreSQL persistence, Zod validation, Nodemailer join flow, Sharp image optimization and Azure Blob storage.

Stack

Next.jsReactTypeScriptExpressPostgreSQLReact Hook FormZodReact PDFAzure BlobNodemailerTailwind CSS

Links

View live project