Skip to content

http-samc/bouncer

bouncer

Crates.io Docs.rs CI

A configurable API gateway and proxy server with dynamic policy middleware.

Overview

Bouncer is a lightweight API gateway that sits between clients and your backend services. It provides:

  • Policy-based middleware for authentication, authorization, and more
  • Database integration with PostgreSQL, Redis, and MongoDB
  • Extensible architecture with support for custom policies
  • Request proxying to backend services with token verification

For a comprehensive explanation of Bouncer's features and architecture, see docs/ABOUT.md.

Quick Start

Installation

# Install from crates.io cargo install bouncer # Or build from source git clone https://github.com/http-samc/bouncer.git cd bouncer cargo build --release

Running Bouncer

  1. Create a configuration file config.yaml:
# Required field specifying compatible Bouncer version bouncer_version: "0.1.*" server: port: 8080 bind_address: "0.0.0.0" destination_address: "http://my-backend-api.com" policies: - type: "@bouncer/auth/bearer" config: token: "my-secure-token"
  1. Set the BOUNCER_TOKEN environment variable (optional but recommended):
export BOUNCER_TOKEN="your-secure-token-here"
  1. Run Bouncer with your configuration:
bouncer --config config.yaml

Documentation

See ABOUT.md for a comprehensive explanation of Bouncer and additional resources.

License

Licensed under the MIT license (LICENSE-MIT).

Contribution

See CONTRIBUTING.md for contribution guidelines.

About

Deploy backends in minutes, not months.

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published