Bolt :nut_and_bolt:

Bolt is a simple and fast http proxy living in the Erlang VM. Bolt can be used as a SSL proxy to prevent mixed content warnings on secure pages or to bypass CORS. For example as a SSL image proxy or html proxy for client side website scraping.


  1. Install dependencies with mix deps.get
  2. Start Phoenix endpoint with mix phoenix.server




Pipe your requests through<url>


If you need to use your own certificate:

To launch your application with support for SSL, just place your keyfile and certfile in the priv directory and configure your router with the following options

# bolt/config/prod.exs
use Mix.Config

config :phoenix, Bolt.Endpoint,
  https: [port: 443,
          host: "",
          keyfile: System.get_env("SOME_APP_SSL_KEY_PATH"),
          certfile: System.get_env("SOME_APP_SSL_CERT_PATH")],

When you include the otp_app option, Plug will search within the priv directory of your application. If you use relative paths for keyfile and certfile and do not include the otp_app option, Plug will throw an error.

You can leave out the otp_app option if you provide absolute paths to the files.


Path.expand("../../../some/path/to/ssl/key.pem", __DIR__)



Simple and fast http proxy living in the Erlang VM

Bolt Info

⭐ Stars 33
🔗 Source Code
🕒 Last Update 8 months ago
🕒 Created 7 years ago
🐞 Open Issues 1
➗ Star-Issue Ratio 33
😎 Author SebastianSzturo