Skip to content

Latest commit

 

History

History
55 lines (39 loc) · 1.83 KB

File metadata and controls

55 lines (39 loc) · 1.83 KB

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

For production use, generate a random secret to place in the Berghain configuration file using openssl rand -base64 32.

Running with Docker

To run the project using Docker, follow these steps:

  1. Build the Docker images:

    docker-compose build
  2. Start the services:

    docker-compose up
  3. Access the application:

Make sure to have Docker and Docker Compose installed on your system before running these commands.

Attributions

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