FreeKit
FreeKit 这一组文档描述的是对外可复用的 NuGet 包,以及这些包在业务项目中的选型方式。
与之对应,FreeKitModules 内部 Host 和模块使用的基座能力已经拆到 BuildingBlocks 文档组,不再与 NuGet 包说明混在一起。
建议阅读路径
- 先看 包能力矩阵,确认应该安装哪些 NuGet 包。
- 再读 Core 和 Extras,建立基础约定。
- 需要模块化时继续看 Modularity。
- 根据专项能力需求,再进入 Identity、Localization、Email、DataProtection、SignalR、HealthChecks 文档。
- 如果你在维护 FreeKitModules 的 Host,而不是普通业务项目,再去看 BuildingBlocks。
对外 NuGet 包
- IGeekFan.FreeKit:审计实体、软删除、多租户、依赖注入标记。
- IGeekFan.FreeKit.Extras:事务、仓储扩展、当前用户上下文、服务自动注册。
- IGeekFan.FreeKit.Modularity:单体模块化、模块启动、路由前缀与中间件接入。
- IGeekFan.AspNetCore.Identity.FreeSql:Identity + FreeSql 存储实现。
- IGeekFan.Localization.FreeSql:数据库本地化资源。
- IGeekFan.FreeKit.Email:MailKit 邮件发送能力。
- IGeekFan.AspNetCore.DataProtection.FreeRedis:DataProtection 存 Redis。
- IGeekFan.AspNetCore.DataProtection.FreeSql:DataProtection 存 FreeSql。
- IGeekFan.AspNetCore.SignalR.FreeRedis:SignalR + Redis Backplane。
- IGeekFan.Extensions.Diagnostics.HealthChecks.FreeSql:FreeSql 健康检查。
- IGeekFan.R2.NET:Cloudflare R2 对象存储客户端。
- IGeekFan.OpenIddict.FreeSql:OpenIddict 的 FreeSql 存储实现。
适用方式
- 做新项目脚手架时,用矩阵页先完成依赖选型。
- 做老项目重构时,先只接入 Core + Extras,再按边界逐步追加模块化和专项基础设施包。
- 做普通业务项目时,只关注这里的 NuGet 包。
- 做 FreeKitModules 二次开发时,再去看 BuildingBlocks 中的内部基座说明。