Sveltia CMS review
Open source, self-hosted

Sveltia CMS is an admin application that runs entirely in the browser, edits Markdown and data files in your Git repository, and commits the result through your Git provider's API. It reads the configuration format Decap CMS and Netlify CMS use, so for most existing sites the migration is one replaced script tag. It is a rewrite in Svelte, not a fork, and ships as a bundle under 500 KB.
The migration guide is exact about where drop-in ends. Bitbucket, Azure DevOps and the Git Gateway backend are not supported, and neither are the Netlify Identity widget, Remark plugins or the decap-server local proxy. Sites on those backends must move their repository to GitHub, GitLab, Gitea or Forgejo first, and sites using the other features need a workaround. Everyone else usually keeps their config, OAuth app and signed-in sessions.
The trade is maturity. On 13 September 2026 the latest release was v0.211.2, published the day before, and the project still calls itself a beta, with 1.0 targeted for late 2026 and no LTS. One developer maintains it and community pull requests are not accepted yet. The documented script tag always loads the newest release, and until 1.0 a minor release may carry breaking changes.
Our scorecard
Our editorial read across six dimensions, scored 1 to 5. This is our own assessment, not an aggregate of user reviews, and it is deliberately kept out of the page's structured data.
- Content modelling3/5
Decap's collections and fields plus relation fields and unusually good i18n structures. Still files, not a database.
- Developer experience4/5
Setup is an HTML file and a config, with a JSON schema for autocomplete and a proxy-free local mode. The docs flag themselves as unfinished.
- Editor experience4/5
Fast and mobile-friendly, with a preview pane. No visual editing of the live page, which the roadmap rules out.
- Pricing5/5
MIT with no tier, seat or account. An auth worker on GitHub is the only likely running cost.
- Governance2/5
Pull-request review on GitHub and GitLab, but no roles, no user management and nothing to stop two editors colliding.
- Ecosystem2/5
One maintainer, community templates rather than official ones, no MCP server. Decap's OAuth clients do carry over.
An editorial read, not an aggregate of user reviews, and deliberately kept out of this page's structured data.
What you can query
Git backends
No Bitbucket or Azure DevOps
Reads and commits through the GitHub GraphQL API, the GitLab API or the Gitea and Forgejo REST API, loading every entry at startup
Configuration file
The Decap format, extended
Backend, media, collections, fields and i18n in YAML, TOML or JSON, or a JavaScript object, checked at load against a published JSON schema
Sign-in
GitHub has no client-side PKCE
Personal access tokens on any backend, client-side PKCE on GitLab, Gitea and Forgejo, or an authorization code flow through a server-side client on GitHub
Editorial and local workflows
Local mode is Chromium-only
Draft branches with pull requests for review on GitHub and GitLab, and direct editing of a local clone through the File System Access API
Media storage
Chosen in config
Repository media folders, or providers including Amazon S3, Cloudflare R2, Cloudinary, Backblaze B2 and Uploadcare, with a built-in image optimiser
JavaScript API
React only, for now
Manual initialisation, custom field types, editor components, preview templates and event hooks, written as React components for Decap compatibility
Who Sveltia CMS is for
Sites already on Decap or Netlify CMS with a repository on GitHub, GitLab, Gitea or Forgejo, which is the audience the project was built for. Multilingual static sites come next, because i18n is where Sveltia is strongest. A freelancer handing a small Astro, Eleventy or Hugo site to a client gets a fast editor with no bill and no server to patch.
Look elsewhere if the repository lives on Bitbucket or Azure DevOps, if editors need roles or cannot hold a Git account, or if procurement wants a 1.0 release and a support contract. The project itself steers sites with thousands of entries and assets towards a heavier CMS.
Strengths and limits
What it does well
- Reads Decap and Netlify CMS configuration, and existing OAuth apps and signed-in browser sessions carry over, so most migrations are one script tag.
- MIT licensed in a single LICENSE.txt, with no enterprise directory and nothing asked of you beyond keeping the notice.
- Internationalisation is designed in, with five file structures to choose from and field-level control over what is translated and what is duplicated.
- Sign-in can avoid a server entirely, using personal access tokens anywhere or client-side PKCE on GitLab, Gitea and Forgejo.
- Commits made through the GitHub backend are signed and marked verified without any configuration.
- A local workflow edits your working copy straight from the browser, which replaces the decap-server proxy.
- Built-in one-click translation through Google, Anthropic, OpenAI, Mistral or DeepSeek, using an API key you supply.
- Releases land several times a week, against a public roadmap that states its non-goals as plainly as its goals.
Where it falls short
- STILL PRE-1.0. The project calls itself a beta, targets 1.0 for late 2026, offers no LTS, and warns that minor releases may break things until then.
- The documented script tag is unpinned and loads the newest release on every visit, so the admin panel can change for editors without a deploy.
- One developer writes almost all of the code, and pull requests from the community are not accepted yet.
- No Bitbucket, Azure DevOps or Git Gateway backend and no Netlify Identity widget, so those Decap sites have to move before they can switch.
- GitHub OAuth for non-technical editors still needs a server-side client such as the Cloudflare Worker authenticator, because GitHub has not shipped client-side PKCE.
- No roles and no built-in user management: every editor needs a Git service account with write access, and nothing prevents simultaneous edits clashing.
- Editorial workflow runs on GitHub and GitLab only, and the local workflow only in Chromium-based browsers.
- No live demo site yet, no official starter templates and no MCP server.
Sveltia CMS pricing
Sveltia charges nothing and asks for no account. The application loads from a public CDN or installs from npm, the content lives in your repository, and the MIT licence adds no conditions beyond keeping the notice. Serving the admin page costs whatever your static host already charges for the site.
Authentication is where a small bill can appear, and it depends on the Git provider. Access tokens and PKCE on GitLab, Gitea or Forgejo need no server. GitHub OAuth for non-technical editors needs a server-side client, and the project's own option is a Cloudflare Worker that runs on your Cloudflare account. That price belongs to Cloudflare, so we do not quote it.
Support is the other line. Free help is GitHub Discussions, and the support page warns that questions about setting up from scratch may go unanswered, because free help is aimed at migrations. The maintainer takes paid work on builds, migrations, customisation and ongoing maintenance, with no published rates.
Count the beta as a cost as well. Pinning an exact version stops surprise changes but also stops security fixes, which the release documentation warns against. Before 1.0 no pin gives you both, so someone has to read the release notes.
Sveltia CMS
$0
MIT, from a CDN or npm
- No tiers, seats, entry limits or sign-up
- Content and config stay in your repository
- No hosted version exists today
- Optional GitHub Sponsors for the maintainer
Sign-in setup
Depends on backend
Where a small bill can appear
- Access tokens: no OAuth app and no server
- GitLab, Gitea, Forgejo: PKCE with a client ID only
- GitHub OAuth: a server-side client such as a Cloudflare Worker
- Netlify customers can keep Netlify as the OAuth provider
Maintainer's paid services
Quote only
Direct from the author
- New builds and migrations from Decap or WordPress
- Customisation, training and ongoing maintenance
- Free channels will not cover setup from scratch
- No rates published on the support page
Query example
A minimal fetch against the live API, with credentials read from the environment rather than pasted inline.
# yaml-language-server: $schema=https://unpkg.com/@sveltia/cms/schema/sveltia-cms.json
# Loaded by admin/index.html, which contains only:
# <script src="https://unpkg.com/@sveltia/cms/dist/sveltia-cms.js"></script>
backend:
name: github
repo: your-org/your-site
branch: main
# GitHub OAuth needs a server-side client, here the Cloudflare
# Worker from github.com/sveltia/sveltia-cms-auth.
base_url: https://sveltia-cms-auth.your-subdomain.workers.dev
auth_methods: [oauth, token]
publish_mode: editorial_workflow # GitHub and GitLab backends only
media_folder: /public/media
public_folder: /media
i18n:
structure: multiple_folders
locales: [en, de, fr]
collections:
- name: posts
label: Posts
folder: /content/posts
i18n: true
fields:
- { label: Title, name: title, widget: string, i18n: true }
- { label: Date, name: date, widget: datetime, type: date, i18n: duplicate }
- { label: Body, name: body, widget: richtext, i18n: true }
# The script tag is unpinned, so every visit loads the newest release.
# Before 1.0, a minor release may include breaking changes.Limits and quotas
- Latest release on 13 September 2026: v0.211.2, published 12 September 2026.
- Status: beta, with 1.0 targeted for late 2026 and no long-term support versions.
- LICENSE.txt: MIT, copyright 2026 Kohei Yoshino.
- Backends: GitHub including Enterprise, GitLab, Gitea 1.24 or later, Forgejo 12.0 or later.
- Not supported: Bitbucket, Azure DevOps, Git Gateway, Netlify Identity widget.
- Editorial workflow: GitHub and GitLab backends only.
- Runs only in a secure context: HTTPS, localhost or 127.0.0.1.
- Local workflow: Chromium-based browsers only, via the File System Access API.
- Git LFS: not supported on GitHub, supported on Gitea and Forgejo.
- GitHub on 13 September 2026: 2,832 stars, 51 open issues, 2 open pull requests.
What developers say on Reddit
Almost all of the discussion sits in r/astrojs, where Sveltia has become a routine answer to the question of how a client edits a static site. The praise is practical: easy setup, a clean interface for non-technical editors, good behaviour on a phone, and i18n that works. One developer describes leaving Pages CMS for it precisely because of multilingual support.
A common description is "a fork of Decap", which the project explicitly denies: it is a rewrite that imitates Decap's behaviour for compatibility. The distinction matters less for migration than for bugs, since Decap's fixes and Sveltia's are unrelated code.
The hesitations are consistent too. People notice that it is one person's project and that it still says beta, and at least one is waiting for a stable release on that basis. Others rule it out for relational or database-backed content. One 2025 comment called missing custom previews and widgets a dealbreaker; today's JavaScript API documents both, which shows how quickly the gaps are moving.
“Clients can add to or edit exiting items in collections, but I never give clients the ability to edit designed pages, not even on Wordpress with a page builder. [...] For my static Astro builds, they get to edit the collections via Sveltia.”
r/cms on Reddit“Sveltia CMS for me. I tried a couple of others but found that Sveltia had the best iPhone support.”
r/astrojs on Reddit“I was using pagescms and now I'm switching to sveltia cms that suport i18n. Both are git based cms.”
r/astrojs on Reddit“I was looking at Sveltia last night. The only downside I saw is that they admit the whole thing is the personal project of 1 person.”
r/sveltejs on Reddit“Directus is very mature and can do just about anything. I'm curious about Sveltia, but it says "Sveltia CMS is currently in beta". So maybe next year”
r/astrojs on Reddit“Git-based is interesting but won't work well for my use case since I need a proper database-backed CMS with relational content. Sveltia looks clean though, I'll consider it for future sites with simpler editorial focus.”
r/astrojs on Reddit
Verdict
For a Decap or Netlify CMS site whose repository is on GitHub, GitLab or Gitea, Sveltia is the migration to test first. The config carries over, the OAuth app carries over, and the gains in i18n, speed and mobile editing are documented rather than promised. Try it on a branch against your real config, because the list of unsupported features is short but specific.
Sites on Bitbucket, Azure DevOps or Git Gateway face a different choice: move the repository, or stay on Decap, whose repository released 3.16.1 on 8 September 2026. Sveltia's documentation describes Decap as neglected. That is a successor's view of its predecessor, and our Decap review weighs the maintenance question on its own evidence.
The risk to accept is organisational rather than technical. One maintainer, no LTS and an unpinned script tag following a pre-1.0 release train mean the editor your client uses can change on an ordinary weekday. For a personal or client site with a developer watching, that is a fair price for a fast, free editor. For a team that needs roles, a contract or a 1.0, wait.
Sveltia CMS FAQ
Is Sveltia CMS a drop-in replacement for Decap CMS?
For most sites, yes: replace the Decap script tag with Sveltia's and keep config.yml, the OAuth app and signed-in sessions. It is not drop-in if you use Bitbucket, Azure DevOps, Git Gateway, the Netlify Identity widget, Remark plugins or decap-server. The migration guide lists every exception, so check it against your config first.How does Sveltia CMS authentication work?
Editors can paste a personal access token on any backend. On GitLab, Gitea and Forgejo, client-side PKCE needs only an OAuth app's client ID. GitHub has not shipped client-side PKCE, so OAuth there needs a server-side client: the project's Cloudflare Worker authenticator, a third-party Decap OAuth client, or Netlify if you already host there.Is there an official Sveltia CMS demo?
Not yet. On 13 September 2026 the documentation says a live demo site is coming soon, and it appears on the 1.0 roadmap. The nearest substitutes are the Test backend, which runs the full interface against a virtual file system in your browser, and the project's showcase of live sites.Is Sveltia CMS stable enough for production?
It runs production sites, but formally it is a beta at v0.211.2, with 1.0 targeted for late 2026. There is no LTS, and breaking changes may land in minor releases before 1.0. It suits sites where a developer reads the release notes, and is a poor match for installs nobody will watch.Is Sveltia CMS a Svelte CMS, and do I need Svelte to use it?
Only in the sense that it is written in Svelte. It ships as a precompiled JavaScript bundle with no Svelte dependency, so it works with Astro, Hugo, Eleventy, Next.js or plain HTML. The one framework tie runs the other way: JavaScript API customisations such as custom previews and field types are React components, inherited from Decap for compatibility.Which Git providers does Sveltia CMS support?
GitHub including Enterprise, GitLab including self-managed instances, and Gitea 1.24 or Forgejo 12.0 and later, which covers Codeberg. Bitbucket and Azure DevOps are not supported, for performance reasons the project attributes to their APIs. Editorial workflow is available on the GitHub and GitLab backends only.Who maintains Sveltia CMS, and how is it funded?
Kohei Yoshino, a UX engineer in Toronto, maintains it essentially alone and is not yet accepting community pull requests. Development is funded personally and through optional GitHub Sponsors. The roadmap rules out charging for the CMS itself, while leaving room for an affordable hosted version later.Sveltia CMS or Decap CMS for a new site?
Sveltia if the repository is on GitHub, GitLab or Gitea, you want strong i18n, and a one-person beta is acceptable. Decap if you need Bitbucket or Azure DevOps, or would rather build on a 3.x release line than a pre-1.0 one. Both are MIT and both keep content as files in your repository, so switching later is cheap.
This is an independent review. We have no affiliate relationship with Sveltia CMS, earn nothing if you sign up, and no vendor pays for placement in the directory. Prices were read from the vendor's own pages in September 2026 and change without notice.