mCaptcha Guard

Back-end component of mCaptcha

[![Documentation](https://img.shields.io/badge/docs-master-blue)](https://mcaptcha.github.io/guard/guard/) ![CI (Linux)]() [![dependency status](https://deps.rs/repo/github/mCaptcha/guard/status.svg)](https://deps.rs/repo/github/mCaptcha/guard) [![codecov](https://codecov.io/gh/mCaptcha/guard/branch/master/graph/badge.svg)](https://codecov.io/gh/mCaptcha/guard)
[![AGPL License](https://img.shields.io/badge/license-AGPL-blue.svg)](http://www.gnu.org/licenses/agpl-3.0)
Guard is the back-end component of [mCaptcha](https://mcaptcha.org) system. **STATUS: UNUSABLE BUT ACTIVE DEVELOPMENT** ### Development: See [DEVELOPMENT.md](./DEVELOPMENT.md) ### How to build - Install Cargo using [rustup](https://rustup.rs/) with: ``` $ curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh ``` - Clone the repository with: ``` $ git clone https://github.com/mCaptcha/guard ``` - Build with Cargo: ``` $ cd guard && cargo build ``` ### Configuration: Guard is highly configurable. Configuration is applied/merged in the following order: 1. `config/default.toml` 2. environment variables. #### Setup ##### Environment variables: Setting environment variables are optional. The configuration files have all the necessary parameters listed. By setting environment variables, you will be overriding the values set in the configuration files. ###### Database: | Name | Value | | ------------------------- | -------------------------------------- | | `GUARD_DATEBASE_PASSWORD` | Postgres password | | `GUARD_DATEBASE_NAME` | Postgres database name | | `GUARD_DATEBASE_PORT` | Postgres port | | `GUARD_DATEBASE_HOSTNAME` | Postgres hostmane | | `GUARD_DATEBASE_USERNAME` | Postgres username | | `GUARD_DATEBASE_POOL` | Postgres database connection pool size | ###### Server: | Name | Value | | ----------------------------------- | --------------------------------------------------- | | `GUARD_SERVER_PORT` (or) `PORT`\*\* | The port on which you want wagon to listen to | | `GUARD_SERVER_IP` | The IP address on which you want wagon to listen to | | `GUARD_SERVER_STATIC_FILES_DIR` | Path to directory containing static files |