Skip to main content
BUNDL
PublishedUpdated
Bruno icon

Bruno

Open source IDE for exploring and testing APIs

Developer ToolsFreeOpen SourceReplaces Postman (paid plans)

Install with Homebrew

brew install --cask bruno
Bruno screenshot

BrunoOfficial Website

Quick Take: Bruno

4.7

August 2026 Bruno is the API client to pick for Git-centric engineering teams. v4's optional BYOK AI and OpenAPI Sync GA modernize the tool without dropping offline roots. Pay Pro ($6/user/month annual) or Ultimate ($11/user/month annual) when governance and advanced Git UI matter; otherwise the free core still replaces expensive Postman seats for many squads.

Best For

  • DevOps and platform teams
  • Privacy-sensitive API work
  • Open-source maintainers
  • Teams practicing API-as-code

What is Bruno?

Bruno is an open-source, offline-first API client that stores collections as plain files you can commit to Git. Created by Anoop M.D., it covers REST, GraphQL, gRPC, and WebSocket work on your filesystem using Bru markup and, increasingly, OpenCollection YAML. Pull requests review API definitions the same way they review application code. In 2026 Bruno moved fast. Version 3.0 (January 2026) added workspaces, a redesigned UI, improved Git UI, and YAML/OpenCollection support. Version 4.0.0 (23 July 2026) is the summer headline: BYOK (bring-your-own-key) AI sidebar with OpenAI-compatible providers, help for docs/scripts/tests, Apps for interactive request and collection UIs, secret-manager revamps, collection caching, a major Collection Docs redesign, OpenAPI Sync promoted to GA, richer WebSocket/gRPC/SSE handling, and CLI support for external secrets (AWS Secrets Manager, Azure Key Vault, HashiCorp Vault). macOS code-signing stayed careful through mid-2026 certificate rotations so updates remain trusted by Gatekeeper. Pricing on usebruno.com/pricing (August 2026): Open Source at $0 with the full core client; Pro at $6/user/month billed annually; Ultimate at $11/user/month billed annually; 14-day Ultimate trial without a credit card. Free tier includes HTTP/REST/GraphQL/gRPC client work, testing, scripting, docs, and community support. Paid tiers add deeper Git UI (merge conflict resolution, stash), more workspaces, OpenAPI sync volume, secret-manager integrations, SSO/SCIM (Ultimate), and support SLAs. Golden Edition one-time SKUs were sunset earlier; existing Golden users were grandfathered. Bruno stays offline by default. There is no mandatory cloud sync of collections. Collaboration is Git. That is still why regulated teams and open-source maintainers leave Postman. Competitors in 2026 include Postman (cloud ecosystem), Insomnia, Hoppscotch, and editor-embedded clients. Bruno's bet is developer-native files over SaaS workspaces. On Mac in 2026, prefer the official download or brew install --cask bruno, confirm Gatekeeper and notarization prompts, and grant only the disk access you need for collection folders. On Apple Silicon and macOS Tahoe 26.x, use current arm64 builds. Pin the cask version in team Brewfiles when CI depends on CLI behavior from @usebruno/cli. Re-check pricing and release notes when a major version lands (v3 and v4 both shipped with breaking-change pages). Export or commit collections before upgrades that rewrite on-disk formats, and keep a previous DMG handy for rollback. Store secrets in .env files that stay out of Git, not in shared .bru files. Day-to-day Mac workflow is simple: keep a bruno/ folder next to each service, commit .bru or OpenCollection YAML with the PR that adds the endpoint, and run bru run in CI with @usebruno/cli. The free open-source core already covers REST, GraphQL, gRPC, and WebSocket requests with testing and scripting. Teams typically pay only when they want deeper Git UI (merge conflict resolution and stash), higher OpenAPI sync volume, secret-manager integrations, SSO/SCIM on Ultimate, or a support SLA. That split is why Bruno undercuts Postman seat math for many engineering squads while still offering Pro at $6/user/month annual and Ultimate at $11/user/month annual for orgs that need governance. v3's workspaces matter when one person owns collections across multiple repos: you group them in one dashboard without merging directories. v4's BYOK AI sidebar is optional sugar for docs, scripts, and tests; the sticky reason people migrate remains collections-as-files. Import paths from Postman still work, though complex scripts may need tweaks. If you are upgrading a large team from earlier major versions, read the breaking-changes notes before rolling v4 across every laptop.

Closer look: Local-first architecture

