/berghain

A Go and HAProxy-powered bouncer, ensuring that only the coolest browsers get access to the backend party!

Primary LanguageGoApache License 2.0Apache-2.0

Berghain

🕺 Welcome to Berghain: Where Only Valid Browsers Get the Backend Party Started! 🎉

Berghain is your trusty SPOE-Agent, guarding the entrance to the backend like a seasoned bouncer. This Go and HAProxy-powered tool ensures that only the coolest and most valid browsers can access the exclusive party happening on the other side.

With Berghain in charge, you can be confident that your backend is reserved for the true VIPs of the internet, keeping out any uninvited guests. It's like the bouncer of the web world, ensuring that your resources are reserved for the browsers that really know how to dance!

Supported CAPTCHAs

  • None (Simple JS execute)
  • POW

Planned support

Example setup with HAProxy

To start berghain locally you can follow these easy steps:

For Debian / Ubuntu: apt install npm

  1. Run npm install inside web/
  2. Run npm run build inside web/
  3. Run haproxy -f examples/haproxy/haproxy.cfg
  4. Run go run ./cmd/spop/. -config cmd/spop/config.yaml

Attributions

Thanks to @NullDev and @arellak, as they did most of the frontend work.