I used a similar alternative to ngrok a few years ago - frp(https://github.com/fatedier/frp).
What are the advantages compared of piko and frp?
Piko is also designed to be easier to host, so can be hosted behind a HTTP load balancer. That does mean Piko is currently limited to HTTP only, but that seemed a worthwhile tradeoff to make it easier to host