开源 API 网关,同时支持 REST 与 SOAP,可将 SOAP 服务转为 JSON API 并提供 OAuth2、JWT 等安全能力。
instant-dev/api
一个基于 JSDoc 注释实现类型安全校验、自动生成 OpenAPI 规范并支持 LLM 流式输出的 JavaScript API 框架。
- Star
- 254
- Fork
- 9
- 未关闭 Issue
- 2
- 最近提交
- 2个月前
这是什么?
Instant API 是一个 JavaScript Web API 框架,在 HTTP 接口层面实现类型安全。开发者只需为导出的端点函数编写 JSDoc 风格的注释,参数校验、清洗和返回值检查都由这些类型声明推导而来,无需额外引入独立的 schema 校验库。框架会在服务器的 /.well-known/ 路径下自动生成 JSON 和 YAML 格式的 OpenAPI 规范,并提供可用于 LLM 函数调用的 JSON Schema。
端点通过 functions/ 目录中的文件路径映射到 HTTP 路由,每个导出的 GET、POST、PUT 或 DELETE 函数分别处理对应方法。框架还能从 www/ 目录托管静态文件,支持 JSON、表单和 multipart 等请求体格式,默认开放 CORS,并可通过 @origin 指令限制来源。
在 AI 和聊天机器人场景中,端点可以通过 context.stream() 与 @stream 声明输出 Server-Sent Events 流式结果,也可以立即返回 200 响应并在后台继续执行,适合处理 Slack、Discord 等 webhook。项目以 @instant.dev/api 发布在 npm 上,并配合 instant.dev 命令行工具完成项目初始化、端点生成和部署。
核心功能
- 01根据 JSDoc 注释自动生成 JSON 和 YAML 格式的 OpenAPI 规范。
- 02按声明的类型、长度和取值范围校验请求参数与返回值。
- 03生成可用于 LLM 函数调用的 JSON Schema。
- 04通过 @stream 与 context.stream() 以 text/event-stream 形式输出流式结果。
- 05支持后台执行,可立即返回响应,适合 webhook 场景。
- 06在 www/ 目录中托管静态文件,与 API 路由并存。
适用场景
- 用函数注释代替独立 schema 库,完成 JSON API 的参数校验。
- 搭建调用 LLM 并将 token 流式返回浏览器的接口。
- 编写需要快速响应并在之后处理任务的 Slack 或 Discord webhook 处理器。
- 为现有端点生成 OpenAPI 规范与函数调用所需的 schema。
快速上手
- 1
全局安装 instant.dev 命令行工具
npm i instant.dev -g - 2
创建新项目文件夹并进入
cd ~/projects && mkdir my-new-project && cd my-new-project - 3
初始化项目
instant init - 4
启动服务器
instant serve
使用前须知
- 最快的安装方式需要 Node.js 和 instant.dev 命令行工具。
- README 称其为早期版本,可能会有变动。
收录于专题
标签
常见问题
- api 是什么?
- 一个基于 JSDoc 注释实现类型安全校验、自动生成 OpenAPI 规范并支持 LLM 流式输出的 JavaScript API 框架。 Instant API 是一个 JavaScript Web API 框架,在 HTTP 接口层面实现类型安全。开发者只需为导出的端点函数编写 JSDoc 风格的注释,参数校验、清洗和返回值检查都由这些类型声明推导而来,无需额外引入独立的 schema 校验库。框架会在服务器的 /.well-known/ 路径下自动生成 JSON 和 YAML 格式的 OpenAPI 规范,并提供可用于 LLM 函数调用的 JSON Schema。
- api 可以免费使用吗?用的什么许可证?
- api 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
- api 还在维护吗?
- 半年内有更新。api 最近一次提交是在 2026年9月14日。
- api 适合用来做什么?
- 用函数注释代替独立 schema 库,完成 JSON API 的参数校验。 搭建调用 LLM 并将 token 流式返回浏览器的接口。 编写需要快速响应并在之后处理任务的 Slack 或 Discord webhook 处理器。 为现有端点生成 OpenAPI 规范与函数调用所需的 schema。
- api 怎么安装和运行?
- 全局安装 instant.dev 命令行工具: npm i instant.dev -g 创建新项目文件夹并进入: cd ~/projects && mkdir my-new-project && cd my-new-project 初始化项目: instant init 启动服务器: instant serve
- 在哪里获取 api?
- 源代码和安装说明在 GitHub 上:https://github.com/instant-dev/api
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
基于 Java 的 HTTP 代理,为多种聊天补全与向量嵌入模型、助手及应用提供统一 API。
一个用于向浏览器和 HTTP 客户端实时推送数据更新的协议及 Go 参考服务端。
开源 Webhook 网关,用于接收、存储、投递和调试 Webhook 事件,支持重试、限流和熔断。
一个 CLI 脚手架工具,可按需选择前端、后端、数据库、ORM、认证等组件,快速生成端到端类型安全的 TypeScript 项目。