Payload + Next.js + Cloudflare

A calm starting point for a fast website.

Your new site is ready. This homepage stays deliberately simple: get the foundation right, then add content and complexity with intent.

D1database
R2media storage
EN / NLlocales
EDGEdeployment
First installation

From empty repository to working site

Follow these steps on a fresh install. Most of the configuration lives in the repository, not in a hidden dashboard.

01

Set your environment

Copy .env.example to .env and set PAYLOAD_SECRET and NEXT_PUBLIC_SERVER_URL.

02

Connect Cloudflare resources

Replace the placeholders in wrangler.jsonc with your D1 database IDs and existing R2 bucket names.

03

Run the migrations

Use pnpm payload migrate locally and deploy:database for the selected Cloudflare environment.

04

Start publishing

Log in to Payload, create your first page, and check both languages with the locale switcher.

Build what is needed. Measure what matters. Leave the rest out.

Fresh install / enRead the notes