Skip to content

Servitor CMS 0.1.0

Choose a tag to compare

@justhasanuknow justhasanuknow released this 24 Sep 18:31
da630c7

The first public release of Servitor CMS: a self-hostable, multilingual CMS for blog posts and articles that runs as a single container with SQLite.

Highlights

  • Writing: a block editor with tables, highlighted code, math, images and video embeds; automatic saving, revision history and previews; a media library that re-encodes uploads to WebP and strips metadata.
  • Many languages: one translation per content language for every post, any number of content languages, and a panel in English, Turkish, French, German, Japanese and Simplified Chinese.
  • Editorial workflow: founder, admin and author roles, direct publishing for trusted authors, a review queue, scheduling, moderation and an append-only audit log.
  • Delivery: server-rendered public pages without JavaScript, with SEO metadata, RSS and sitemaps, or headless mode; a read-only REST API with scoped keys and an OpenAPI description; signed webhooks with retries.
  • Security and operations: reviewed against OWASP ASVS 5.0 levels 1 and 2; automatic migrations, a health check, backup and restore commands and a software bill of materials in the image.

Install

git clone https://github.com/justhasanuknow/servitor-cms.git
cd servitor-cms
git checkout v0.1.0
cp .env.example .env

Fill in .env, then run docker compose up -d --build to build the image from this release.

The prebuilt image for amd64 and arm64 is also available as ghcr.io/justhasanuknow/servitor-cms:0.1.0 (and 0.1), with a signed build provenance attestation:

docker pull ghcr.io/justhasanuknow/servitor-cms:0.1.0
gh attestation verify oci://ghcr.io/justhasanuknow/servitor-cms:0.1.0 --owner justhasanuknow

The docker-compose.yml of this release still builds locally; from the next release on, it pulls the prebuilt image by default. The installation guide and the deployment guide cover a production setup behind a TLS proxy. Every installation also serves the documentation at /docs.

Notes

  • Servitor runs as a single instance per data directory.
  • Before 1.0.0, a minor version may change configuration, the API or the data in incompatible ways; the notes of each release say so.
  • Report vulnerabilities privately as described in SECURITY.md.

The full list is in CHANGELOG.md.