跳到主要内容

FreeKitModules

FreeKitModules 是基于 .NET 10、FreeSql、Autofac 和 IGeekFan.FreeKit.Modularity 构建的模块化单体应用。仓库既包含 CmsKit、Identity、Member、Platform 等业务模块,也包含 FreeKit 框架包、共享构建块、多个运行宿主以及独立的 Auth、BasicIdentity、CodeGen 项目。

先建立三个认识

  1. 模块化不等于微服务:主业务模块默认由 FreeKit.Host 组合在同一进程中,共享部署和基础设施;Auth、BasicIdentity、CodeGen 才是独立项目边界。
  2. 核心业务与 HTTP 接入分离:CmsKit、Identity、Member、Platform 均有核心项目和 *.HttpApi 项目,后台宿主不加载 Controller。
  3. 源码是配置与契约的最终依据:端口、PathBase、模块注册和生产配置分散在各宿主的 Program.cslaunchSettings.jsonappsettings*.jsonbuild/ 中,文档会标明对应入口。

能力地图

能力当前实现
内容社区CmsKit:文章、短内容、评论、互动、推荐、搜索、审核与通知
身份与权限Identity:账户、用户、角色、权限、租户、组织、设备、2FA、AccessKey
会员运营Member:等级、积分、分组、标签与地址
平台工具Platform:待办、短链接、节假日、消息渠道、热榜、导航、TTS 等子域
授权中心auth/ 中的 OpenIddict OAuth2/OIDC 授权服务
框架能力FreeKit 审计实体、FreeSql 仓储、模块化启动、身份存储、缓存与对象存储扩展
运行与运维API / Job / Message / HealthChecks 宿主、Docker Compose、OpenTelemetry、OpenObserve、Pyroscope

系统一览

更完整的边界与启动流程见系统架构总览

最短上手路径

git clone --recurse-submodules https://github.com/luoyunchong/freekit-pro-modules.git
cd freekit-pro-modules
dotnet restore FreeKitModules.slnx
dotnet build FreeKitModules.slnx -c Release
dotnet run --project src/Services/Host/FreeKit.Host --launch-profile https-dev

开发配置默认启用 /kit_api PathBase。主宿主启动后访问:

  • Swagger UI:https://localhost:7000/kit_api/swagger
  • RapiDoc:https://localhost:7000/kit_api/r
  • 健康检查:https://localhost:7000/kit_api/health

数据库与外部依赖仍需按本机环境配置,完整步骤见快速开始

按任务找文档

你要做什么从这里开始
首次运行项目快速开始
找到某个项目或入口仓库与解决方案地图
理解宿主和模块组合宿主总览系统架构总览
新增业务能力分层与数据访问创建业务模块
修改身份、内容或平台功能业务模块
选择或维护 FreeKit 包FreeKit 功能总览
部署与排障FreeKit 部署 → 可观测性指南

文档维护原则

docs-site/ 是本仓库唯一的项目文档入口。页面应引用真实源码路径、类型和配置键;计划或历史决策会放在“设计与演进”分类,不与当前用法混在一起。