FreeKitModules
基于 .NET 10、FreeSql、Autofac 和 IGeekFan.FreeKit.Modularity 的模块化单体应用框架。
项目亮点
| 特性 | 说明 |
|---|---|
| 模块化单体 | 按业务拆分模块,独立开发、独立部署 |
| DDD 架构 | 完整的领域驱动设计分层 |
| 零配置启动 | 开发环境内存数据库,一键启动 |
| 热插拔模块 | 通过配置启停模块,无需修改代码 |
| 多数据库支持 | MySQL / PostgreSQL / SQLite / SqlServer |
| 完整认证体系 | OAuth2/OIDC + RBAC + 多租户 |
适用场景
- 企业级后台管理系统
- 内容管理系统(CMS)
- SaaS 多租户平台
- 微服务架构的单体实现
- 快速原型开发
项目结构
FreeKitModules/
├── src/
│ ├── BuildingBlocks/ # 基础设施构建块
│ ├── FreeKit/ # FreeKit 框架库(子模块)
│ ├── Services/ # 业务模块
│ │ ├── Identity/ # 身份认证
│ │ ├── CmsKit/ # 内容管理
│ │ ├── Platform/ # 平台服务
│ │ ├── Auth/ # OAuth2 授权
│ │ └── Host/ # 宿主项目
│ └── Test/ # 测试
├── docs-site/ # 文档站点
└── build/ # 部署脚本
核心模块
| 模块 | 说明 | 核心能力 |
|---|---|---|
| Identity | 身份认证 | 用户管理、角色权限、租户、组织架构 |
| CmsKit | 内容管理 | 文章、沸点、评论、投票、圈子、搜索 |
| Platform | 平台服务 | 导航、通知、节假日、短链接、本地化 |
| Auth | OAuth2 授权 | 独立授权服务器、单点登录 |
技术栈
| 技术 | 用途 |
|---|---|
| .NET 10 | 运行时 |
| FreeSql | ORM |
| Autofac | 依赖注入 |
| OpenIddict | OAuth2/OIDC |
| Serilog | 日志 |
| SignalR | 实时通信 |
| FreeScheduler | 定时任务 |
| MeiliSearch | 全文搜索 |
快速体验
# 克隆仓库
git clone --recurse-submodules https://github.com/luoyunchong/freekit-pro-modules.git
# 还原依赖
dotnet restore FreeKitModules.sln
# 运行主宿主
dotnet run --project src/Services/Host/FreeKit.Host
启动后访问:
- Swagger UI:
https://localhost:7002/kit_api/swagger - 健康检查:
https://localhost:7002/kit_api/healthchecks
文档导航
| 文档 | 说明 |
|---|---|
| 快速开始 | 环境准备和启动指南 |
| 技术栈 | 详细技术选型 |
| 配置参考 | 配置文件说明 |
| 架构设计 | 系统架构 |
| DDD 指南 | 领域驱动设计 |
| FreeKit 基础库 | 框架库文档 |
| 常见问题 | FAQ |