EugeniaBravo evolved from a plain React single page app into a Next.js build to improve SEO, discoverability, and editorial workflows for a content-driven site. The migration also replaced AWS Amplify with Supabase, which is a better fit for smaller projects that still need auth, storage, and a relational database.
The main goals were to get blog content indexed reliably, improve page performance, and simplify backend operations so the project could stay lean without giving up features like admin tooling, media uploads, and rich content editing.
The rebuild centers around Next.js with TypeScript on the frontend and Supabase for the backend and storage.


Next.js enables server rendering and static generation for the blog, which means crawlers receive full HTML instead of a mostly empty shell. This is a big improvement over plain React for dynamic indexation, because each post can ship complete metadata, canonical tags, and rich previews the moment it is requested.
The build includes sitemaps, robots rules, and per-page metadata so new articles become discoverable quickly. It also improves routing, image optimization, and overall load performance for the public site.
Supabase replaced Amplify to keep the stack lighter and more approachable for a smaller team. With Postgres, built-in auth, and storage in one place, it is easier to maintain than a larger AWS configuration while still providing a robust foundation for the admin dashboard and media workflows.
Auth now supports MFA, posts and categories live in relational tables, and images are stored in Supabase Storage with sensible fallbacks.
Editors manage posts, categories, and authors from the admin dashboard, with TinyMCE for rich content editing and preview flows before publishing. The blog uses SEO friendly slugs, related posts, and recommended cards to keep readers engaged.

Admin Dashboard
The public site combines a marketing funnel with a blog that is easy to browse and fast to load. Services, testimonials, FAQ, and contact pages are all built with the same SEO friendly foundation.

Home Page
The demo branch ships without secrets, runs on in-memory fixtures, and disables writes so reviewers can explore the UI safely. Analytics and cookie tooling are gated behind environment flags to keep the demo isolated from production.
The public demo is available with admin pages enabled at eugeniabravo-public.vercel.app.
If you want a full breakdown of the original React and Amplify stack, you can read the earlier post here.
Visit the live site at eugeniabravo.com, explore the demo at eugeniabravo-public.vercel.app, or browse the repo on GitHub.
Thank you for reading,
Julio Macias Gonzalez