Skip to content

pleasedontddosme/blog

Repository files navigation

Blog

A minimal, plain text blog built with Next.js — inspired by Paul Graham and Sam Altman.

Live website: pleasedontddosme.github.io/blog

Use it yourself

  1. Fork or clone this repo:

    git clone https://github.com/pleasedontddosme/blog.git
    cd blog
    npm install
  2. Delete the existing posts inside posts/ and add your own.

  3. Update app/layout.tsx with your own site title, subscription link, and analytics snippet (or remove them).

  4. Update the SITE_URL in app/feed.xml/route.ts to point to your domain.

Writing posts

Create a Markdown file in the posts/ directory. The filename becomes the URL slug (e.g. my-first-post.md/posts/my-first-post).

Each file needs front matter at the top:

---
title: "Your Post Title"
date: "2026-03-01T12:00"
label: "essay"
---

Your content here, written in Markdown.
  • title — displayed on the homepage and post page.
  • date — used for sorting (newest first). Format: YYYY-MM-DD or YYYY-MM-DDTHH:MM.
  • label — either "essay" or "note". Essays and notes are shown in separate sections on the homepage.

Writer UI (dev mode)

When running locally, visit /write to create posts through a form instead of editing files by hand. This page is not included in the static export.

Development

npm run dev

Open localhost:3000.

Deploy

The site exports to static HTML — no server needed.

npm run build

The output is in the out/ directory. Deploy it to GitHub Pages, Netlify, Vercel, or any static host.

For GitHub Pages, set BASE_PATH="/blog" (or whatever your repo name is) when building:

BASE_PATH="/blog" npm run build

About

A minimal, plain text blog built with Next.js — inspired by Paul Graham and Sam Altman.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors