Blogging
A blog written inside the app and published as static HTML.
The problem
You want a blog. You don't want a second CMS to log into, or a server running for pages that rarely change.
What Bones does
The blog is written in the app and published as a static site.
- Authors write Markdown in the admin, with live preview and image uploads.
- The blog is a static Next.js export at
blog.<your-domain>. Every post is a real HTML file, so it's crawlable without JavaScript. - Posts get RSS, a sitemap, and generated social cards.
- Media stays in a private bucket. Image links go through the backend, which signs a fresh URL on each request.
- The blog's interface is in English, French, Spanish, and Hebrew, under
/fr,/es, and/il. Each post stays in the language it was written in.
How it compares
| Option | Trade-off |
|---|---|
| A hosted CMS (Contentful, Sanity) | Great editing, but another vendor and another login |
| WordPress | Everything included, but a PHP server to run and patch |
Bones keeps writing in the app and serves the blog as static files.
Go deeper
- Markdown — how posts are rendered and sanitized.
- Docs — the other static site.
- Vite and Next.js — why the public sites are static exports.