Hoppscotch: Open source alternative to Postman / Insomnia
128 comments
·February 1, 2025written-beyond
lelanthran
> Without sounding like every other developer who hates on electron, I would really appreciate an http client with a Gui that was lighter, like iced or slint.
How much would you be willing to pay for such a client?
I'm not being facetious, I'd really rather like to know, because as an independent developer, every single time I suggest a native application using native widgets to a client, they choose the HTML interface rather than a Qt or similar based interface.
The easily doable pretty animations in CSS in a 800MB-in-RAM-while-running application is, to paying clients, preferable than a 50MB-in-RAM-while-running that doesn't have the fancy spinning, tilting, animated wizz-bangs.
I have been writing software professionally since the mid-90s; I can do you a quick GUI-based cross-platform HTTP send+receive application based on libcurl in about 2 weeks. Looking at the minimum I need to make to pay my bills, I need purchasers paying a cumulative 1000USD for this effort, so 10x buyers @ $100, or 100 buyers @ $10, and so forth.
And, of course, I'd expect to only be able to sell it for a short while, if it is popular, until a clone starts up with $40k worth of SEO and advertising money.
The software you want can be had, and the skill to make it exists, in a timeframe that is feasible, but the economics are just not there.
necessary
This is a good business perspective, but I don’t really see why this couldn’t be someone’s open source passion project. The comment wasn’t really implying that they needed a paid tool, just a tool that suits their needs and is lightweight. Plenty of the software I use on a daily basis is open source software where you could argue that the economics shouldn’t have been there.
lelanthran
> Plenty of the software I use on a daily basis is open source software where you could argue that the economics shouldn’t have been there.
Me too. But the problem with "the economics just aren't there" means that if I cannot get, just from word-of-mouth (say, a Show HN post) 100 users @ $10 once-off lifetime purchase, then this is not a product that is in demand anyway. An open-source/free product that is exactly the same would similarly receive no love from users.
IOW, if not enough users exist for this product at $10, not enough users exist for this product at $0. Your passion product will still result in the dev burning out on the fact that no one wants their passion enough.
ozim
You see the problem in your comment:
why this couldn’t be SOMEONE’S ELSE passion project
PhilippGille
HTML/CSS can still be used for the frontend even without Electron. Some frameworks use the OS bundled web renderer instead:
- For Rust apps: https://github.com/tauri-apps/tauri
- For Go apps: https://github.com/wailsapp/wails
jenadine
I think you can also easily do the pretty animations in a 50mb in ram "native" application
rubymamis
Yes, you can, especially if you use Qt with QML like I do[1][2][3].
[1] https://rubymamistvalove.com/blog/orchids.mp4
jurschreuder
Bruno is nice because unlike postman all the calls are defined in files that you can add to the git of your project.
Only thing I don't like about Bruno is that you cannot generate a documentation from your api call tests.
JTyQZSnP3cQGa8B
Bruno was supposed to free us from the other bad guy, then they added a subscription too. Fuck Bruno I guess.
_benj
I find this funny from people that make their living from $$ from software! Lol
But apart from that Bruno is open source (MIT), you can fork it and have it anyway you want…
The paid option seems just like the traditional open source model of make software free but offer enterprise support. And given that CTOs tent to want to pay for stuff (postman is terrible nowadays but is still picked and paid for) why would Bruno straight up say no to money?
Chris2048
Are there non-binary versions of Bruno?
natebc
https://github.com/usebruno/bruno has the source code. It's a node app so i guess by binary you mean a way to run it without the normal electron wrapper? You should be able to run it standalone though i've never tried it outside it's normal distribution method.
mootoday
Sounds like you're looking for https://yaak.app/.
written-beyond
that's close but it uses Tauri, which maybe lighter than electron but we're still running an instance of a web browser/web view
klabb3
Why is webview a problem? I hear this a lot but not sure why (with the exception of gtk WebKit on Linux which has legit perf issues). We’re on web right now and I’ve never heard anyone complain hackernews is sluggish and that they want a native app instead (or rather 5 native apps minimum for the big OSs).
arcanemachiner
There's a TUI application out there that might be up your alley, but I can't remember what it's called...
EDIT: There's one called Posting which seems to be the most popular: https://github.com/darrenburns/posting
gschier
Yes, Tauri isn't that much different than Electron. I also bundles Node JS to power Yaak's plugin system, which makes it even more similar.
I think Electron gets a bad rep mostly because big companies use it to build low quality apps.
bakugo
> Without sounding like every other developer who hates on electron
Electron is hated for very good reasons. Postman in particular is just so insanely bloated and sluggish, it's painful to use on anything that doesn't have a higher end CPU.
JTyQZSnP3cQGa8B
I haven't tried it but there is Posting in a TUI: https://github.com/darrenburns/posting
d0mine
uvx posting
TZubiri
I know it misses the sweetspot you are looking for, but have you tried curl?
warmuuh
I just wrote my own [1] and I will be Sure that this one will never be monetised
weinzierl
Nice and kudos for your efforts.
For convincing people it never being monetized this is not enough.
You'll need
1. A copyleft license (to prevent the Redis case)
2. No CLA (to prevent unilateral relicensing)
3. A large enough and diverse enough set of contributors that makes relicensing unpractical enough for user to believe it will never happen
ksynwa
Nice. And the project is mature too. Don't know why I've never heard of it until now. Thank you.
compootr
Absolute GitHub.
DrBenCarson
The industry has largely moved to [Bruno](https://github.com/usebruno/bruno)
jellyfishbeaver
My whole organization picked up Bruno after the whole Postman fiasco. I've found Bruno to be very unpolished and buggy. We've run into bugs where the UI will show one value, but when the request sends it uses a previously overwritten variable.
Looking forward to having to move to something else, again.. sigh
literallyroy
Insomnia creator has a new one called Yaak that is open source.
jauntywundrkind
Yes, But.
It doesn't seem like the worst - yet - but Bruno also ramped up their monetization. So far it seems survivable. But given how things have gone before, it's unclear how viable Bruno will really remain.
sunaookami
Are these applications forever doomed? First Postman, then Insomnia, now Bruno...
codechicago277
HTTPie is imo the best one now.
StimDeck
Been on the old CLI version of HTTPie for years now. Or are you talking about the GUI version?
lukevp
Hmm, I didn’t hear about this! What about that lifetime Bruno thing that was $9? I’m pretty sure I bought that. Is that just nothing now or what does that get me?
jicea
Bruno's pricing has changed recently, the lifetime offer is not available anymore. Prices tiers are: free, $6/month, $11/month [1]. Bruno's developers explained it was necessary to sustain Bruno's growth.
jhoechtl
Bruno slowly changed the policy from "we are all free" to "we are mostly free" to "pay for feature A, B, C"
Understandable, but feals like being tricked into something.
skeeter2020
this is (at least) the third time we've seen this in this exact space: Postman, Insomnia, Bruno.
At this point I just use the REST client extension in VS Code (Rider has one too) or HURL. The lack of GUI makes it a little tougher for new people, but file-based is nice, and in the end I have much stronger skills & understanding in the area.
Chris2048
They explicitly sold themselves as an Insomnia alt.
Here is their usage graph: https://star-history.com/#usebruno/bruno&Date
Insomnia introduced account shenanigans around the end of Sept 23: https://github.com/Kong/insomnia/discussions/6590
Letmetest
The features you pay for are just GUI features. All of the things are still accessible in the terminal or IDE.
jmorenoamor
I moved to Bruno for being local, but even before being polished, I see it's taking the cloud route
natebc
How so? In their README they specifically state:
> Bruno is offline-only. There are no plans to add cloud-sync to Bruno, ever. We value your data privacy and believe it should stay on your device. Read our long-term vision here <https://github.com/usebruno/bruno/discussions/269>.
I glanced over that github discussion and don't see where they've gone back on that statement. Am I just missing where they've taken the cloud route?
literallyroy
They haven’t, yet. https://royathan.com/blog/the-api-client-hunt/
that_guy_iain
The industry being who? Because this is the first time I've heard of Bruno? And what does it do that the others don't?
vault
You should ask instead "What does it NOT do that the others do?"
that_guy_iain
I just care what it does.
hshshshshsh
How does you arrive at a conclusion like this? Based on what metrics?
037
If you use a VSCode-based editor, a good alternative can be the "REST Client" extension: https://marketplace.visualstudio.com/items?itemName=humao.re...
I’ve been burned a few times by these clients — difficult backups, changing licensing/commercial terms, hard to version — so now I prefer a few simple .http files that I can version in Git and easily read, even if the extension disappears.
Piisamirotta
That extension is excellent! Been using it for few years already
joe8756438
it’s so good. no context switching with a different app. also, there’s a fairly compatible version for emacs with the same name.
paradite
Can you save the full request details and full response details in one click as one file with this extension?
This is the feature I use the most.
037
Just tried. You can save the full response to a single file with one click, but it doesn’t include the original request.
I found an issue asking for the same feature: https://github.com/Huachao/vscode-restclient/issues/1311
politelemon
Terminal based: https://posting.sh/
sunnybeetroot
That’s incredible, amazes me that you can get a GUI like this in terminal. Next someone will put doom in the terminal
jmorenoamor
Looks cool, I will try it. How are collections stored? My use case involves programatically generating collections.
If the tool suits, I would also need to write a converter from Bruno files to it.
mike_kamau
Hurl https://github.com/Orange-OpenSource/hurl
For those who prefer an efficient command line tool
skeeter2020
I've landed on the REST extension in VS Code for development and interactive work, and Hurl for more test/automation stuff. Both take a little more effort to get setup but way more productive than the typical Postman workflows I see.
alp1n3_eth
Idk if they have it yet, but last time I used the VS Code REST extension it still didn't support pre/post request scripting (which is already insanely fragmented syntactically across Postman/Insomnia/Bruno).
For any long-term things that would normally be in a Postman collection and distributed to others / outside teams, I usually end up with folder-separated Hurl scripts (similar to your use).
I can totally see how the REST extension is way easier for point & shoot from within VSCode though!
est
Am I the only one who use CURL over such tools?
I don't want a 300MB electron client doing GET/POST work, especially those with hidden telemetry on.
wiether
I guess it really depends on your usecase.
If you're just _hacking_ a few simple calls, curl is the way to go.
But if you're working in a team, with multiple environments, with complex payloads, authentication, doing dozens of API calls everyday... Having a software able to manage libraries of endpoints, parameters, simple environment switching, included auth, sharing between team members... is a big time saver.
I personally prefer IntelliJ's HTTP Client[0] since I always have my IDE open, the files are not obfuscated in a gibberish format and can be versioned/shared through Git. But when I start working on an existing project, having a Postman collection to rely on is a huge time-saver, instead of having to go down in-existent API docs or trying to infer from the code itself.
[0]: https://www.jetbrains.com/help/idea/http-client-in-product-c...
sateesh
This and also when you newly join a team it is more productive to start using the tooling what they are using and move to preferred tooling once familiar with the API endpoints.
jicea
You may like Hurl [1]: it's an Open source cli based on curl (libcurl to be exact), to run and test HTTP requests with plain text (I'm one of the maintainers). We recently add --curl option to come back to curl. Give it a shout!
[1]: https://hurl.dev
edudobay
I've recently used Hurl to create a test suite for migrating a complex Nginx configuration to Caddy and it was a great choice!
I ran Caddy replacing the upstreams with mockbin-like services (don't remember which one I used) so it would respond with information about the request made by the proxy, so Hurl could make assertions on that.
VTimofeenko
Recently tried out hurl for a project to show how abstract tests can be run in a specific environment. Great tool, it will definitely stay as part of my standard toolset.
ToucanLoucan
I cannot express in words how much as an engineer I am sick of every app people suggest to me needing an entire quasi-visualized OS running behind it, written in the shittiest language ever to grace our cursed machines, just to render text and perform web requests.
creesch
This is one application where I simply prefer a GUI for most of the use cases. All the various components of an HTTP call are visually better represented as far as I am concerned. Often enough it is also specifically the payload on both sides I am specifically interested in and viewing them side by side and making quick adjustments is just my personal preferences.
In the year 2024 with 8 cores, 32gb of ram and 4tb of storage available the electron overhead generally also doesn't really matter that much to me. Though this doesn't seem to be an electron app either, rather a PWA. Which makes me wonder how well it works with all CORS limitations you are facing in the browser.
Not that I have anything against CURL either, when I am working in a CLI (for example on a server) it is the perfect tool.
XorNot
I use a jupyter notebook and Python with requests.
The problem with all these tools is you pretty quickly end up basically wanting full programmability...at which point, Python is just easier and more flexible.
Combine that with uv for on-demand script dependencies and it's also completely shareable and manageable.
ramon156
I'm not a fan of curl. I like the idea of "simple is better" but I don't like working with just curl. i need a bit of squish
alp1n3_eth
Curl is nice but its syntax leaves a lot to be desired. It's also hard to distribute to others a "collection" of them, as you're going to end up with troubleshooting questions from less-technical users, especially when it comes to multi-request items that require pre/post response processing.
TZubiri
No, you are not the only professional among the amateurs/hobbyists.
I know that sounds offensive, but let's be real, nothing wrong with using AI to code or using a gui to learn about the underlying protocol. But it is what it is
bdcravens
I've run the open source version of Insomnia (https://github.com/ArchGPT/insomnium) for a while, but as that project is no longer actively maintained, I may give this a look.
captn3m0
The Insomnia creator has also started https://Yaak.app, which uses Tauri instead of electron iirc.
tills13
Wait so he sold his product and they didn't put a NCC on him?
benatkin
He sold it some time ago. Either it expired, he negotiated out of it, or there was never much of one to begin with. My guess it was a little of all three. I think a lot of what Kong wanted with it already happened - it seems to have helped them grow. They still have it and it's still helping but I don't think Yaak is that big of a threat to it. Kong still has a major API client in a space that has room for more than one.
bezbac
There is also https://httpie.io
kyriakos
I've been using it for a while. Coming from postman it's exactly what I was looking for. Just the features I need, no bloat.
kbutler
Also Bruno https://github.com/usebruno/bruno
I believe both Bruno and Hoppscotch are "open core" with expensive paid plans for additional/enterprise functionality, and they limit community-contributed functionality in the open source versions to avoid competing with the commercial versions.
saikatsg
How's Paw for macOS? https://paw.cloud/
dewey
The app is called “RapidAPI” after it got bought, now apparently the team got bought by Nokia so would not buy into it too much at this point. It used to be a nice native app.
butonic
What is https://httpyac.github.io/ missing in comparison to postman, insomnia or hopscotch? I really like being able to run .http files as unit tests in ci as well as during debugging.
Without sounding like every other developer who hates on electron, I would really appreciate an http client with a Gui that was lighter, like iced or slint.
I appreciate the versatility of electron and it giving us beautiful and usable apps but I have 16 GB of ram, I can't upgrade it and I genuinely have multi second hangs after I have 3 instances of VSCode, Firefox and Chrome open along with Bruno.