SSCMS is a .NET Core content management system for building a full-featured, high-performance, large-scale and maintainable website platform at the lowest cost, with the least manpower, in the shortest time, aimed at individuals and small teams who want to self-host rather than rent.
What it is
SSCMS is an open-source CMS built on .NET Core and distributed under the GNU Affero General Public License v3.0, with copyright held by SSCMS from 2003 to 2025. It descends from SiteServer CMS, as shown by the registry topics siteserver, siteserver-cms, ss-cms and sscms, and it is a member of the dotNET China organization. The repository is organised around the Visual Studio solution sscms.sln, with src/Datory for database base classes, src/SSCMS for interfaces and base classes, src/SSCMS.Cli for the command-line tool, src/SSCMS.Core for CMS core code, src/SSCMS.Web for the CMS app, and tests for tests. Formal releases live on the master branch, and the project documents a two-month release cadence that iterates on core functions, documentation, plugins and website templates. The homepage points to xianchou.com, described as Xianchou AI, a new AI video open-source community from SSCMS.
The concrete problem it solves is the cost and staffing burden of assembling a complete publishing platform. Rather than making a team build or integrate its own templates, API layer, plugin system and deployment pipeline, SSCMS supplies those pieces in one codebase: an STL template language, a documented REST API, a plugin development model with official plugins, a published data structure, and a CLI. The same source tree publishes to Windows x64, Windows x32, Linux x64 and Linux arm64, and an official Docker image is provided, so the platform can be deployed natively or in a container.
Key capabilities
- CMS core, web app and CLI are separated into
src/SSCMS.Core, src/SSCMS.Web and src/SSCMS.Cli, with database base classes in src/Datory and shared interfaces in src/SSCMS.
- The
SSCMS.Cli command-line tool is documented in the project's CLI reference, and the web application is documented alongside it.
- A documented REST API is available, together with a published data structure reference for integrating other systems.
- The SSCMS STL language provides the template layer for building and maintaining site pages.
- A plugin system is documented, and official plugins are listed separately for extension without forking the core.
- Cross-platform publishing targets win-x64, win-x32, linux-x64 and linux-arm64 through npm build scripts plus
dotnet publish.
- Official Docker image
sscms/core runs with -e SSCMS_DATABASE_TYPE=SQLite, a persisted /app/wwwroot volume and a required SSCMS_SECURITY_KEY.
Who uses it and how
- Small teams or single operators who need a large, maintainable site platform without hiring a large platform staff, which the README's minimum-cost, minimum-manpower framing targets.
- Self-hosters on Windows or Linux, including arm64 hosts, who publish from source or pull
sscms/core:latest.
- Docker users who want a restart-persistent container named
my-sscms, port 80 exposed, and a named volume for /app/wwwroot.
- Developers who contribute through Visual Studio 2022 and report bugs or suggestions on GitHub Issues or Gitee Issues.
- Plugin and template authors who work against the STL, plugin, REST API and data structure documentation rather than modifying core code.
Getting started
The fastest route from the README is Docker: pull sscms/core:latest and run it with -p 80:80, a /app/wwwroot volume, SSCMS_SECURITY_KEY, and SSCMS_DATABASE_TYPE=SQLite. Source builds use npm install, one of the build-win-x64, build-win-x32, build-linux-x64 or build-linux-arm64 scripts, and dotnet publish for the CLI and web projects; the NuGet badge points to the SSCMS package.
How it compares
The supplied facts name no paid products that SSCMS replaces, and no competing CMS projects appear among the topics, so in this registry it stands alone rather than sitting in a listed field of alternatives. The only related names are its own lineage and community labels: siteserver, siteserver-cms, ss-cms, sscms, and the dotNET China organization.
When to use it — and when not to
A self-hoster must run the .NET runtime or the Docker image, provide a database such as the SQLite option configured through SSCMS_DATABASE_TYPE, set SSCMS_SECURITY_KEY, and persist /app/wwwroot. Teams that cannot accept the AGPL-3.0 obligations, or that want a fully managed service rather than operating a stack, should not choose it; the registry also lists JavaScript as the language while the README and topics describe a C#/.NET Core project, so that metadata should be verified. The open-issue count of 3197 against 3909 stars and 1239 forks is a further sign that issue triage may lag, even though pushes continue into 2026 and releases are planned every two months.
project readme (upstream, from github) — read inline
SSCMS
SSCMS 基于 .NET Core,能够以最低的成本、最少的人力投入在最短的时间内架设一个功能齐全、性能优异、规模庞大并易于维护的网站平台。
版本
项目发布的正式版本存放在 master 分支
开发文档
《SSCMS 使用指南》
《SSCMS 系统更新》
《SSCMS STL 语言》
《SSCMS 插件开发》
《SSCMS 官方插件》
《SSCMS 命令行》
《SSCMS REST API》
《SSCMS 数据结构》
SSCMS 源码结构
│ sscms.sln Visual Studio 项目文件
│
├─docker Docker 配置文件
├─src/Datory 数据库基础类
├─src/SSCMS 接口、基础类
├─src/SSCMS.Cli 命令行工具
├─src/SSCMS.Core CMS核心代码
├─src/SSCMS.Web CMS App
└─tests 测试
发布跨平台版本
Window(x64):
npm install
npm run build-win-x64
dotnet build ./build-win-x64/build.sln -c Release
dotnet publish ./build-win-x64/src/SSCMS.Cli/SSCMS.Cli.csproj -r win-x64 -c Release -o ./publish/sscms-win-x64
dotnet publish ./build-win-x64/src/SSCMS.Web/SSCMS.Web.csproj -r win-x64 -c Release -o ./publish/sscms-win-x64
npm run copy-win-x64
Note: 进入文件夹 ./publish/sscms-win-x64 获取最终发布版本
Window(x32):
npm install
npm run build-win-x32
dotnet build ./build-win-x32/build.sln -c Release
dotnet publish ./build-win-x32/src/SSCMS.Cli/SSCMS.Cli.csproj -r win-x32 -c Release -o ./publish/sscms-win-x32
dotnet publish ./build-win-x32/src/SSCMS.Web/SSCMS.Web.csproj -r win-x32 -c Release -o ./publish/sscms-win-x32
npm run copy-win-x32
Note: 进入文件夹 ./publish/sscms-win-x32 获取最终发布版本
Linux(x64):
npm install
npm run build-linux-x64
dotnet build ./build-linux-x64/build.sln -c Release
dotnet publish ./build-linux-x64/src/SSCMS.Cli/SSCMS.Cli.csproj -r linux-x64 -c Release -o ./publish/sscms-linux-x64
dotnet publish ./build-linux-x64/src/SSCMS.Web/SSCMS.Web.csproj -r linux-x64 -c Release -o ./publish/sscms-linux-x64
npm run copy-linux-x64
Note: 进入文件夹 ./publish/sscms-linux-x64 获取最终发布版本
Linux(arm64):
npm install
npm run build-linux-arm64
dotnet build ./build-linux-arm64/build.sln -c Release
dotnet publish ./build-linux-arm64/src/SSCMS.Cli/SSCMS.Cli.csproj -r linux-arm64 -c Release -o ./publish/sscms-linux-arm64
dotnet publish ./build-linux-arm64/src/SSCMS.Web/SSCMS.Web.csproj -r linux-arm64 -c Release -o ./publish/sscms-linux-arm64
npm run copy-linux-arm64
Note: 进入文件夹 ./publish/sscms-linux-arm64 获取最终发布版本
在 Docker 中运行
拉取最新版本的 SSCMS 镜像
docker pull sscms/core:latest
运行 SSCMS 容器
docker run -d \
--name my-sscms \
-p 80:80 \
--restart=always \
-v volume-sscms:/app/wwwroot \
-e SSCMS_SECURITY_KEY=e2a3d303-ac9b-41ff-9154-930710af0845 \
-e SSCMS_DATABASE_TYPE=SQLite \
sscms/core
贡献代码
项目编译需要使用 Visual Studio 2022,你可以从这里下载 Visual Studio Community 2022
代码贡献有很多形式,从提交问题,撰写文档,到提交代码,我们欢迎任何形式的贡献!
系统更新
SSCMS 产品将每隔两月发布新的正式版本,我们将在每次迭代中对核心功能、文档支持、功能插件以及网站模板四个方面进行持续改进。
问题与建议
如果发现任何 BUG 以及对产品使用的问题与建议,请提交至 Github Issues 或者 Gitee Issues。
关注最新动态

特别声明
SSCMS 项目已加入 dotNET China 组织。

License
GNU Affero General Public License v3.0
Copyright (C) 2003-2025 SSCMS