Flat-file PHP CMS.
Built on HATEOAS.
Download it. Create a file. Ship a page.
No database to set up. No config to wrestle with. It stays just as simple whether you're putting together a single page or a few hundred.
Pages are folders. Content is plain JSON, sitting right alongside your code: readable in any editor, diffable in any git log.
It's a PHP CMS underneath. You'll get to that part soon enough.
site/pages/
about/
index.json # uuid, view, metadata
data.json # title, body, whatever fields you add
blog/
hello-world/
index.json
data.json
HATEOAS
Every route returns HTML. HTMX drives all interactions. The URL pattern is the API: no JSON layer, no client-side routing, no state management.
Files & Folders
Every page is a folder, every piece of content is a JSON file. No connection strings, no migrations, no SQL queries.
Override system
Everything in phlat/ is a default. Drop a matching file in site/ and it takes precedence. No configuration required.
Version controlled
Content lives alongside code in plain files. Every change is a diff. Roll back a page edit the same way you roll back a commit.
Quick start
Point the web server document root at public/, then bootstrap the app.
```php
<?php
$app = new Phlat\App(__DIR__);
$app->execute();
```Recent updates
All updates →v0.0.70
16 July 2026
Registry admin table switched to infinite scroll, and standard-sized UI controls restored in a few admin panels.