Bruno - Reinventing the API Client | Local, Native Git, Open Source
The API-client built for developers. Open-source. Local . Native git.
Bruno stores collections on your filesystem which allows you to natively interact with git for collaboration and versioning.
Replies
Bruno
Hey everyone! 🚀
After five years at another major API client, I left after they made three massive mistakes:
— Forcing a mandatory cloud login
— Jacking up prices, effectively holding user data hostage.
— Bloating the product with unused 'platform' features.
These changes alienated the very developer community that built them.
Around that time, I met Anoop — the creator of Bruno.
Bruno is the antidote: a local-first, open-source API client with native Git integration for true collaboration and versioning.
No proprietary cloud lock-ins.
No sky-high prices for basic control over your own work.
No vendor hostage situations.
With Bruno, you can just:
Use a pure API Client without unnecessary bloat
Own your collections and data end-to-end
Follow your normal Git workflow
🚀 Hope you enjoy today’s launch — and we'd love your feedback!
@real_ryan_reynolds Huge respect for building something that truly respects developers' workflows 🙌🏽😍
Bruno
@hamza_afzal_butt 💪 Definitely! Feels like it's been abandoned in many tools.
@real_ryan_reynolds And now you are developing it alone - or together with Anoop?
PizzaTime
Oh, it’s such a surprise to see Bruno here! I’ve been using it actively for my side projects for over a year now, and I must say it’s become my default API client. Postman is no longer on my list when I think of an API client.
To be honest, the feature that won me over is that Bruno collections can be part of the source code - a place where they belong naturally, in my opinion. But all the rest is working just fine, bringing a complete experience. So, if you’re keen to try something new and replace Postman/Insomnia and the cloud dependency they come with, I really do recommend Bruno.
Bruno
@valkirilov Thanks, Valentin! Really appreciate your support and feedback. Completely agree that colocating collections alongside your source code (and API spec) unlocks something that hasn't been possible with other API clients. It's never made sense having a collection scattered in a different place needing to be maintained.
The best API-client for me!
Bruno
@khlebobul Thanks, Gleb! Love the support. What makes Bruno the best for you? Anything you'd like to see us add?
@real_ryan_reynolds I think all my favorite features have been mentioned by @valkirilov. I can only add that I like to use Open Source projects
Bruno
@valkirilov @khlebobul https://media.giphy.com/media/VMO6qeIbr7JRLnLTGw/giphy.gif
I use this. Doesn't look polished like Httpie but found it more useful.
Bruno
@admiralrohan Appreciate the feedback, Rohan! We're planning on some UI/UX improvements within this quarter. Are there any pieces that really stick out to you that we should prioritize polishing?
@real_ryan_reynolds Minor things, but these come to mind from recent experience:
It's not easy to see headers of your HTTP responses. You have to dig under timeline and then follow the network trail to see the raw HTTP response headers. It would be nice to have the response headers easily listed right on your response page just like the request headers are.
I don't see a way to disable automatic following of redirect responses.
The new oauth handling in version 2.x may be improved, but there's still some lack of documentation about exactly how to set it up and how it works. For example, when presented with the wizard to fill in your OAuth config, it asks for the callback. It is not clear what you are supposed to put in this field. Does bruno have a callback url that allows the auth provider to redirect back to bruno? Or are we supposed to supply something else there? If so what?
Bruno
@crossbound - this is good feedback!
We released a new timeline view, have you tried that?
This is a good suggestion. I don't see an open feature request, but we can add one. https://github.com/usebruno/bruno/issues
Another good callout. We'll update docs. Today we don't have a URL like Postman does specific to the callback. If your application doesn't require a specific value, you can put any valid url into the callback field.
Reacttiv.com
This is truly an unicorn, a post about something that doesn't have AI, LLMs, GenAI or related in ProductHunt in these days. What a great surprise to see Bruno here.
Bruno
@jailandrade Ha! You said it not us, Mikhail! Appreciate the feedback and support :).
A welcome tool to test APIs. Just a few questions, how is this different than Hoppscotch?
Congratulation on the launch!
Bruno
@evan_paul - It's a good question, Evan. The biggest difference with Bruno compared to any current API client is our storage of collections as plain text files on your file system. This allows direct/native synchronization with Git so that collections can be treated/versioned just like code is.
API collections historically suffer from two problems: 1. people don't know where to find them 2. they aren't versioned correctly.
By storing collections in Git and alongside your spec/code, we solve this issue.
@real_ryan_reynolds Thank you for sharing this. This was helpful.
SplitHub.io
Wishing you lots of success!
Bruno
@andrewbro Thanks, Andrei! Appreciate your support!
ThreeDee
Bruno's focus on local-first development and native Git integration is a breath of fresh air! It's great to see an open-source API client that prioritizes collaboration and versioning. 😊
Bruno
@samuel_briskar Thanks, Samuel! We feel having collections versioned and shared with Git is critical - glad it resonates with you. Anything you'd like to see next?
I appreciate Git integration for APIs! 👍
Bruno
@shenjun Absolutely - it feels like the only way it should be!
Originally used Postman, but after the cloud push, I left it behind. I've tried insomnia, rapidApi (Paw), and others, but bruno's simplicity and focus on local devs won me over and it's the go-to HTTP client for me now. I use it on both Windows and Mac, and it works great in both places.
As someone has already mentioned, the interface is not as advanced as some of the other tools, but in functionality it covers the essentials of what I need and what it's missing is only minor things. I've been using Bruno for a while now, and it's continued to improve since I first started using it, so I'm perfectly content to continue using Bruno for my daily workflows.
Thank you to the developers for making a tool that's actually what the community wants instead of focusing only on what makes the most money.
Bruno
@crossbound Thanks, David! Your feedback means a lot. I also see your comments in the reply above and will put some notes in there. All valid points.
Bruno is the best...I used to hate Postman...so when Bruno came along, I just hated Postman even more 😅 Bruno rules! 💪🏻 Best tool I used so far 🤩
Bruno
@alvaro_tejada - Thanks, Alvaro!! Anything you'd want to see put into the product to make it even better?
@real_ryan_reynolds Can't think of anything right now 🤔 Bruno is great the way it is 🤩 But will for sure drop whenever I have something in mind 🤓
Long-time user here. And I have to say, I'm pretty happy with all the features Bruno offers, especially code generation.
Congrats on the launch!
Bruno
@chuckchen - Thanks, Chuck!
Novu
Finally an API client prioritising an actual developer experience without the bloat! Looks promising!
Bruno
@adamchmara Thanks Adam! Give us a try and let us know what you think!
Bilanc
love bruno - super lightweight!!
Bruno
@0x_s13i Thanks for the support, Samuel! Anything you'd like to see improved/changed?
Almanax
oh this looks great!
Bruno
@francescopiccoli Thanks, Francesco!
been using it since the first iteration. congrats on launch !
Bruno
@novian_andika - Thanks, Novian! Glad to have you as part of the community!
Bruno is a great day to day tool for me + as a dog lover, how can I continue without it.
Bruno
@jeantanneau - we're local-first and dog-first :)
Voicenotes
I love the local first approach and it's being "Free" and Open Source.
I can strongly recommend it because:
flexible configuration on environment and collection etc. levels
the easy scripting integration for defining response asserts and advanced scripting
OpenAPI yaml file import and export
OAuth 2 support
The CLI for running automated integration or system tests.
However one crucial thing that is missing in the free version is the "Vault Secrets" feature for storing secrets safely.
Keep up the good work!
I would like one feature, ability to test responses from Temporary API routes. Not all the times we need full-fledged collections.
Bruno
@admiralrohan Hey Rohan - so just the ability to make a request without a collection? We're actually planning for something like that soon - it's a popular request.
@real_ryan_reynolds That is great!