×

一个基于 EggJS 3.x + Vue 3 + TypeScript 的现代化内容管理系统,MIT License 开源免费!

独孤求败 独孤求败 发表于2026-06-26 09:07:09 浏览33 评论0

抢沙发发表评论

前言概述

DoraCMS 是我踩过无数坑后发现的一个宝藏项目——它采用 EggJS(阿里开源的企业级 Node 框架)3.x 作为后端,Vue 3 组合式 API 写前端,TypeScript 全程类型安全,MIT License 开源免费。项目代码结构清晰,适合二次开发,尤其适合中小团队快速搭建内容管理平台。我一开始也以为这种全栈项目配置会很复杂,结果发现它的脚手架已经帮你搞定了一切。

项目介绍

DoraCMS 是一个完整的前后端分离内容管理系统,后端提供 RESTful API,前端通过 Vue 3 渲染界面。它不是简单的博客系统,而是支持多类型内容(文章、图片、视频)管理、用户权限分级、插件扩展的完整平台。项目代码完全开源,你可以直接克隆仓库运行,也能基于它进行深度定制。踩过的坑是:早期版本对 TypeScript 支持不够完善,但 3.x 版本已经全面重构,类型定义非常友好。

图片

应用场景

  • 企业官网/博客:快速搭建带后台的内容站点,支持 SEO 优化
  • 知识库系统:多级分类+标签管理,适合文档整理
  • 轻量级电商平台:通过插件扩展商品管理功能(需自行开发)
  • 教育机构内容管理:课程资料、视频资源的权限控制发布

功能模块

后端核心模块

  • 用户管理:RBAC 权限模型(角色/权限/用户三级控制)
  • 内容管理:文章、分类、标签的增删改查
  • 文件管理:本地/OSS 存储配置,支持图片裁剪
  • 系统设置:网站基本信息、SEO 配置、邮件模板
  • 插件系统:通过中间件扩展功能(如评论、点赞)

前端核心模块

  • 仪表盘:数据统计概览
  • 内容编辑器:Markdown + 富文本双模式(基于 WangEditor)
  • 权限中心:可视化角色权限分配
  • 响应式布局:PC/移动端自适应

项目功能特点

  • TypeScript 强制类型:前后端代码都有完整类型定义,减少低级错误
  • JWT 鉴权:前后端分离的标准鉴权方案
  • 自动化部署:支持 Docker 容器化部署
  • 多环境配置:开发/测试/生产环境分离
  • 国际化支持:前后端均可配置多语言

项目技术栈

后端

  • EggJS 3.x:阿里开源的企业级 Node 框架,内置插件机制
  • Sequelize:ORM 库,支持 MySQL/PostgreSQL/SQLite
  • Redis:缓存和会话存储
  • Swagger:API 文档自动生成

前端

  • Vue 3:组合式 API,性能更好
  • Pinia:状态管理库(替代 Vuex)
  • Vite:构建工具,启动速度极快
  • Element Plus:UI 组件库

开发工具

  • ESLint + Prettier:代码规范强制检查
  • Husky:Git 钩子防止不规范提交
  • TypeScript:全程类型安全

功能演示

图片
图片
图片
图片
图片
图片

开源地址

https://github.com/doramart/DoraCMS


群贤毕至

访客