How I built this
A few people have asked. So here's the whole thing.
I built this site with Claude Code in about an hour. There's no CMS, no build step, no frameworks. Just a Laravel project that serves a static HTML file. The whole thing is under 200 lines of code. Claude wrote most of it while I told it what I wanted.
Here's exactly what I did β including a prompt you can drop into your own agent to do the whole thing in one shot.
What you need
- Claude Code β it's a CLI that lives in your terminal. Install it with
npm install -g @anthropic/claude-code. You need a Claude account ($20/month). - Composer β for creating the Laravel project. Download it here.
- A GitHub account β for version control and deployment.
- A Laravel Cloud account β free tier is fine. cloud.laravel.com.
That's it. You don't need to know PHP. You don't need to know CSS. You just need to be able to open a terminal.
And if you get stuck at any point β just ask Claude. Literally anything. "What does this error mean?" "Why isn't my font loading?" "How do I add a favicon?" There are no stupid questions. That's kind of the whole point.
Step 1 β Create a Laravel project
composer create-project laravel/laravel your-site-name
cd your-site-name
Laravel is just the wrapper here. It handles routing and gives you something to deploy to Laravel Cloud. The actual site is a single HTML file you'll put in the public/ folder.
Step 2 β Start Claude Code
claude
That's it. You're in. Claude Code can now read, write, and run code inside your project. It's genuinely magic the first time you use it.
Step 3 β Tell it what you want
This is the whole game. The more context you give it, the better the output. A good first prompt looks something like this:
"Build me a personal homepage. I'm [your name]. I [what you do, 1-2 sentences]. Keep it minimal β clean HTML and CSS, no frameworks. Serve it from public/index.html in this Laravel project. Update routes/web.php so the root route returns that file. My vibe is [describe it β clean? warm? playful?]. Include: [list what you want β bio, links, a photo, whatever]. Use [font name] from Google Fonts."
Claude Code will write the HTML, the CSS, the route β all of it. Then you just iterate. "Make the links turn red on hover." "Make the font a bit bigger." "Add a little scrolling ticker at the top." It handles all of it.
Step 4 β Push to GitHub
git init
git add .
git commit -m "Initial site"
gh repo create your-site-name --public --push --source=.
Install the gh CLI if you don't have it. It makes this a one-liner.
Step 5 β Deploy to Laravel Cloud
- Go to cloud.laravel.com
- Create a new project and connect your GitHub repo
- Deploy
Two minutes. Live URL. Done. Add your custom domain from the same dashboard.
The oneshot prompt
If you want to hand the whole thing to your agent and walk away, use this. Fill in everything in brackets.
"I want to build a personal homepage. Please do the following:
1. Open routes/web.php and replace the default route with:
Route::get('/', function () { return file_get_contents(public_path('index.html')); });
2. Create public/index.html as a complete, self-contained personal homepage. Here are the details:
β Name: [your name]
β Bio: [write 3β4 sentences about yourself in first person, casual tone β where you work, what you've done, what you care about]
β Links: [list your links β X/Twitter, LinkedIn, any projects]
β Vibe: [minimal and clean / warm and personal / whatever fits you]
β Font: use [font name, e.g. Manrope] from Google Fonts
β Colors: background [hex], text [hex], link hover [hex]
β Add a scrolling ticker at the top with words and emojis that fit my personality
β No frameworks, no external CSS libraries. Inline styles only. Keep it under 200 lines.
3. Make sure the HTML has proper meta tags, OG tags, and a canonical URL pointing to [your domain].
4. Initialize git, stage all files, and commit with the message 'Initial site'."
That's all I did. Then I pushed to GitHub, connected it to Laravel Cloud, and it was live. Building it was more fun than I expected β and I work in marketing, not engineering.
Questions? Find me on X.