Bruno is Git-native .bru files. Ripple is one app for HTTP, gRPC, SQL, OpenAPI, mocks, and load tests.
Choose Bruno if Git-native .bru files and minimal tooling are the priority — you likely already have separate tools for mocks, load tests, and SQL. Choose Ripple if you want one desktop app that covers HTTP, real-time, gRPC, SQL, API design, mocks, and load tests without assembling a toolchain.
Same philosophy
Both local-first, no telemetry, no account — different storage models.
Ripple goes wider
gRPC, SQL, Socket.IO, design studio, mocks, load lab — Bruno stays lean on HTTP.
Git optional
SQLite daily driver; team workspaces with Git init/pull/commit when you want it.
Feature comparison
| Feature | Ripple | Bruno |
|---|---|---|
| Local-first | Yes — SQLite on disk | Yes — .bru files on disk |
| Runtime | Rust workbench — ~21 MB, ~45 MB idle | Electron — ~20 MB download, ~60 MB idle |
| Git-native collections | Optional via workspace Git | Core design (.bru in repo) |
| Account required | No | No |
| Open source | No (proprietary app) | Yes (MIT) |
| HTTP + GraphQL | Yes | Yes |
| gRPC | Full client + reflection | No |
| SQL runner | Postgres, MySQL, SQLite | No |
| OpenAPI design studio | Yes — lint, version, mock | No |
| Load testing | Built-in | No |
| Mock servers | Local, from spec or routes | No |
| Triage tools | Built-in — JSON tree/graph, diff, JWT, encode/decode, network diagnostics | Minimal — no JWT, diagnostics, or diff suite |
| On-device AI | Son of Anton | No |
| CI CLI | rip CLI — collection/chain runs, JUnit/JSON/HTML/GitHub reporters | bru CLI |
| Request chains | Multi-step workflows with JSON-path extraction | No |
| Pre-request / test scripts | Full pm.* runtime (Pro) | Yes |
Who should use what?
Choose Ripple
- You want a native-feeling desktop app with fast startup — Rust workbench vs Bruno's Electron shell
- You need gRPC (all streaming), SQL, and Socket.IO beyond REST/GraphQL
- You want OpenAPI design, spec linting, versioning, and one-click mock servers in-app
- You run load tests and collection probes without exporting to another tool
- You want triage tools built in — diff editor, JWT decoder, JSON graph, network diagnostics — Bruno focuses on requests only
Choose Bruno
- Git-native .bru files in-repo are non-negotiable for your team
- You want the lightest possible client focused purely on HTTP testing
- bru CLI in CI is your automation path and you don't need rip's reporters
- You don't need SQL, load testing, or OpenAPI design in the same app
Switch from Bruno
- 1Import Postman or OpenAPI specs (same sources Bruno users often migrate from)
- 2Export collections to OpenAPI 3.0 or Postman v2.1 if you need to move back
- 3Team workspaces support Git on a folder — collections sync via your existing Git remote