
Bruno
Open-source, offline-first, Git-native API client with plain-text collections.
About
Bruno is an open-source (MIT) API client built around a simple idea: collections should be plain-text files in your repository, not opaque cloud objects. Every request lives as a .bru file you can diff, review, and version with Git, and the client works fully offline with no account required. It has gathered roughly 47,000 GitHub stars.
Bruno handles REST, GraphQL, and gRPC requests with environments, variables, request chaining, pre-request and post-response JavaScript, assertions, and a bru CLI runner for headless execution in CI/CD with JSON, JUnit, and HTML reporters. The free client is complete; Pro ($6/user/month) adds in-app Git integration and an unlimited collection runner, while Ultimate ($11) adds SSO, SCIM, and audit logs. Anything needing shared-server collaboration (real-time co-editing, hosted mocks, published docs) is outside its model by design.
What it can do
- Git-native plain-text .bru collections versioned alongside code
- Offline-first REST, GraphQL, and gRPC client with no cloud sync
- Pre-request/post-response scripts, assertions, and environments
- bru CLI runner for headless CI/CD execution with test reporters
Setup
Download the desktop app from usebruno.com/downloads, or install via brew install bruno, Chocolatey, Scoop, Snap, Flatpak, or apt.
Prerequisites
macOS, Windows, or Linux; no account needed for the free client.
Use cases
Works with
Trust score — 8/10
Scored 8/10 (verified tier, metrics-v1). Evidence: Verified via vendor site/docs/GitHub and reputable coverage, wave 65; Trending score 84/100 from researcher assessment.
★ 47,000 GitHub stars
Sources
Every fact above was checked against these sources. Where a claim comes from the provider and couldn't be independently verified, the text says so.