How to vibe code a portfolio site
A portfolio is the ideal first vibe coding project — no backend, pure taste, and the artifact is your public face. It's also the project where 'vibe' matters most literally: the agent can produce any aesthetic; your job is to direct one, not accept the default.
The differentiator isn't animation — it's case studies. Three projects with problem → what you did → outcome beats twelve screenshot tiles every time, with recruiters and with search engines.
Tool: Any agent; this is also the perfect project for Course 01's early modules — it IS the practice. Time: one sitting. The free deep-dive: Vibe Coding using Claude Code.
- 1
Write the content before the code
One-line identity ('Product designer who ships'), three project case studies (problem, your work, outcome — with numbers where possible), and contact links. Content in hand makes every design decision easier and stops the agent from filling the page with lorem ipsum energy.
- 2
Direct a specific aesthetic
Name a direction, don't say 'clean and modern' (you'll get the same site as everyone): 'editorial, serif headlines, off-white paper background, one accent color, generous whitespace' or 'terminal-brutalist, monospace, visible grid'. Reference a site you love. Taste is the prompt.
- 3
Build as a static Next.js/Astro site
Case studies as markdown files so adding projects never touches layout code. Ask for semantic HTML, real meta tags, an OG image, and a sitemap — hiring managers share links; make the preview card look intentional.
- 4
Make it fast and accessible
Optimized images, system-font fallbacks, keyboard navigation, honest alt text. Run Lighthouse and let the agent fix what it flags — a 100 score on your own portfolio is a quiet flex that costs one prompt.
- 5
Deploy on your own domain
Vercel/Netlify free tier + a ~$10/year domain. yourname.com signals ownership; a platform subdomain signals template. Add a tiny privacy-friendly analytics snippet to see which case study people actually read.
Build my portfolio site as a static Next.js app. Content (real, included below): identity line, bio paragraph, three case studies (each: title, problem, what I did, outcome), and contact links — case studies as markdown files in /content. Aesthetic direction: [name a specific direction + one reference site]. Requirements: semantic HTML, responsive, dark mode following system, real meta/OG tags with a generated OG image, sitemap, and a Lighthouse-100 target (image optimization, no layout shift). No contact form — mailto and socials only. Deployable to Vercel. [paste your content]Do I need a portfolio if I'm not a designer?
If anyone ever Googles your name — yes. For developers and vibe coders specifically, a portfolio whose footer says 'vibe-coded with Claude Code, source on GitHub' is itself a work sample: it proves you ship.
Should I use a template instead?
Templates are faster to start and slower to stand out — and editing someone else's structure fights you. Vibe coding from a taste direction gets you a site that's actually yours in the same afternoon, and every tweak afterward is one sentence away.
Related verdicts: Linktree, Carrd, Webflow. All guides: a browser game · a mobile app · a Chrome extension · a SaaS · a Discord bot · a dashboard