“写笔记”支持四种格式——Word 文档、Excel 表格、Markdown、纯文本,起稿或二次编辑时都能随时切换,同一篇笔记想用哪种形态来记,都由你说了算。
md、txt、csv、json 这类纯文本则原样载入,不做多余加工。拿一张现成的表倒进来、改几笔、再导出去,等于白用一台免费的格式转换器。
要带走就在右上角点“下载”,可导出 PDF、Word、Markdown、Excel、TXT 等格式;列表卡片“⋯”菜单里,也有同样的下载入口。
在“工具”页点“+ 上传工具”即可发布:填好名称与链接,再用 Markdown 把使用方法写清楚——能解决什么问题、怎么装、怎么用,比堆介绍实在。
要分发安装包就一并上传压缩包(ZIP、RAR、7Z、TAR.GZ,最大 35MB),别人在详情页一键下载;只放链接不带附件也可以。
工具按大家的收藏热度排序,好用的自然会被顶上来。发布后可在详情页或卡片菜单里编辑、下架。
写笔记时勾上“隐藏”,这篇就只存在于你自己的账号里:不进列表、不进搜索、不上首页精选,也不会出现在任何公开的页面,链接发给别人同样打不开。
适合放密码、草稿、日记这类只给自己看的内容;想公开,去“发布”打开它,把“隐藏”的勾去掉再保存,之后编辑会默认保持原状态,不会悄悄变回公开。
你的内容会同时保存在多个副本上,系统定期做备份与完整性校验,再配合异地容灾机制:就算某台机器出问题,数据也不会丢,可以长期放心存放;特别重要的资料,仍建议你另外再留一份备份。
全站跑在容器化、模块化的现代架构上,更新、部署、回滚都很快,扩展性和稳定性都按长期运营的标准来设计(Built for reliability, designed to scale)。
这个网站最早只是一个人的笔记仓库,后来慢慢长成现在的知识中枢。设计上很克制——没有广告、没有追踪、没有推荐算法,只是干干净净地存放一些东西;既然做好了,就公开出来,万一有人用得上呢。
不做大而全,不做平台梦,保持简单、保持克制、保持好奇。所有内容都由用户贡献、由用户维护:不会突然冒出付费墙,不会在角落塞广告位,也不会把你的数据卖给第三方。
产品会持续迭代,站内日志页记录着每一次改动,改了什么都有迹可循;想了解这个站是怎么一步步走到今天的,翻翻日志就能看到来龙去脉。
如果在这里看到涉嫌违规的内容,点对应卡片右侧的“举报”按钮就能提交,我们会尽快核实处理;也谢谢你花一点时间,一起把这里维护干净。
Bruno
Bruno — 一款离线优先、尊重隐私的API测试与协作工具,专治“联网才能干活”的痛点。
如果你跟我一样,对“所有东西都得登录云端才能用”这件事越来越烦,那你一定会喜欢Bruno。它不是Postman那种“你得注册账号、登录、把数据存在我服务器上”的套路,而是一个离线优先、本地存储、Git友好的API调试工具。简单说,你写接口、存请求、管理集合,所有数据都在你电脑上,不强制联网,不偷窥你的请求历史。
这工具到底解决什么问题?
先说痛点。Postman、Insomnia这些老牌工具,这些年越来越重,越来越“云”。你想分享一个API集合?得先注册团队、建工作区、邀请成员、上传到他们的服务器。万一哪天网络不好,或者公司网络限制,你连本地存的历史请求都打不开。更别提某些场景(比如内网开发、离线环境、安全要求高的项目),你根本不敢把API数据传到第三方服务器。
Bruno 的思路很直接: 你的API请求就是一堆纯文本文件(用 Bru 格式,本质是JSON或YAML),存在你本地的文件夹里。你可以用Git管理它们,跟同事通过Pull Request协作,或者直接复制粘贴文件夹分享。没有云同步,没有账号绑定,没有“你的数据归我管”这回事。
而且它跨平台——Windows、macOS、Linux都能用,Electron做的,但性能比Postman轻快不少。
下载方式
直接去官网下载,支持所有主流系统:
你也可以从GitHub Releases页面下载安装包,但官网最方便。注意它分两个版本:Bruno(免费开源版)和 Bruno Cloud(付费协作版)。免费版完全够个人和团队本地用,Cloud版只是加了云端同步功能,如果你不需要,用免费版就行。
安装方法
Windows:
下载 .exe 安装包,双击一路Next,跟装普通软件一样。也可以从Microsoft Store安装。
macOS:
下载 .dmg 文件,拖到Applications文件夹。或者用Homebrew:
brew install bruno
Linux:
下载 .AppImage 或 .deb / .rpm。以Ubuntu为例:
sudo dpkg -i bruno_*.deb
或者直接运行AppImage(记得加执行权限):
chmod +x Bruno-*.AppImage
./Bruno-*.AppImage
装完打开,你会发现它没有“注册账号”或“登录”按钮——直接就是一个空白的请求编辑器。清爽。
基础使用教程
1. 创建第一个请求
打开Bruno,点击左上角的“New Request”。你会看到一个很熟悉的界面:左边是请求方法下拉框(GET/POST/PUT/DELETE等),中间是URL输入框,下面是Headers、Body、Params等选项卡。
比如你想测试一个公开API:
- 方法选
GET - URL填
https://api.github.com/users/octocat - 点击右上角的蓝色“Send”按钮(或者按
Ctrl+Enter)
右边会立刻显示响应结果——状态码、响应头、响应体(自动格式化JSON)。整个过程没有联网验证,没有“请先登录”的弹窗。
2. 管理集合(Collections)
Bruno把一组请求组织成“集合”(Collection),但跟Postman不同,一个集合就是一个文件夹。你可以把请求文件直接拖到文件夹里,或者右键创建子文件夹。
比如你建一个 MyAPI 文件夹,里面放 login.bru、getUser.bru、createUser.bru 等文件。每个文件就是一个请求。你可以用任何文本编辑器打开 .bru 文件,看看里面是什么——其实就是一段结构化的文本,定义了URL、方法、头信息等。
method: GET
url: https://api.example.com/users
headers {
Authorization: Bearer {{token}}
}
这意味着你可以用Git来管理API集合,跟同事用PR的方式review API变更。再也不用导出什么“Postman Collection JSON”了。
3. 环境变量(Environment Variables)
跟其他工具一样,Bruno支持环境变量。点击左侧的“Environments”标签,新建一个环境,比如“开发环境”、“生产环境”。在里面定义变量,比如 base_url、token 等。
然后在请求URL里用 {{base_url}}/users 这样的语法引用。发送请求时,切换环境,变量值自动替换。这跟Postman的用法几乎一样,但数据存在本地文件里,不会自动上传。
4. 脚本(Pre-request & Post-response)
Bruno支持在请求前后运行JavaScript脚本。比如你可以在Pre-request脚本里动态生成签名,或者在Post-response脚本里自动提取token并设置到环境变量。
举个例子,登录后自动保存token:
// Post-response脚本
const response = res.getBody();
const token = response.token;
bru.setEnvVar('token', token);
这样后续请求就可以直接用 {{token}} 了。脚本功能虽然不如Postman那么强大(比如不支持外部库),但日常90%的场景够用。
进阶技巧
1. 用Git做团队协作
这是Bruno最大的亮点。你只需要把整个集合文件夹(比如 api-collections/)初始化成一个Git仓库,然后推送到GitLab/GitHub。同事 git clone 下来,直接用Bruno打开这个文件夹,就能看到所有请求。
协作流程变成:
- 你修改了一个请求文件 → 提交PR
- 同事review你的
.bru文件 → 合并 - 所有人
git pull就能同步
没有中间商赚差价,没有“工作区冲突”,没有“谁改了我不小心覆盖了”。而且因为文件是纯文本,diff起来非常清晰。
2. 命令行运行(CLI)
Bruno提供了命令行工具 bru,可以在CI/CD流水线里运行API测试。比如你写了一个测试集合,可以用命令:
bru run --env prod
它会自动执行集合里所有请求,并输出测试结果。你可以把它集成到GitHub Actions或Jenkins里,实现API回归测试自动化。具体安装CLI:
npm install -g @usebruno/cli
3. 自定义主题和快捷键
Bruno支持深色/浅色主题切换,在设置里可以改。快捷键方面,常用的:
Ctrl+Enter:发送请求Ctrl+Shift+N:新建请求Ctrl+D:复制当前请求Ctrl+Shift+E:切换环境
你也可以在设置里自定义快捷键,不过目前选项不多。
4. 导入Postman/Insomnia数据
如果你是从其他工具迁移过来的,Bruno支持导入Postman Collection(v2.1格式)和Insomnia的导出文件。在菜单栏找到“Import”,选择文件即可。它会自动转换成Bruno的文件夹结构。不过注意,有些高级功能(比如Postman的Monitors、Mock Servers)肯定没法导入,但基础的请求、环境变量、脚本基本都能保留。
一些想吐槽的地方
当然,Bruno也不是完美无缺。
- 插件生态弱:目前几乎没有第三方插件,不像Postman有那么多集成。
- 脚本能力有限:Pre-request和Post-response脚本不支持
require外部库,虽然可以用eval绕过,但不推荐。 - 界面细节:有些UI交互不够顺滑,比如标签页管理、响应体搜索等,比Postman粗糙一些。
- 团队协作需要习惯Git:如果你的团队不适应Git工作流,Bruno反而会增加学习成本。
但如果你跟我一样,受够了“必须联网才能干活”的工具,Bruno绝对值得一试。它把主动权还给了开发者——你的数据,你控制。而且开源、免费、跨平台,没理由不试试。
最后提一句:Bruno的GitHub仓库很活跃,作者是个印度小哥,社区氛围也不错。如果你遇到bug或者想要新功能,直接去提issue,通常几天内就有回复。
下载链接再贴一次:
官网下载
GitHub Releases