Bruno — An API Client Using Git to Fight for Developer Experience
Table of Contents
EDITOR'S NOTE: Have you ever considered using Git to manage your API Collections? That's exactly what Bruno, an open-source API client, is designed to do!
We reached out to the Bruno team to discuss the benefits of using version control for API collaboration and to learn how to get started with their Git-friendly client.
Over the past decade, we’ve seen countless new and existing technologies make a commitment to improving Developer Experience (DX), and the arrival of AI has changed the way many of us work. However, as new vendors appear to capitalize on the multi-billion dollar DX market, there’s a trend that presents a risk: the use of proprietary storage and collaboration platforms instead of Git.
Git is the staple of any developer’s day and it’s undeniable that removing a version control system from the development cycle causes nothing other than risk, confusion, and friction. In our opinion, Git is the cornerstone of DX.
In this post, we’re going to look at how Bruno, an open-source API client, is breaking the mold and intentionally leveraging Git as the collaboration medium. This approach has quickly skyrocketed adoption to over 200,000 monthly active users.
We’ll walk you through what Bruno is, why this decision was made, some of the core capabilities of the tool, and how to try it out.
What is Bruno?
Well, the better question may be “who is Bruno?”, as both its name and logo reflect Anoop’s (Founder and Creator of Bruno) golden retriever.
That said, Bruno (the one that doesn’t shed or want belly rubs) is an API client that is:
- Open-source
- Offline
- Has no cloud component or data syncing
- Allows for native integration with any Git provider
Each of these items is both in stark contrast to current available solutions and is unapologetically developer-first.
Why use Git?
This question almost seems silly, but it’s a choice that no other API client has made to date. Although Git is the collaboration and storage mechanism for all other areas of software development, historically, API clients have used cloud workspace constructs similar to Google Drive. Unfortunately, this means that there is a fundamental struggle with versioning, as the collections that test, document, or monitor the API live so far away from the code itself.
Bruno’s architectural difference is that collections are stored locally, directly on your file system. This is what allows any Git provider to ingest the collections, and then you’re able to perform GitOps against the collections as you would anything else.
Most developers are used to exporting their collections and maybe uploading them to Git, so it’s a bit of a mind-blowing reaction realizing that with Bruno, you can push, pull, merge, etc., as you would with any code.
Core Capabilities
Bruno provides the classic features you’d expect from an API client, including the ability to structure API requests, configure necessary authentication methods, and review response data after sending a request.
The real beauty comes in when you start working with teammates via Git. Below is an example of how you can import a collection by cloning a Git repo. In this case, we’re using GitHub.
The ability to create a branch of the repo and then commit a change back to the main repo — all without leaving Bruno’s GUI — is something that has never been present within an API client. This change finally allows API collections to be treated as first-class citizens within a traditional Git process.
Of course, there are a slew of additional improvements beyond your typical API client, such as advanced scripting, the ability to load npm packages directly into a collection, and the capability to navigate or modify code directly — all of which can be synced natively with your repositories.
Try it Out!
As DX gets more confusing through additional collaboration systems and proprietary storage, there are tools like Bruno working hard to flip the script.
Give Bruno a try and join more than 500,000 users committed to using Git for API collection sharing! Since Bruno is open-source, getting started with this tool is effortless — simply head over to the GitHub repo or grab it right from the website!