So, hereβs how Hoppscotch happened.
You know the drill. Youβre developing an app for a client and you need to test every APIs and every APIs response in every method, on every requests.
Our team was already using Postman to test all the variations of an API, but my 7 year old PC couldn't afford to run another Electron app just to see the request responses in all of them. And thatβs how it all started.
How about making a tool where you can test your APIs from your browser itself without switching between apps as you work? That would be neat, huh!
hoppscotch
/
hoppscotch
Open source API development ecosystem - https://hoppscotch.io (open-source alternative to Postman, Insomnia)
How it all began
The initial tweet about the idea got 250+ likes and 60+ retweets so people were definitely interested in this kind of tool.
I literally launched Hoppscotch on a dev.to article and wrote about it on Hacker News, HackerNoon, Medium, HashNode, Reddit, Twitter etc.
I saw a guy writing JavaScript today.
No frameworks.
No libraries.
No problems.
He just did it.
Writing JavaScript.
Like a Psychopath.
It was me π
I had some problems with CORS in deployment, but I found a quick workaround. I used Vue.js and apparently migrated to Nuxt.js.
At that point I started thinking that the tool can actually be published as a standalone web app, and the WebSocket testing feature can just be an addition. So I shifted my goal and starting working towards that.
I added few themes, polished up the UI a bit, struggled for 30 mins to come up with a name and..... drumroll Hoppscotch it is. I setup a GitHub repo for people who were interested to contribute.
After I open sourced the code, polished up the UI, and finished bunch of other smaller things, hoppscotch.io was live π
I actually wrapped up work at 4:30 AM because I just couldnβt go to sleep without finishing that one thing π
Features
- π Open Source
- π₯ Runs online
- π Multi-platform & multi-device support
- π± Progressive Web App
- π WebSocket testing
- π‘ Server Sent Events testing
- π© Socket.IO testing
- π¦ MQTT testing
- π« GraphQL testing
- π Customizations
- β° History
- π Collections
- π Proxy
- π Pre-Request Scripts & environment variables Ξ²
- π³ Docker
- β³ Keyboard Shortcuts
- β Post-Request Tests Ξ²
- Full features
After the launch, analytics were going crazy! Got 17,700+ stars on GitHub, made it to GitHub Trending couple of times, became #2 product of the day on Product Hunt, got featured in Indie Hackers, Hacker news, Hacker noon, BetaList, YouTube & open source dev podcast etc.
Apart from the project development, there were other goodies happened since initial release:
- Got first financial backer π₯ on Open Collective
- Released badges Ξ²
- Hoppscotch's icon got featured in simpleicons.org
- Created Telegram public community
- Started Discord server
- Caneco made new banner
I was solving my own problem with the hope that I'll also gonna solve other peopleβs problems. The most important thing about is that in the end, you get a lot of amazing and positive feedback, which is basically the only thing that drives you to do better and more awesome work! π
If you think Hoppscotch is worthy of existing as a free, fast alternative to Postman, please consider giving us a confidence boost! Star the repo on GitHub, Tweet, share among your friends, teams and contacts!
Support
I want to thank everyone for your feedback and support. You can follow me on Twitter if youβre interested in future updates.
I created Hoppscotch π½ - Open source API development ecosystem
Liyas Thomas γ» Aug 22 '19
If you want a heads up on my next projects, or just want to chat about the web, make sure to follow me @liyasthomas π. If any of my projects helped you please consider Buying me a coffee or making a donation on PayPal.

Latest comments (46)
This looks interesting. Is the best way to develop with localhost to use Ngrok? Or is there something that I am missing?
localhost endpoints can be tested by installing a middleware browser extension. Links are in repo's readme.
Okay thanks
Well said! π₯π
Curious - do you have any concerns around storing potentially sensitive information in local storage? My understanding is that any app can view what is in local storage.
Postwoman is a 100% client side application. PW just works even if you download the entire web page to system and opened from there, there's no client-server data transfer ever happening, except on Proxy mode, which is optional.
We uses
localStoragefor storing the History entries and the current state of request section. We stay compliant on Same origin policy throughout our implementation. Moreover, there's always an option to Clear/Disallow cookies.When I first started working PW, I never wanted to have a Sign-up flow because it somehow seemed to decrease my testing flow. But as the project gained such traction & grew tremendously, having a Sign-in with GitHub/Google and storing data on a GitHub repo is pipelined for future with prime priority.
i have been following postwomen since the DEV post. How did you fix it ?
We implemented Proxy mode. For requests having CORS issues, go to Settings > Turn on Proxy
That's it. But you don't want to do this at first. We'll prompt you to enable proxy only if the requests requires it. π½β¨
Is there a suppor for environments? That would be awesome! :)
Pre-request scripts and Environment variables are deployed to production but experimental!
Full list of feature are here: github.com/liyasthomas/postwoman
Usage:
Open Pre-request scripts by clicking the "<>" icon button under request
MethodSet env variables with JavaScript notation:
pw.environment.set("key", "value");inside pre-request script textarea.<<key>>(including double angle brackets) anywhere inside request section as an env varScreenshots:
Other use cases are:
Full information can be found here: github.com/liyasthomas/postwoman/p...
cool. thanks for your work!
I'm thinking of something like environment in postman where you can easily change variables without modifying the request.
Actually this is cooking up! and will be deployed soon.
github.com/liyasthomas/postwoman/i...
wow. will be looking forward to this feature. You're awesome! :)
Glad you liked it! Star the project on GitHub, share among your friends/teams ππ½πΈβ¨
This is a cool project! Well done! Just one thing though. It is quite difficult to take anyone serious using so many emoji's, especially a developer, especially in github commit messages. Besides my 2 cents, this seems like a fun alternative to postman
I don't think usage of emojis in commit messages limit the project's seriousness. Gitmoji (gitmoji.carloscuesta.me) is a highly appreciated project on GitHub supported by a huge community of devs π€
Insomnia is the best such tool I've used - insomnia.rest
Postwoman is an online web app. No need to install or update build, because of this, there's no other overhead to system for using a testing tool. Moreover apps such as Postman and insomnia are built with electron which consumes a considerable amount of resources of the system.
+
Postwoman have multi platform, multi device support. API testing can be done even from your smartphone now.
but why would you do it from a smartphone? the other clients are multi platform too...
Handy feature isn't it?
No POSTLGBTQ+? JK. Awesome content!
lol
Hey Liyas,
You know, it was much needed. Thanks for giving us a great app. Will be grateful and I will try to contribute to the project as well.
Thats awesome! ππΌ
Some comments may only be visible to logged-in visitors. Sign in to view all comments.