AustinAustin/Product Designer
Home
My cozy spot in the digital wilderness.

How I Built My Portfolio Site

A walkthrough of the tools, decisions, and process behind hiaustin.co

Published on June 26, 2025

Building a personal portfolio sounds simple but can quickly become overwhelming.

After some research, I found a great starting point and customized it to create something that feels uniquely mine.

Starting with the Right Foundation

Instead of building from scratch, I started with Nim, a beautiful open-source portfolio template by Julien Thibeaut. It came with modern tools like Next.js 15, React 19, Tailwind CSS, TypeScript, and MDX for content.

The template gave me a solid foundation, but I wanted to both customize it and learn Cursor along the way.

The Tools That Made It Happen

Design & Development:

Key Decisions & Why

TypeScript Over JavaScript: Type safety caught bugs early and made refactoring safer.

Tailwind Over Custom CSS: Styling directly in components without context switching.

MDX Over Traditional CMS: Familiar Markdown with React component flexibility, all in Git.

Vercel for Hosting – Automatic deployment on every GitHub push. I can test and tinker with links before pusing live.

What I Learned

The Good:

  • Starting with a template saved loads of time
  • TypeScript prevents headaches down the road
  • Tailwind makes design iteration incredibly fast

The Challenges:

  • Cursor can be finnicky
  • Balancing media richness with performance
  • Getting lost in the details

Tools I'd Recommend

For beginners: Start with a template, use Vercel for deployment, stick to Tailwind for styling.

For advanced builders: TypeScript for serious projects, MDX for content flexibility, Framer Motion for smooth animations.

The Result

The final site feels fast, looks polished, and represents my work well. The whole process took about 6 weeks working evenings and weekends. With the foundation in place, adding new projects or blog posts takes minutes.

Building this site reminded me why I love working at the intersection of design and development. Having control over every detail makes the final product feel truly personal.