8
10 Comments

A free alternative to ngrok to receive webhooks locally with unlimited permanent URLs

I've made a few posts in the past here discussing hookdeck.com and how it helps you receive incoming webhooks in production reliably.

However, I've come to realize that we need to help much earlier in the development process. That's why I'm releasing the Hookdeck CLI. A tool to work with and receive webhooks your localhost.

The CLI is built to replace the need for Ngrok, request.bin, localhost.run and similar product when working with webhooks.

So what's the difference?

  1. Hookdeck offers free unlimited permanent URLs so you can stop the back and forth to keep updating your URLs;

  2. Your webhook history is preserved between sessions, so you keep replaying the webhooks you were working on the next day;

  3. You can bookmark webhooks to replayed and test against later;

  4. Teammates can listen to only specific webhooks instead of everything going to a given URL. This way, you no longer need to coordinate or spam each other when working.

Today I'm releasing the open beta and looking for feedback!

https://hookdeck.com/dev-workflow
https://github.com/hookdeck/hookdeck-cli

  1. 4

    Dude, this is so helpful, i have worked recently with ngrok and creating new urls every two hours is kinda pain in the a.. thank you! :)

    1. 1

      Thanks! I can tell you you aren't the only one, I've done that for years. No more :)

  2. 3

    So pricing is for own web version?

    1. 2

      The CLI and dev features are all 100% free. The pricing is for our production features if you decide to use Hookdeck in production as well. It's totally optional and you are totally welcome to just use it in development!

      It does not even require an account, just install and run hookdeck listen [port] :)

  3. 2

    Just tried it out because I wanted ngrok and thought this was better, also helping out a mate.
    quicknote: I have never used ngrok before.

    The ui was fluid and installation was breeze, was able to quickly login and setup everything in under 5 minutes or less.

    There were some issue which might not even be concerns for you but I thought I'd list them here.

    First Issue:
    I use laravel valet for development domains and before that I used hosts file to have a dev domain in my localhost. While creating the form, in destination part I was not able to set a 'something.test' domain for the forwarding data.
    The error was crypting so I took a guess and used '/' instead and it worked.
    fixes: Give better error message and maybe allow local domains configure in hosts file?

    Second Issue:
    This is just a hunch but can you check if the app works with 'DELETE' requests? The post request worked fine but the delete request took '1m 0.12s' before throwing '502 Bad Gateway'. The html said '502. That’s an error.The server encountered a temporary error and could not complete your request.Please try again in 30 seconds. That’s all we know.' but that could be just postman and not your server.

    Again, I never used ngrok before, the behaviour is same there, and maybe these issues are not even worth consideration based on your target users.

    The UI looks modern and very easy to use. Thanks again for a great product, maybe I can use mock urls and do what I need. Sorry, if this feedback is not what you expected.

    1. 1

      Hi @rishiraj, glad you checked it out & thanks for the feedback.

      First Issue

      That UI isn't really clear, Hookdeck can be used both in production and development and while working only in development you can set your destination to "CLI Only" where any path is assumed to be on your localhost. That can totally be explained better.

      Second Issue

      Hookdeck specifically aims to help with webhooks which are generally implemented as POST requests. Since we do not support synchronous workflow we do not support GET, PUT, PATCH or DELETE. In that sense, it's not a direct replacement for Ngrok we aim to help more specifically with webhooks and async workflows. That been said, I'd love to know more about your use case and we might decide to add support in the future!

      Thanks for the kind comments!

  4. 1

    This looks good! Going to try this out on my app's Paddle callbacks - this has been a pain to test.

    My web app runs inside a nginx docker image. Will I need to use the hookdeck-cli docker image fo this?

    1. 1

      @farez Let me know how it goes! When working from your computer, the best option might be to run the CLI on your machine, bind your HTTP server docker port to some port of your computer, and use it in the hookdeck list [port]. https://docs.docker.com/config/containers/container-networking/

      Something like:

      docker run IMAGE_NAME -p 3000:3000
      hookdeck listen 3000
      

      That being said, you can totally use the image or install the CLI within your container.

      Hope that helps!

      1. 1

        Amazing, thank you!

  5. 3

    This comment was deleted a year ago.

    1. 1

      @Primer perhaps because it's brand new! Hookdeck has been used in production for over a year but the development tools are new from this week. Have a blast and reach out to me if you have feedback or need help with anything :)

Trending on Indie Hackers
How I grew a side project to 100k Unique Visitors in 7 days with 0 audience 47 comments Competing with Product Hunt: a month later 33 comments Why do you hate marketing? 28 comments $15k revenues in <4 months as a solopreneur 14 comments Use Your Product 13 comments How I Launched FrontendEase 13 comments