The CMS that nibbles away complexity
Nibbly — a nibble is half a byte. Small, fast, no bloat.
Everything you need. Nothing you don't.
No Database
Content lives in JSON files. Easy to back up, version control, and deploy. No MySQL, no PostgreSQL, no configuration.
Inline Editing
Click any text on your page and start typing. WYSIWYG editing exactly where your visitors see it. No backend forms, no preview buttons.
Automatic Backups
Every save creates a timestamped backup. Restore any previous version with a single click from the admin dashboard.
Media Management
Upload, replace, and organize images and audio files. Soft-delete with trash keeps your mistakes recoverable.
Bilingual Ready
Built-in support for German and English with per-page translations. The architecture is easily extendable to more languages.
Clean URLs
Automatic .htaccess rewrites turn ugly .php extensions into clean, SEO-friendly paths. /en/example just works.
Battle-Tested Security
bcrypt password hashing, CSRF tokens, session management, rate limiting, XSS sanitization, and path traversal protection.
Zero Dependencies
No Composer packages. No npm modules. No build step. Just PHP 7.4+ and Apache. Upload via FTP and you're live.
The CMS for vibe coding
Tell your AI: "Build me a site with Nibbly." The result is a working CMS — not a prototype that needs a backend, a database, or a DevOps engineer.
No npm install. No webpack. No Docker. Nibbly is plain PHP and JSON files. Your AI writes them, you upload them. Done.
Any shared hosting with PHP works. No Node servers, no managed databases, no cloud functions. The cheapest hosting plan is enough.
FTP the folder to your server. There's even a deploy script — just enter your FTP credentials and hit go. Backup means copying that same folder.
Up and running in three steps
Upload
Copy the Nibbly folder to your web server. Any shared hosting with PHP and Apache works. No terminal needed.
Configure
Set your admin password and SMTP credentials. Two config files, five minutes, done.
Edit
Open your site, log in, and click on any text to edit it. Changes save instantly with automatic backups.
Content you can actually read
- One JSON file per page
- Human-readable structure
- Version-controllable with Git
- Copy to deploy — no migrations
{
"page": "en_home",
"lang": "en",
"sections": [
{
"type": "text",
"title": "Welcome",
"content": "<p>Your content here.</p>"
},
{
"type": "card",
"image": "images/photo.jpg",
"title": "A Feature",
"content": "Card description."
}
]
}
Why not just use WordPress?
WordPress
- Requires MySQL database and complex hosting
- Constant security updates and plugin patches
- 60 MB+ core install before any content
- Database dumps and migration tools needed
- Thousands of attack vectors from plugins
- Multi-step migration process between hosts
Nibbly
- Zero database — content is plain JSON files
- Tiny attack surface — no plugins, no themes
- Under 1 MB total footprint
- Backup means copying a folder
- Runs on any inexpensive shared hosting
- Deploy by uploading files — that's it
What about Next.js?
Next.js
- Requires Node.js runtime and build step
- Needs Vercel or a Node-capable server
- Separate headless CMS required for content
- 200 MB+ node_modules before writing a line
- Framework updates can break your site
- Steep learning curve — React, JSX, hooks
Nibbly
- No build step — edit and it's live instantly
- Inexpensive shared hosting is all you need
- Built-in inline editing — no external CMS
- Under 1 MB total — entire project
- Stable PHP — your site won't break on updates
- Zero lock-in — it's just files on your server
Small enough to understand. Complete enough to use.
- admin/ Admin panel & API
- content/ JSON content storage
- includes/ PHP templates
- css/ Stylesheets
- js/ Vanilla JavaScript
- images/ Uploaded media
- .htaccess Clean URLs & security
- index.php Your homepage
Ready to nibble?
MIT License — free for personal and commercial use.