Hoppscotch:开源 API 调试工具完整上手指南
【免费下载链接】hoppscotchOpen-Source API Development Ecosystem • https://hoppscotch.io • Offline, On-Prem & Cloud • Web, Desktop & CLI • Open-Source Alternative to Postman, Insomnia项目地址: https://gitcode.com/GitHub_Trending/ho/hoppscotch
Hoppscotch 是一款免费、可自托管的开源 API 调试工具,也是 Postman 和 Insomnia 的完全开源替代。它覆盖 HTTP、GraphQL、WebSocket 等协议,集合、环境、历史数据都可以存在你自己的数据库里,适合独立开发者和需要私有化部署的团队。
它解决什么问题:Postman/Insomnia 的开源替代
| 你的痛点 | Hoppscotch 怎么接 |
|---|---|
| 商用工具要订阅,团队按席位收费 | MIT 开源,源码拉下来自建,不花一分钱 |
| 请求、集合、历史记录要传上别人家的云 | 自托管后数据落在你自己的 PostgreSQL 里,离线也能用 |
| REST 之外的协议不好测 | 原生支持 HTTP、GraphQL、WebSocket、SSE、MQTT、Socket.IO(见 README 特性清单) |
跑起来有多快:从克隆到发第一个请求
源码方式跑开发环境,只需要三步:
git clone https://gitcode.com/GitHub_Trending/ho/hoppscotch cd hoppscotch pnpm install && pnpm dev- 必须用 pnpm:根 package.json 的 preinstall 会强制 only-allow pnpm,且锁定了 pnpm@10.33.4。
pnpm dev实际执行pnpm -r do-dev,把各子包的 Vite 开发服务器并行拉起来。- 验证:浏览器打开
http://localhost:3000(.env.example里 VITE_BASE_URL 的默认值),随便发一个接口请求能看到响应即成功。
想直接部署完整实例,用仓库自带的 Docker Compose 更快:
docker compose --profile default updefault profile 会一次性拉起 AIO 容器 + PostgreSQL 15 + Prisma 自动迁移服务;应用默认在 3000 端口,管理后台 3100,后端 API 3170。
代码地图:先看哪几个目录
这是一个 pnpm monorepo,所有代码都在 packages/ 下,但真正需要重点看的是这四个:
| 路径 | 作用 | 谁需要关注 |
|---|---|---|
| hoppscotch-common/ | Vue 3 前端主体:请求编辑器、集合管理、GraphQL 面板、实时连接 | 前端开发 |
| hoppscotch-backend/ | NestJS + Prisma 后端:账号、团队、工作区、发布文档 API | 后端开发、自托管者 |
| hoppscotch-selfhost-web/ | 自托管场景的 Web 服务与 Caddy 反代配置 | 部署运维 |
| hoppscotch-cli/ | 命令行测试运行器,终端跑集合和断言 | CI 流水线 |
配置都藏在哪儿:.env.example 是主入口
- .env.example:所有环境变量都在这里。仓库只提供了示例文件,而 docker-compose.yml 读的是 ./.env,按惯例先复制一份为
.env。它控制数据库连接串(DATABASE_URL)、32 位数据加密密钥(DATA_ENCRYPTION_KEY)、跨域白名单(WHITELISTED_ORIGINS)和前端 VITE_* 接口地址。 - 根 package.json:dev、start、test 等脚本都定义在这,start 用于把自托管产物直接挂在 3000 端口。
- docker-compose.yml:用 profiles 区分 default / app / backend / admin / database 五种部署形态,数据库迁移由独立的 migrate 服务完成。
- hoppscotch-selfhost-web/ 和 hoppscotch-sh-admin/ 目录下的 Caddyfile:控制自托管时的反向代理、TLS 和多端口路由。
- .envrc + devenv.nix:仓库内置了 Nix devenv 开发环境,用 direnv 的人可以自动加载工具链。
再进一步:二次开发入口与工具链
- 桌面端在 hoppscotch-desktop/,基于 Tauri 构建,支持连接自建实例。
- 请求前置/后置脚本的执行沙箱在 hoppscotch-js-sandbox/,想改脚本能力从这里入手。
- 跨 Web/桌面共用的抽象层是 hoppscotch-kernel/ 和 hoppscotch-data/(请求与集合的数据模型)。
- 提交代码的规范写在 CONTRIBUTING.md,官方文档入口在 README 中有链接指引。
【免费下载链接】hoppscotchOpen-Source API Development Ecosystem • https://hoppscotch.io • Offline, On-Prem & Cloud • Web, Desktop & CLI • Open-Source Alternative to Postman, Insomnia项目地址: https://gitcode.com/GitHub_Trending/ho/hoppscotch
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考