Rebuilding My Portfolio With AI Agents | No Code, 3 Hours, Deployed

A vibe coding experiment: rebuilding my portfolio with AI agents (Cursor, Claude Code, Open Code) in about 3 hours, no hand written code, Next.js to Astro, then deployed to Cloudflare Pages.

I have been coding since 2021, and this week I wanted to try vibe coding for real. I had wanted to try it ever since Theo started using it to build new apps he didn’t have time for, and Peter Steinberger began creating a tremendous number of projects and even founded Open Claw.

For this experiment I decided to rebuild my portfolio using only AI, without touching any code. The existing site used Next.js with Next-Intl for internationalization. I wanted to migrate fully to Astro, since I wasn’t using any of Next.js’s heavier features.

It’s worth mentioning that all of my profile content lived in .json files in different locales for translation. The tools I used were Cursor, Open Code, and Claude Code.

Getting started

First, I created a new branch, ran the /init command for Open Code and Claude Code, and added the Claude frontend design skill to the project.

I opened Claude Code, ran the /frontend-design skill, and prompted the AI to rebuild and redesign the project with Astro and translations plus keeping the design professional and elegant (with thinking enabled).

Then I waited a few minutes and checked the site. It was functional, but in some sections the text alignment was wrong instead of centered like the titles, and a few sections were missing even though they existed in the translation files. I created five different branches and tried the same prompt with small variations to compare results:

  • “make it like a developer’s aesthetic”
  • “make it attractive for recruiters and business opportunities”
  • “show my skills first, then my experience”

I also tried Open Code’s default AI. Overall, Claude Code did a strong job. When prompted for a developer-style profile it produced a terminal like hero section with a blinking cursor. Other branches had a Mac style window showing page content, or my profile as a globe with developer emojis (laptop, code) orbiting around it. Each run used different primary colors: blue, green, orange, red, gold.

Fixing issues and polishing

The common issues across runs were incomplete translations and text that wasn’t centered in certain sections.

I chose the version that felt like the best fit for me, the one you’re looking at now. After that I ran a Lighthouse audit from DevTools. Scores were mostly in the high 90s, with some 100s (e.g. SEO). The main drawbacks were in accessibility, due to poor color contrast in some text since teh primary color was gold and the background is white. I prompted the AI about those issues and the problems were fixed quickly.

Next came the fun part: vibe coding the blog section. It handled it in one shot with a clean layout. I then asked for features like time to read, tags, and authors, and added: “…and please ask me before adding any.” The AI suggested things like share buttons, related posts, and grouping by category or series, … . I added all except the grouping since I don’t need it yet but can add them later with a single sentence.

Building the blog section

Then the final test: building the project. The build failed with two errors, something about reading an invalid directory and a path not found. Cursor came to the rescue and helped fix them.

Finally I merged to main and deployed to Cloudflare Pages and all of it in about three hours.

I’m very happy with how the portfolio turned out, and I feel I’m only getting started with AI.