基于编译期转换的 TypeScript 库,把纯类型定义编译为运行时校验、JSON 序列化等函数。
samchon/nestia
面向 NestJS 的 TypeScript 辅助库,可从控制器生成类型化 SDK、Swagger 文档、E2E 测试及 LLM 函数调用代理。
- Star
- 2,180
- Fork
- 128
- 未关闭 Issue
- 7
- 最近提交
- 19小时前
这是什么?
Nestia 是一组面向 NestJS 的辅助库,核心思路是直接使用纯 TypeScript 类型完成参数校验与序列化。@TypedBody、@TypedRoute、@TypedQuery 等装饰器基于声明的类型工作,开发者无需为每个 DTO 额外编写 class-validator 装饰器或 schema。
基于同一套控制器,SDK 生成器可输出类型化的 fetch 客户端库,同时支持 Swagger 文档生成、在客户端内运行后端的 Mockup 模拟器,以及自动生成的 E2E 测试函数。此外还提供带在线 TypeScript 编辑器的 Swagger UI,以及封装这些命令的 CLI 工具。
项目还包含用于 LLM 函数调用的 Agentica 智能体库,以及可生成 NestJS 应用的 AutoBE 代理,二者位于同一生态的独立仓库中。
核心功能
- 01基于纯 TypeScript 类型的请求校验与序列化装饰器
- 02生成带 DTO 结构的类型化 fetch SDK 客户端
- 03Mockup 模拟器可在客户端内嵌入后端逻辑
- 04根据控制器自动生成 E2E 测试函数
- 05支持生成 Swagger 文档并提供带在线 TypeScript 编辑器的 Swagger UI
- 06提供高级 WebSocket 路由装饰器
适用场景
- 让 TypeScript 前端的 API 客户端与 NestJS 控制器保持同步
- 无需重复定义 DTO 即可生成 Swagger 文档
- 在后端服务就绪前,借助模拟器进行前端开发
- 为基于 NestJS 的 API 添加函数调用式 AI 聊天功能
使用前须知
- 仅适用于基于 NestJS 的 TypeScript 项目。
标签
常见问题
- nestia 是什么?
- 面向 NestJS 的 TypeScript 辅助库,可从控制器生成类型化 SDK、Swagger 文档、E2E 测试及 LLM 函数调用代理。 Nestia 是一组面向 NestJS 的辅助库,核心思路是直接使用纯 TypeScript 类型完成参数校验与序列化。@TypedBody、@TypedRoute、@TypedQuery 等装饰器基于声明的类型工作,开发者无需为每个 DTO 额外编写 class-validator 装饰器或 schema。
- nestia 可以免费使用吗?用的什么许可证?
- nestia 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
- nestia 还在维护吗?
- 活跃维护中。nestia 最近一次提交是在 2026年11月7日。
- nestia 适合用来做什么?
- 让 TypeScript 前端的 API 客户端与 NestJS 控制器保持同步 无需重复定义 DTO 即可生成 Swagger 文档 在后端服务就绪前,借助模拟器进行前端开发 为基于 NestJS 的 API 添加函数调用式 AI 聊天功能
- 在哪里获取 nestia?
- 源代码和安装说明在 GitHub 上:https://github.com/samchon/nestia
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
5963+3 本周233TypeScriptMIT维护活跃更新于 昨天
根据 OpenAPI/Swagger 定义生成 API 客户端 SDK、服务端桩代码和文档的命令行工具。
1.8万+2 本周5937MustacheApache-2.0更新于 3天前
开源的 OpenAPI/Swagger 工具集,提供交互式 API 文档、离线优先的 API 客户端和多种 Web 框架集成。
1.6万+29 本周967TypeScriptMIT更新于 8小时前
用 Rust 编写的编程智能体运行时与终端 CLI(rpi),可嵌入使用,支持多模型提供商、工具、可恢复会话和插件 ABI。
220+20 本周41RustMIT维护活跃更新于 8小时前
根据 OpenAPI 规范自动生成多种语言的 API 客户端 SDK、服务端桩代码和文档。
2.7万+4 本周7756JavaApache-2.0更新于 昨天