Skip to content

HelloWorldImJoe/oxapi

Repository files navigation

OxApi

OxApi

OxApi 是一个面向接口团队的本地化 API 文档与调试工作台,用于在同一套界面中完成接口说明编写、请求调试、项目组织与内容沉淀。应用以浏览器本地存储为核心,不依赖后端数据库即可运行,适合个人开发、内部联调、原型验证以及轻量级 API 资产管理场景。

核心能力

  • Markdown 文档编写与预览,便于沉淀接口说明、请求示例与协作备注。
  • 内置 API Debugger,可直接在文档工作流中发起请求、验证响应与调整参数。
  • 项目级数据管理,支持在多个 API 项目之间切换与维护文档上下文。
  • 本地优先存储,项目、文档、环境配置与偏好设置保存在浏览器 IndexedDB 中。
  • 同源代理转发机制,减少浏览器直连第三方接口时常见的 CORS 干扰。

技术栈

  • Next.js 15
  • React 19
  • TypeScript
  • Tailwind CSS
  • IndexedDB

快速开始

环境要求

  • Node.js 20 或更高版本
  • npm 10 或更高版本

本地启动

npm install
npm run dev

启动完成后,在浏览器中打开 http://localhost:3000 即可使用 OxApi。

如需接入相关 AI 能力,请参考项目中的环境变量示例文件补充本地配置。

使用说明

文档管理

OxApi 支持按项目组织文档内容。你可以为不同服务、模块或版本建立独立项目,并在每个项目下维护对应的 API 文档、调试记录与说明内容。

接口调试

调试请求默认通过应用内代理发送,以避免直接从浏览器访问外部接口时触发的跨域限制。对于需要频繁联调的接口,这种方式可以降低环境干扰并提升验证效率。

内置代理支持按用户 UUID 做每日调用次数限制。UUID 会由应用静默下发并保存在浏览器本地,但调用次数只保存在服务端。默认可通过以下环境变量调整:

  • OXAPI_PROXY_FREE_DAILY_LIMIT: Free 用户的每日请求上限,默认 50
  • OXAPI_PROXY_PLUS_DAILY_LIMIT: Plus 用户的每日请求上限,默认 500
  • OXAPI_PROXY_PLUS_UUIDS: 逗号分隔的 UUID 列表,命中的用户按 Plus 配额计费
  • OXAPI_PROXY_QUOTA_STORAGE_PATH: 服务端配额存储文件路径,默认是项目目录下的 .data/proxy-quota-store.json

如果你已经有自己的代理服务,也可以在账户中心的代理设置里填写自定义 Proxy 地址。启用后,调试请求会直接发往该地址,不再经过内置代理,也不会触发内置调用次数限制。自定义 Proxy 需要兼容内置 /api/proxy 的请求和响应 JSON 结构。

本地数据存储

OxApi 当前以本地模式运行。项目、文档、请求配置和部分偏好信息会保存到当前浏览器配置文件的 IndexedDB 中。清理浏览器站点数据或更换浏览器环境后,本地数据不会自动同步。

适用场景

  • 编写可执行的 API 文档
  • 在研发或测试阶段快速验证接口可用性
  • 为内部工具或中台项目整理文档资产
  • 在无需部署后端服务的前提下搭建轻量接口工作台

开发说明

npm run lint
npm run build

推荐在提交前至少执行一次静态检查,确保页面、组件与代理逻辑保持可构建状态。

About

公牛API文档

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages