Directus 换掉 GPL 之后,Node.js CMS 到底怎么选?(三)

有一种需求是这么来的:内容得让不写代码的人也能改,可改了什么、谁改的、能不能退回去,你又全都想留着。

有数据库那一类做得到,代价是得养一台服务器和一个后台。Git 驱动这一类走的是另一条路------把 Git 仓库当数据库用。

内容就是仓库里的 Markdown 文件,编辑器是一个挂在你的静态站点上的纯前端应用。改完点保存,它替你发一次提交,站点重新构建一遍就上线。没有数据库,也没有"内容后台服务器"这个东西。

于是每一次改动都是一次提交,版本、回滚、评审顺带全有了,服务器只需要托管一堆静态文件。代价落在改内容的人身上:提交、分支、合并这套动作他得接受------文档站、博客、营销页、作品集这种一两个人维护的站没什么负担,几十人的内容团队、要走多级审批的,会卡在这一步。

下面系统后面括号里是两样东西:协议,和最近一次正式版的时间。

默认就那一个

Decap CMS(MIT,最新正式版 3.16.3/2026-09)就是当年的 Netlify CMS。2023 年 2 月改名,从 Netlify 手里交给社区独立维护,现在归 decaporg。它是个单页应用,挂到你的静态站点上,编辑内容时直接往 Git 仓库提交,Hugo、Jekyll、Astro、Eleventy 这些生成器都能配。

官方在页面上把话说死了:它是免费的开源软件,你可以自己托管,永远免费。

它上头现在还多出一层:官方新做的 Decap Turbo 是付费托管服务(目前公测,免费档 1 个站点 1 个席位,Pro 档 19 欧元/月起,价格以官网为准),卖的是托管鉴权、多人角色、媒体库这套基础设施。官方的说法是 Turbo 跑在 Decap 旁边,既不替代它也不分叉它;不买 Turbo,Decap 本体照旧免费自托管。

嫌它旧,有人整个重写了一遍

Sveltia CMS(MIT,最新正式版 0.233.0/2026-10)2023 年建仓,作者是一位 UX 工程师,最早是拿给自己接的客户用的:用 Svelte 把 Netlify CMS 重写了一遍,官方对它的定位就是 Netlify / Decap CMS 的继任者。

它的价值就在于"替换":配置文件格式、API 和工作流都与 Decap / Netlify CMS 保持兼容,官方给的迁移路径只需很少改动,同时把界面、国际化、移动端体验整个重做了一遍。

更新确实勤------2026 年 10 月 7 日到 8 日两天里连着发了三个版本。有两点要心里有数:它现在还处在 beta,官方计划 2026 年底发 1.0;而且是一位开发者在维护,节奏可能比商业团队慢。

想在页面上直接改,那是另一条路

TinaCMS (Apache-2.0,最新正式版 3.14.3/2026-10)走的是 Markdown + GitHub 路线,主打可视化实时编辑:在页面上直接改,改完即时预览,内容和代码一样存在你自己的 Git 仓库里,不绑死任何云服务。

有一处变化:自托管后端最初用的是"源码可用"许可(不是标准开源协议),2023 年 11 月官方宣布完全开源,改成 Apache-2.0。不想用官方 TinaCloud 的话,自己跑后端这条路也走得通------数据库、认证、Git 三个模块都能自己配,官方也列了自托管下用不了的那部分功能。前端项目里接入体验最顺的一个,Next.js 生态里用得多。

你本来就在 Nuxt 上,就别挑了

Nuxt Content (MIT,最新正式版 3.16.1/2026-09)是 Nuxt 官方出的文件驱动 CMS,内容就是项目里 content/ 目录下的 Markdown,还能直接在 Markdown 里用 Vue 组件,适合文档站和内容型站点。它是 Nuxt 生态的一部分,接起来没什么配置成本。

配套的编辑工具 Nuxt Studio 在 2026 年 1 月 5 日发了第一个稳定版,从官方托管的一项在线服务,变成了免费、开源(MIT)、可自托管的 Nuxt 模块,旧平台退役后改成新的文档站。这跟正篇(一)里 Directus 的方向正好相反------那边是开源转成商业许可,这边是托管服务转回开源。

所以这一类的分岔点不在四个系统之间,在你愿不愿意让"改内容"变成一次提交。

愿意的话,装 Decap 就够------另外三个是它不好用时的出口。不愿意就别在这一类里挑了:正篇(一)、(二)那批有数据库、有后台的系统,改内容的人压根不用碰 Git。

为什么这一档只有四个

在 GitHub 或各种 "CMS 榜单" 上,你会看到不少系统被标成 JavaScript 或 TypeScript------那是仓库的语言构成,不是分类。

用 JS/TS 写的 CMS,多半要一个 Node.js 后端,就是正篇(一)讲过的那几个(Strapi 是 JavaScript 写的,Payload、Directus 是 TypeScript 写的)------语言标签只是把同一批东西又标了一遍,不用单独记一份清单。

真正"没有 Node 后端"的只有两类:一类是这篇讲的直连 Git 方案(Decap、Tina、Sveltia 都是纯前端应用,内容存在你的 Git 仓库里);另一类连"内容管理"都没有,只是把 Markdown 变成静态页面的生成工具------它不建后台、也不替你存内容,是发布工具不是 CMS。

本篇数据来源(版本与日期截至 2026-10-09):

相关推荐
DevUp2 小时前
Directus 换掉 GPL 之后,Node.js CMS 到底怎么选?(三)
开源·node.js·cms
明月_清风14 小时前
Deno 终局来了:从挑战 Node 到被 Cloudflare 收编
前端·后端·node.js
guslegend18 小时前
脚手架原理与本地调试:从 bin 软链接到 npm link
前端·npm·node.js·脚手架·前端工程化
zReadonly20 小时前
不用反复 nvm use 了:nvm-windows 2.x 按项目自动切换 Node.js
前端·node.js
百度一下吧1 天前
Fastify 实战教程:从零搭建电商平台后台服务系统
node.js
YIAN1 天前
LangGraph 完全入门指南:从线性工作流到带中断恢复的有状态 Agent 编排
langchain·node.js·agent
DevUp1 天前
Directus 换掉 GPL 之后,Node.js CMS 到底怎么选?(二)
开源·node.js·cms
濮水大叔1 天前
AI 编码实战:一句提示词,实现 CRUD、SSR 与多任务
node.js·ai编程·全栈