← Back to Blog

Building a Next.js Portfolio from Scratch

44 Reads
Building a Next.js Portfolio from Scratch

Building a Next.js Portfolio from Scratch

I wanted a portfolio that felt like mine — not a template. Here is the stack I landed on and why.

The stack

  • Next.js 15 (App Router) for server components and streaming.
  • Tailwind CSS for fast iteration on the design.
  • MySQL with a tiny hand-rolled query helper instead of an ORM.
  • better-auth for the admin login flow.

What I learned

  1. Server components make data-fetching feel natural again.
  2. A thin DB layer beats a heavy ORM for a project this size.
  3. Designing the admin panel first forced the data model to stay clean.

The admin panel is the product. The public site is just a view.

More write-ups coming soon.