Welcome to Nostalgia PHP

A caveman-simple file-based CMS

Lightweight by design.

Rock, Paper, Markdown

Build content sites fast with flat files. No framework. No database. Just pages, collections, and a few partials.

NostalgiaPHP creates clean HTML with zero build step—so you focus on words and layout, not toolchains. Portable by default: zip it, copy it, deploy anywhere PHP runs.

NostalgiaPHP project structure overview
Example project structure
Back to basics

The Nostalgia Core

Files, no faff

Pages and collections are just .md files with front-matter. Rename a file to change a URL. That’s it.

Templates & partials

Choose your template. Wrap your content; partials handle header, footer, hero, etc.

Portable content

Your “CMS” is Markdown. Move it anywhere—PHP today, something else tomorrow—no export dance.

Zero build step

No Node, no bundlers. Drop on a PHP host or run php -S localhost:8000 and you’re live.

Instant sitemap

sitemap.xml is built automatically from your content—no plugins needed.

404, sorted

Bad links happen. A built-in 404.php route is ready out of the box—or tweak it to fit your site.

Under the hood, there’s barely a hood.

How It Works

  1. Write content in content/pages and content/collections/{name}.
  2. Add front-matter like title, description, and date.
  3. Pick a template via template: main (or your own), and ship.
  4. Include partials for headers, footers, sidebars, or anything you want to reuse across pages.
  5. Deploy anywhere PHP runs—no database, no build step, no lock-in.
View the Dox
                  
---
title: About NostalgiaPHP
description: A tiny, flat-file CMS for sites.
date: 2025-09-21
template: main
tags: intro, php, markdown
---
                  
                  
# About NostalgiaPHP

No database. No build step. No framework.

It’s **Markdown in, HTML out**.
                  
                
Latest scribbles from the cave wall.

From the Blog

Don't Blink!

Don't Blink!

2025-09-18

Blink is a tiny JavaScript reactivity layer — no framework, no bundler, no virtual DOM. Just signals, effects, and simple state management you can copy-paste into any project.

Read more →

Markdown Example

Markdown Example

2025-09-17

Markdown Example View the markdown file here. H1 Heading (for page titles) H2 Heading H3 Heading Paragraphs This is a normal paragraph. It can contain bold, italic, and inline…

Read more →