Launching My Cloudflare-Hosted Next.js Blog

Launching My Cloudflare-Hosted Next.js Blog

What started as a weekend with no plans turned into building and deploying my personal developer portfolio with Next.js, AI-powered ideas, and a Cloudflare launch—while dodging feature creep.

Jeffrey ZalischiJeffrey Zalischi

Aug 10, 20255 min read

1. The Weekend That Got Hijacked by AI

It’s rare, but it finally happened — a weekend all to myself. My agenda was basically:

  • Drink coffee
  • Maybe play some games
  • Hang out with my dog

But then I stumbled across a dangerous notification in my Cursor IDE:

GPT-5 is free inside cursor-cli.

OpenAI clearly doesn’t want people noticing Google’s release of Genie 3 — it’s become a trend that they try to steal the spotlight whenever Google releases anything.

But that will be a different article. For now, thanks for the free compute.

That one discovery transformed my weekend from low-effort bliss into “let’s see how much free usage I can squeeze in before they close the gates.”

Within an hour I had multiple terminals running and I was prototyping things like:

  • React UI components
  • A Pokémon battle simulator
  • SVG-generated icons

Fun? Absolutely. Useful? Questionable.

But these are the usual stress-tests I run whenever a new model drops. That’s when I realized — if I’m going to keep building random things like this, I need a central hub. Somewhere to document my experiments, share my builds, and laugh at the occasional disaster.


2. The Plan That Changed Mid-Flight

Originally, I set out to make a generic business site template — clean, CMS-ready, client-friendly. Something I could repurpose for different people.

But here’s the thing about AI: It doesn’t just generate code really fast — it also allows you to explore many different solutions in such a short amount of time.

Which is very dangerous for someone like me, because I’m genuinely curious. Suddenly I had 10 more features than I needed, and my “simple” template was mutating into a chaotic mess.

Pretty soon, my “client-friendly template” had become a grab-bag of features I thought were cool in the moment but provided little to no real value. I was on track to adding it to the graveyard of apps I never finish.

At that point, I decided: no more playing around. I’m going to deploy this, strip it down, and get the fundamentals right before adding anything new.


3. Why I Picked Cloudflare (And Not Vercel or Netlify)

Sure, I could’ve gone with Vercel — Next.js and Vercel are basically best friends. But Cloudflare had been sitting in my “I should try this” list for months.

Here’s what sold me:

  • Speed: Their edge network delivers content almost instantly, no matter where the visitor is.
  • Security: Automatic SSL and DDoS protection without me lifting a finger.
  • Global reach: Feels like my site is hosted in a cyberpunk server room in the sky.

Plus, developers I trust have been raving about it. I was also excited to use wrangler for managing a minimal local test and deploying straight to production from the terminal.


4. The First Build… And First Facepalm

My first attempt was peak feature creep. It had:

  • A bunch of ShadCN components that looked cool but added no real value
  • Inconsistent UI spacing
  • A colorful theme that screamed “try hard”

The AI-generated “slop” was such a mess that there was no way I was going to use that repo.

I’d fallen right into the trap AI makes so easy: adding things because I can, not because I should.


5. Hitting Reset: The “Keep It Simple” Rule

Instead of wasting hours fixing problems I’d created, I decided to start fresh.

The new plan:

  • Grab a minimal Next.js starter template from Vercel
  • Strip it down even further
  • Only include pages that serve a clear purpose

I ended up with:

  • Landing Page → Who I am + what I do
  • Blog → For builds, thoughts, and experiments
  • Projects Page → Portfolio of AI-assisted creations
  • Contact Page → Basic, no carrier pigeons required

If it didn’t help visitors, it didn’t make the cut.

Example: Starting the project

# Create a new Next.js project
npx create-next-app@latest my-blog

# Move into the folder
cd my-blog

# Install dependencies
npm install

6. Deploying to Cloudflare

With the site ready, deployment was next — and Cloudflare Pages made it weirdly painless.

I didn’t even need to push to GitHub. That still blows my mind.

Here’s what I did:

  1. Created a wrangler.json file.
  2. Updated my next.config.ts.
  3. Added a couple of scripts to package.json.

From there:

npm run preview
npm run deploy

This let me test the repo locally exactly as it would run on Cloudflare.

It was that easy — and now I don’t have to pay a monthly fee like I would with Vercel. Plus, I can manage deployments entirely from my terminal.


7. Why This Worked

Keeping things minimal saved my weekend.

The win list:

  • Fast load times thanks to Cloudflare’s edge network.
  • A clean Next.js setup that supports generateStaticParams and edge functions without the bloat.
  • A design I can expand without tearing it all down later.

The biggest win? I actually shipped something instead of leaving it in “coming soon” limbo.


8. Lessons Learned

  • AI accelerates scope creep. Amazing tool, but it needs guardrails.
  • Deploy early. You’ll find the real problems faster.
  • Every feature has a cost. If it’s not worth maintaining, skip it.

9. What’s Next

This is just the starting point. I’ve got plans:

  • Build Log → Public updates on experiments
  • Training AI Models → Documenting a few product ideas and their progress
  • Knowledge Graph → Training a personal AI using all the site’s content
  • SaaS Ideas → Behind-the-scenes of starting a small venture

It’s going to get weird, experimental, and probably a little over-engineered — but that’s half the fun.


If you’re building your own portfolio or blog — especially with AI in the mix — remember:

Start small. Deploy fast. Improve later. A live imperfect site beats a perfect one nobody can visit.

Jeffrey Zalischi