Skip to content
Go back

Ship Your Developer Blog in 30 Minutes with Cloudflare and Astro

You want a blog. You don’t want to spend weeks setting it up. Here’s how I got mine live in 30 minutes.

Table of contents

Open Table of contents

The Stack

Get Your Blog Code

Fork or clone AstroPaper:

git clone https://github.com/satnaing/astro-paper.git my-blog
cd my-blog
npm install

Make It Yours

Edit src/config.ts:

export const SITE = {
  website: "https://yourdomain.com/",
  author: "Your Name",
  title: "Your Blog Title",
  description: "What you write about",
};

Push it to your GitHub repo.

Deploy with Cloudflare Workers

Here’s the actual deployment flow:

1. Access Cloudflare Dashboard

Log into Cloudflare and navigate to Workers & Pages from the sidebar:

Cloudflare Workers & Pages sidebar

2. Get Started with Workers

On the Workers & Pages page, you’ll see the “Get started” screen. Click Get started next to “Import a repository”:

Cloudflare Get Started page

3. Select Your Repository

You’ll see the repository selection screen:

Cloudflare Import Repository

4. Configure Build Settings

After selecting your repository, you’ll see the build configuration form:

Cloudflare Pages setup with filled form

Fill in these settings:

5. Deploy

Click Save and Deploy. Cloudflare will:

Your first deployment takes ~2-3 minutes.

Add wrangler.json

Create wrangler.json in your project root:

{
  "name": "your-blog-name",
  "compatibility_date": "2025-08-03",
  "assets": {
    "directory": "./dist"
  }
}

Push to GitHub. Cloudflare will auto-deploy using Wrangler.

Fix Build Errors

If deployment fails:

Custom Domain

To add a custom domain to your Worker:

  1. Go to your Worker’s dashboard and click on Settings tab
  2. Find the Domains & Routes section
  3. Click + Add next to Custom domain

Cloudflare Custom Domain Settings

  1. Enter your domain name (e.g., ashishacharya.com)
  2. Follow the DNS configuration instructions
  3. Wait for DNS propagation (usually takes a few minutes)

Your blog will be accessible at both:

What’s Next?

That’s it. You have a blog. Now go write something.


Share this post on: