Aaronmgz
Built a growing family web platform with a nautical personal site, public message board, baby-shower experience, admin tools, and a shared Cloudflare API.
En esta página 1 sección
Project notes
Active project
Building a family platform that can grow
- Estimated reading time
- About 3 minutes
- In this project story
- 6 sections
I built Aaronmgz as a personal corner of the web for my son, Aaron. It began with a nautical website and grew into a monorepo that supports a public message board, a baby-shower invitation experience, an admin panel, and the API behind them.
The important architectural decision was to treat those experiences as one product family. They share a domain, visual language, data contracts, localization, and release process while keeping each application focused on its own audience.
Outcomes
Unified four public and private experiences behind one domain
Built shared contracts, content, database helpers, localization, media, and UI packages
Added migration, schema-drift, accessibility, end-to-end, and deployment checks
Goals
Create something durable that can evolve from a family milestone into Aaron’s long-term home on the web.
Keep public and private surfaces distinct while sharing the contracts and infrastructure that should stay consistent.
Make family content approachable in English and Spanish without maintaining two separate products.
Ship with real safeguards around database migrations, authentication, accessibility, SEO, and deployment.
What I built
An Astro personal site
with a nautical identity, static delivery, shared content, and the public “Para Aaron” message experience.
A Next.js baby-shower application
for invitations, RSVPs, gifts, and guest dashboards.
A separate admin surface
for managing the event and the content behind it.
A Hono API on Cloudflare Workers
with D1 storage, Drizzle schemas, validation, sessions, and typed contracts.
Shared workspace packages
for API types, database helpers, content, localization, media, message models, and UI.
Technical highlights
- Front ends
Astro 6,Next.js 16,React 19,Tailwind CSS v4, and progressive islands where the static site needs interaction.- Backend
Hono,Cloudflare Workers,Cloudflare D1,Drizzle ORM, andZod.- Delivery
Turborepo,pnpmworkspaces, OpenNext, migration checks, schema-drift checks, smoke tests, accessibility tests, and end-to-end coverage.- Shared product language
typed content and localization packages keep the family of apps aligned without copying records between them.
Results
- One coherent domainfor the public site, event application, messages, administration, and API.
- A reusable foundationthat can add new chapters without rebuilding identity, content, or infrastructure each time.
- A project with personal meaningthat still receives the same architectural care as a commercial platform.
Why it matters
The best personal projects are not always small.
Sometimes the emotional reason to build something is exactly what makes it worth designing for the long term.
That family story also led to Between Contractions, a calm, privacy-first timer I built while Alejandra and I prepared for Aarón’s arrival. Aaronmgz holds the story of waiting for him; Between Contractions supports one practical part of the journey.
De este proyecto
Dentro del trabajo.
Product story
Building Aaronmgz as a family platform
How a nautical personal site became a shared family platform for messages, invitations, administration, and a long-lived digital home.
Leer artículoComparte este artículo
Compártelo.
La copia automática no está disponible.


