A blog for a site that should stay static.
Nano CMS slots a small, SEO-complete blog into a site that is already plain HTML. Markdown files on disk are the database. No MySQL, no build step, and no permanent admin panel sitting on the server.
--- title: Welcome to the blog date: 2026-06-09 category: News summary: A short SEO description. --- # Welcome Plain Markdown on disk, no database. Backups are a folder copy.
- Version
- 1.4.0June 2026
- Deployed
- 350 KB4,500 lines
- Requires
- PHP 8.1+shared hosting is fine
- Licence
- MITnothing to buy
Markdown files on disk are the database.
Nano CMS solves one specific problem. A client site should stay fast static HTML, but it needs a steady stream of fresh content for search ranking. Rather than converting the whole thing to WordPress, it slots a small blog into the site that is already there.
It is deliberately not a general purpose CMS. It does one thing and tries to do it well: serve a blog with strong SEO output in as little code as possible.
Two codebases. One on-disk format.
Frontend
Lives in the client's webroot. Renders pages, generates the sitemap and feed, and writes full metadata on every URL. Once it is there it never needs touching.
/blog/
Portable admin
Uploaded when you want to publish, removed when you are done. Writing a post does not need it back: you can leave it on while you work and take it off for months.
/blog/admin/
Config, kept out of reach
Settings and the password hash live above the webroot, so they are never served even if the server is misconfigured.
/blog-config/
Everything a small blog needs. Nothing it does not.
Writing
On the site
Five minutes, one setup wizard.
Any host running PHP 8.1 or newer. Shared hosting is fine.
The installer picks a config directory above the webroot and writes it.
Then publish. Take the admin folder off again whenever you like.
# unpack into the site you already have unzip nano-cms-1.4.0.zip -d ./blog # then open it once in the browser open https://example.com/blog/install.php # config lands above the webroot /home/you/blog-config/config.json
Free, and staying that way.
Released under the MIT licence. Nothing to buy, no key to enter, no per-domain fee. Use it on your own sites and on client work, as many as you like.
All we ask is that the small Powered by Nano CMS · Developed by Digital Fracture line in the footer stays where it is. It is how most people find the project. If it saved you an afternoon, you can buy me a coffee.