Hey HN!
localtunnel's server needs random ports per client. That doesn't work on Fly.io or behind strict firewalls.
We rewrote it in TypeScript and added multiplexing over a single port. Open-source and 100% self-hostable.
Public instance at *.pipenet.dev if you don't want to self-host.
Built at Glama for our MCP Inspector, but it's a generic tunnel with no ties to our infra.
Add it to the list https://github.com/anderspitman/awesome-tunneling
Cool website! Did you use any web framework or just plain HTML/CSS?
Just plain HTML/CSS.
I did this morning in a rush. Didn't expect anyone to compliment it. Thank you!
Would this be able to support TCP and UDP in the future?
The current implementation is HTTP-focused as that was the primary use case. TCP tunneling is possible architecturally but not something I've had in mind. I suggest start by raising an issue on GitHub and adding thumbs up. If it receives enough attention, I will prioritize it. I am less familiar with what would supporting UDP entail, so cannot answer that right now.
That list is where my research started! Was surprised not to find a pure node.js solution that's easy to self-host and has CLI/SDK.
Added https://github.com/anderspitman/awesome-tunneling/pull/214