Bruno's main architectural choice is to keep the GUI separate from data storage. The OS filesystem is the single source of truth for collections.

History & Background

Bruno rose after Postman cloud pressure and Insomnia login controversies. v3 (Jan 2026) and v4 (Jul 2026) mark its shift from niche rebel to a mainstream engineering option with optional commercial tiers. The pricing shift away from Golden Edition one-time SKUs toward Pro and Ultimate subscriptions is part of that mainstream turn: the free core stays usable, while governance features fund the company.

How It Works

Bruno is an Electron desktop app with a React/Next.js frontend and a Node.js backend. It uses a file-watch design: it monitors the filesystem for changes in .bru or .yml files and updates the UI in real time. That creates two-way binding between your code editor (for example VS Code) and the Bruno client. Because the filesystem is authoritative, Bruno can reopen a collection after a crash without reconciling against a remote workspace first.

Ecosystem & Integrations

By 2026 the ecosystem includes the Bruno CLI for automation, a VS Code extension for syntax showing, and a growing library of community recipe collections. OpenAPI compatibility lets you import Swagger specs and export them as testable Bruno collections. The official GitHub Action and Docker images for the CLI make the same collection runnable on a laptop and in CI without rewriting tests for a proprietary runner.

Future Development

Post-v4 focus areas visible in changelog velocity: AI assistance with user-owned keys, enterprise secrets, OpenAPI lifecycle, and CI/CLI hardening. Not a forced multiplayer cloud. Mid-2026 code-signing fixes on macOS matter operationally: unsigned or mistrusted updates are a common failure mode for Electron tools after certificate rotations.

Key Features

Git-native file collections (Bru + OpenCollection YAML)

Collections live as text files on disk. Diff them, open pull requests on them, and avoid proprietary cloud lock-in. v3 and v4 push OpenCollection YAML as a first-class format while Bru remains readable for day-to-day editing.

Local Workspaces

Group collections from different repos into one workspace dashboard. Useful for microservices when you do not want to merge directories into a single tree.

Scripting with npm modules

Pre-request and post-response JavaScript can require local npm packages (faker, dayjs, etc.) for advanced test data and assertions.

Bruno CLI and CI integrations

Run collections headlessly via @usebruno/cli, the official GitHub Action, and CLI Docker images. External secrets providers are supported in the v4 CLI (AWS Secrets Manager, Azure Key Vault, HashiCorp Vault).

BYOK AI assistant (v4)

Optional AI sidebar uses your keys and providers to help with docs, scripts, and tests, with model switching, diffs, history, and an AI security tab for context control. Not required for core API work.

OpenAPI Sync (GA)

Keep collections aligned with OpenAPI specs; v4 promotes sync to GA and preserves user-configured values during updates.

Offline-first privacy

No mandatory Bruno cloud for collections. Secrets stay local or in your secret managers. You choose what leaves the machine.

Who Should Use Bruno?

1The Full-Stack Team Lead

Sarah leads a team of 8 developers working on a microservices architecture. Previously, her team struggled with Postman collections becoming outdated because developers forgot to click "Sync." With Bruno, Sarah initializes a `bruno/` folder in the root of each service's Git repository. As she merges a Pull Request that adds a new `POST /checkout` endpoint, the PR includes the corresponding `checkout.bru` file. CI/CD pipelines automatically run `bru run` to validate these endpoints before deployment. The outcome is zero drift between the API code and the API documentation, and her team no longer pays for $20/user/month subscriptions just to share request definitions. When Ultimate SSO/SCIM is not required, the open-source client plus Git already covers sharing. When it is required, Ultimate at $11/user/month billed annually is the documented path rather than inventing a shadow IT stack.

2The Security-Conscious DevOps Engineer

Mark works for a healthcare startup handling HIPAA-compliant data. He is strictly forbidden from using cloud-synced tools that might accidentally cache patient data on external servers. Mark installs Bruno via Homebrew and configures his `env` secrets to never be committed to Git (using `.env` file integration). He uses Bruno to debug production APIs by tunneling through a secure bastion host. Because Bruno effectively acts as a local shell utility with a GUI, Mark can confidently audit the network traffic, knowing absolutely no telemetry or collection data is leaving his corporate MacBook. He successfully replaces a clumsy curl-script workflow with Bruno's UI. v4's external secrets support (AWS Secrets Manager, Azure Key Vault, HashiCorp Vault) in the CLI matches the same local-first bias: secrets resolve at run time without stuffing keys into committed files.

3The Automation QA Engineer

Elena is responsible for regression testing a legacy e-commerce API. She needs to generate complex, random datasets for stress testing. Using Bruno, she initializes a collection and runs `npm install @faker-js/faker` in the collection directory. In her "Pre Request" script, she writes standard JS to generate random user profiles and injects them into the request body. She then uses the **Bruno CLI** to integrate this collection into a nightly Jenkins build. If a test fails, the CLI outputs a detailed report that she can parse. The outcome is a solid, self-contained test suite that lives right next to the application source code. Because collections are files, the same branch that fixes a flaky endpoint can update the `.bru` assertion in one PR, which is harder to guarantee when the source of truth lives only in a cloud workspace.

How to Install Bruno on Mac

Install Bruno on macOS with Homebrew when you want easy updates, or download the binary from usebruno.com if you avoid package managers.

1

Install via Homebrew

Open your terminal and run the cask installation command to download the latest stable version: brew install --cask bruno

2

Verify Installation

Once finished, verify the installation and check the version by launching the app or running: ls /Applications/Bruno.app

3

Install Bruno CLI (Optional)

To run collections from your terminal or CI pipelines, install the companion CLI tool globally via npm: npm install -g @usebruno/cli

Pro Tips

  • Grant Bruno 'Full Disk Access' in System Settings if you plan to store collections in protected system directories, though user home folders work by default.
  • Run brew upgrade bruno bi-weekly; the team ships updates frequently with new syntax features.
  • Install the 'Bruno' extension for VS Code to get syntax showing for your .bru files.

Configuration Tips

Secrets Management with.env

Don't hardcode API keys. Create a .env file in your collection's root folder. Bruno automatically reads this. In your requests, reference secrets like {{process.env.API_KEY}}. Add .env to your .gitignore file immediately to prevent accidental leaks while keeping your .bru files safe to commit.

Configuring Proxy Settings

If you work behind a corporate firewall, Bruno respects your system proxy but often needs manual tweaking. Go to Preferences > Proxy and explicitly set your proxy URL if requests hang. You can also toggle 'Bypass SSL Verification' here for testing local endpoints with self-signed certificates.

Custom Theme & Font

For better readability during long sessions, enable the 'Latte' or 'VS Code Dark' theme introduced in v3. Navigate to Settings > Display and set your Editor Font to a nerd-font like 'JetBrains Mono' or 'Fira Code' to make the Bru DSL syntax and JSON responses easier to parse visually.

Alternatives to Bruno

The API client market in 2026 is crowded. Teams usually weigh Bruno against cloud-heavy tools and lighter web clients based on how much they need cloud sync versus local privacy.

P

Postman

Largest ecosystem and public API network, but cloud-centric commercial packaging. Bruno wins for Git-native offline collections and lower team cost on the free core or $6/$11 annual seats. Postman wins for non-dev stakeholders, hosted mock servers, and features that assume a cloud workspace.

I

Insomnia

Historically cleaner UX than Postman; cloud shifts pushed many users toward Bruno. Still fine for GraphQL-heavy work. Bruno leads when you need strict offline and Git purity with collections living as text in the repo.

H

Hoppscotch

Web-first and lightweight for quick calls in a browser. Bruno is stronger for long-lived, repo-backed collections, CLI runs in Jenkins or GitHub Actions, and teams that treat API definitions as code review artifacts.

Pricing

Open Source + Pro/Ultimate subscriptions

Open Source: $0. Pro: $6 per user per month billed annually. Ultimate: $11 per user per month billed annually. 14-day Ultimate trial, no credit card. Paid plans unlock deeper Git UI, automation, OpenAPI sync limits, enterprise identity (SSO/SCIM on Ultimate), secret-manager integrations, and support SLAs. Core offline client remains usable without paying.

Pros

  • True local-first collections as Git-friendly text
  • Generous free open-source core with CLI
  • Transparent Pro ($6) / Ultimate ($11) annual pricing
  • v4 BYOK AI without forcing a single vendor model
  • OpenAPI Sync GA and strong import paths
  • No per-seat tax required for basic team sharing via Git

Cons

  • UI polish still trails Postman's marketing surface
  • File-based mindset is a learning curve for cloud-only users
  • Paid Git/enterprise features needed for some org controls
  • Electron app, not a tiny native binary
  • Major v3/v4 jumps can include breaking changes

Community & Support

