Hacker News new | comments | ask | show | jobs | submit login
Hosting for Webhooks and Transform Streams (hook.io)
73 points by _Marak_ on Oct 30, 2014 | hide | past | web | favorite | 33 comments

Like most websites of such projects, its missing the "What is X" that explains what problem your "product X" solves. (yes you are selling your product)

And gives context such as being a supplement to Y and an alternative to Z. After reading every page, i still have no idea what it does, what its for and how i can learn more about Y and Z so i can understand why i need X.

This is a great point. Most tools and services fail at ELI5 which is a missed opportunity for them (since they’re alienating potential users/customers).

100% agree. I have no clue what this does or why I would need it, and furthermore I feel like I would have to do a fair bit of research before the website makes sense.

It clicked for me when I saw the example curl request;

    `curl --data 'foo=bar&hello=there' http://hook.io/Marak/echo`
But yeah, up till then I felt a bit uncomfortable that the assumption was made that I already knew what it was all about.

Gotta say I really like it, maybe put the example curl request much nearer the top in a big font size?

Thanks for the feedback!

I took the curl example added it to the homepage right under the tagline.

Thinking of a Hook as a standard Unix Pipe really helps solidifying the entire concept.

Honestly, I still have no clue what it does, even with the curl example.

It's an alternative to creating a repo for your 50-line app and pushing it up to Heroku, basically.

I... never would have guessed that. Still can't wrap my mind around it.

This is interesting. What are you using to sandbox the user-defined Node.js code?

Isn't this the same site from three years ago? Back then, it "aimed to take on Erlang".


... and tried to fork Node's EventEmitter into "EventEmitter2":


This time it's "HTTP Microservices", eh? Maybe next time it'll be even more incredibly powerful and surprisingly simple.

That's an entirely different project from Nodejitsu. I don't know if it's still active.

The hook.io domain actually expired and went to public auction recently and I was able to purchase it.

Um... If it was an "entirely different" project from Nodejitsu, then why was it your project four years ago:


Give him a break, this is how projects - and especially personal projects - develop. You find a cool idea you want to explore on, the end product might be something totally different then what you started with.

Yes, but you don't typically replace the same domain with two totally different services. You create 2 new domains. I would never pay someone for a service when they've repeatedly shown that they're willing to throw out the system people have started depending on and replace it with something radically different. Not only can I not trust the stuff to stay around, I can't trust the developer to have enough of an attention span to care about the old stuff enough to even just leave it alone to keep working in maintenance mode.

"This application will be able to read and write your public and secret gists." Probably a good idea to create a separate GitHub account due to the "secret gists" permission.

We don't need access to private gists and are not enumerating the Gist API in anyway.

The only code that gets shared with the site is when a new gist is created. Never previous gists.

I'll investigate the Github API scope settings immediately and see if I can make the access level only public gist.

Thanks for the head-up.

Thanks for the response! Keep up the great work.

Maybe I'm missing it, but I can not find any documentation on what languages are supported. Then I figured it used the gist language declaration to support all(?) languages. But for python, it says print is not defined. So that's not it. I'm kind of at a loss for what's supposed to be going on.

Based on the examples and the reference to NPM, I'd guess that it is node.js only.

I'm assuming this is possible, but its not obvious on the site:

Can I use this to transform Web Hook data from one service into a format that another service expects?


Service A WebHook -> hook.io -> Service B Rest Request

Edit: Would definitely need SSL support for the above use case.

Yes. You can transform data from one service to another. Inside the transform stream you can perform arbitrary data manipulation.

Try taking a look at the transform or merge examples



I've thought about implementing something like this to convert a hook-based API into a streaming one. The use case being that there are things I want to build that don't need a public address. So, very nice!

I wrote a PHP framework made of your choice of community gists. Basically, it's composer for gists.


Got a real use case for this?

Re: that green pipe next to the logo ( http://hook.io/img/pipe.gif ), isn't that from Mario/Flappy bird?

Interesting take on this. I like webscript.io but prefer JavaScript to Lua. Also, great domain.

You should check out our tools. We can help a lot with the storage/display of http requests.

What is a "big" company which links to this in your footer: http://big.vc/?

Presumably you could pipe output through multiple hooks and chain actions up, making them composable?

100% yes. Composability is one of the greatest strengths of microservices.

Here is a live example of merging multiple hooks: http://hook.io/Marak/merge

and of using piping hooks together: http://hook.io/Marak/pipe


Any plans to add HTTPS support?

Yes. Someone just opened up the first support issue which is a request for HTTPS. https://github.com/bigcompany/hook.io/issues/1

Adding HTTPS is now a top priority.

Cool! I love how it applies the concept of reusable software.

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact