Sofia Kung
Trust & Safety AI Products Data Analytics Design

Lessons on taste, prompting, frameworks, and building a portfolio website with Codex

The Discovery Process: Learning What to Ask

I started building this portfolio website with a Wix resume template as inspiration, asking LLM questions as I went. While this iterative approach worked, I only realized what I truly wanted to build after several rounds of implementation.

The process taught me something valuable: I should have first considered which framework, design approach and content management strategy to adopt.

When I realized that I needed markdown support for blog posts, I had to migrate to a new framework—not because I didn’t plan, but because I didn’t know the right questions to ask initially.

AI Can’t Give You Taste

AI can only build what you ask for. Since I based my design on a resume-like template, my software engineer friends told me: “This looks like a resume. You might as well not build one.”

They gave me a few portfolio references that worked—minimalistic, compact, and functional designs that matched my goals. After studying these examples, I spent another day rebuilding the entire homepage based on the new reference.

That’s when I realized I needed to define my taste, styling, and purpose clearly before starting—because the effort to rebuild is high. (The specific questions I should have asked are covered in my framework below.)

Trial and Error: What Works for AI-Assisted Coding

I started with Claude, hit rate limits, then switched to Codex (ChatGPT Plus). But real progress came when I switched from terminal-based prompting to the Codex plugin in VS Code.

The VS Code plugin was easy to use—it allowed me to upload reference images easily, made reviewing conversation history seamless, and made iterating on code efficient.

I discovered that:

Building Production-Quality Code with AI

While building this project, I faced another challenge: getting AI to write quality code. LLMs build like enthusiastic juniors—functional but lacking production standards. They won’t automatically include:

You have to ask for all of the above explicitly.

Your Website’s Purpose Determines Your Tech Stack

Just when I thought I was done building, I hit a fundamental problem: I had chosen the wrong tech stack. Adding new content meant updating JSON files, which quickly became cumbersome to maintain.

My friend suggested using GitHub markdown as an easier solution, but my vanilla HTML/CSS setup couldn’t handle markdown files gracefully. Every new post triggered layout bugs.

That’s when I learned that your website’s purpose should drive your tech stack choice—this should be the first question you ask. I needed a framework built for markdown content, which led me to Astro with its native markdown support, file-based routing, and static generation.

Additional Learnings

Beyond the core lessons, this project taught me about other development skills.

 


The Questions I Wish I’d Asked First

Ask these questions before building anything:

Design & Vision

Tech Stack & Tools

Content Strategy

Quality Code

Reflection

Working on this vibe coding project was incredibly fun. While some rework was inevitable, the learning made it worthwhile. I hope this framework helps you build faster and more intentionally on your next project.

Happy building!

← Newer I Built 3 Products in 10 Days. Is This Pace Even Healthy? Back to home Home index →