Monday, June 25, 2018

Hookah: A Swiss Army knife for data pipelines

Hookah lets you pipe data between different stream types.

Check it out on Github: https://github.com/wybiral/hookah

Some CLI examples:
Pipe from stdin to a new TCP server on port 8080:
hookah -o tcp-server://localhost:8080
Pipe from an existing TCP server on port 8080 to a new HTTP server on port 8081:
hookah -i tcp://localhost:8080 -o http-server://localhost:8081
Pipe from a new Unix domain socket listener to stdout:
hookah -i unix-server://path/to/sock
Pipe from a new HTTP server on port 8080 to an existing Unix domain socket:
hookah -i http-server://localhost:8080 -o unix://path/to/sock

Sunday, June 24, 2018

Encrypted reverse proxy in Go

This was part of an interview technical challenge but I decided to write it out as an actual Golang tool. It has a program for starting the reverse proxy from command line as well as package interfaces for using the proxy handler and implementing the target server encryption.

Github repo: https://github.com/wybiral/reverseproxy
Godoc page: https://godoc.org/github.com/wybiral/reverseproxy