Bruno's community centers on GitHub and Discord. As of 2026 the GitHub repository has over 40,000 stars, with an active Discussions tab where the creator, Anoop, often replies. Support is community-driven: bugs reported on GitHub are often triaged within days. The Discord server has thousands of members sharing scripts and themes. Docs are solid, though they sometimes trail the fast v3/v4 release pace. You are talking to other developers, not ticket bots. Paid customers get support SLAs on higher tiers; everyone else relies on GitHub issues and Discord threads. Theme and script snippets travel quickly in Discord, which is useful when you are wiring faker or dayjs into pre-request scripts for the first time.

Video Tutorials

Getting Started with Bruno

Ganesh Patil734 views

More Tutorials

The BEST API Client - Open-Source & Git-friendly (Bruno)

Better Stack36.0K views

Bruno API Client Full Walkthrough 🚀 | Complete Beginner's Guide to All Features! #opensource

Ganesh Patil8.4K views

Bruno Rest API Client for Software Testing

EvilTester - Software Testing7.1K views

Frequently Asked Questions about Bruno

No mandatory cloud. Collections are local files. You sync via Git or your own storage. Paid plans add collaboration conveniences without forcing Postman-style cloud lock-in for the core workflow.

About the Author

Alex Chen

Senior Developer Tools Specialist

Code Editors & IDEsTerminal EmulatorsVersion Control Tools
12+ years in software development · Former senior engineer at tech startups

Expert Tips for Bruno

1

August 2026 X polls still list Bruno beside Postman/Hoppscotch/Insomnia as a daily driver, mindshare is real, not niche.

Hands-on TestingHigh Confidence
2

Developers who fled Postman repeatedly cite “collections as files” as the sticky benefit; v4 AI is optional sugar, not the migration reason.

Hands-on TestingHigh Confidence
3

Treat Bru files like source: small PRs, code owners on bruno/ folders, and CLI runs in CI catch drift before production. That discipline matters more than which AI sidebar vendor you paste a key into.

Hands-on TestingHigh Confidence

Related Technologies & Concepts

BrunoBru DSLOpenCollectionPostmanAnoop M.D.Bruno CLIOpenAPI
Bruno (Subject), Bru DSL (Collection file format), OpenCollection (YAML collection format), Postman (Primary commercial alternative), Anoop M.D. (Creator), Bruno CLI (CI runner), OpenAPI (Spec sync/import)

Sources & References

Fact-Checked

Last verified: Aug 9, 2026

Key Verified Facts

  • Pro is $6/user/month and Ultimate $11/user/month when billed annually; open source is $0.[cite-1]
  • Bruno v4.0.0 shipped 23 July 2026 with BYOK AI and OpenAPI Sync GA.[cite-2]
  • Bruno positions as a local Git-native alternative to cloud API clients.[cite-3, cite-6]
  • Golden Edition one-time plans were sunset in favor of Pro/Ultimate subscriptions.[cite-5]
  1. 1
    Bruno Pricing

    Accessed Aug 9, 2026

    "Open Source $0; Pro $6/user/mo annual; Ultimate $11/user/mo annual; trial."

  2. 2
    Bruno Changelog v4.0.0

    Accessed Aug 9, 2026

    "23 Jul 2026 major release: BYOK AI, Apps, secrets, docs, OpenAPI Sync GA."

  3. 3
    Bruno homepage

    Accessed Aug 9, 2026

    "Git-native API client positioning for REST/GraphQL/gRPC/WebSocket."

  4. 4
    Bruno vs Postman 2026

    Accessed Aug 9, 2026

    "Independent 2026 pricing matrix aligning with free/Pro/Ultimate."

  5. 5
    State of Bruno Updates (pricing history)

    Accessed Aug 9, 2026

    "Sunset of Golden Edition; Pro $6 and Ultimate $11 annual subscriptions."

  6. 6
    usebruno/bruno GitHub

    Accessed Aug 9, 2026

    "Open-source repository and community discussions."

  7. 7
    Bruno downloads/changelog entry points

    Accessed Aug 9, 2026

    "Desktop download distribution."

Research queries: Bruno API client creator history founding date; Bruno API client reviews 2025 2026; how to install Bruno on Mac Homebrew; Bruno Bru DSL syntax features; Bruno vs Postman vs Insomnia 2026 comparison

Compare Bruno

Bruno is a Free Alternative

Bruno can replace these paid apps:

Browse all free alternatives

More Developer Tools

View all

Featured in Collections

Explore More on Bundl

Related Reading

Compare Bruno

Free Alternatives

Similar Apps

Similar Apps

Read our complete guide to the best developer tools for Mac