anubis/docs
Xe Iaso d3e509517c
cmd/anubis: configurable difficulty per-bot rule (#53)
Closes #30

Introduces the "challenge" field in bot rule definitions:

```json
{
  "name": "generic-bot-catchall",
  "user_agent_regex": "(?i:bot|crawler)",
  "action": "CHALLENGE",
  "challenge": {
    "difficulty": 16,
    "report_as": 4,
    "algorithm": "slow"
  }
}
```

This makes Anubis return a challenge page for every user agent with
"bot" or "crawler" in it (case-insensitively) with difficulty 16 using
the old "slow" algorithm but reporting in the client as difficulty 4.

This is useful when you want to make certain clients in particular
suffer.

Additional validation and testing logic has been added to make sure
that users do not define "impossible" challenge settings.

If no algorithm is specified, Anubis defaults to the "fast" algorithm.

Signed-off-by: Xe Iaso <me@xeiaso.net>
2025-03-21 13:48:00 -04:00
..
blog add docs site based on docusarus (#35) 2025-03-20 15:06:58 -04:00
docs cmd/anubis: configurable difficulty per-bot rule (#53) 2025-03-21 13:48:00 -04:00
manifest docs/manifest: always pull 2025-03-20 15:50:08 -04:00
src docs: add placeholder warning to landing page 2025-03-20 15:10:37 -04:00
static Fix: Removed several visible AI artifacts (e.g., 6 fingers) (#37) 2025-03-20 16:09:49 -04:00
.dockerignore add docs site based on docusarus (#35) 2025-03-20 15:06:58 -04:00
.gitignore add docs site based on docusarus (#35) 2025-03-20 15:06:58 -04:00
Dockerfile Explicitely define image sources in Dockerfile (#21) 2025-03-20 17:28:30 -04:00
docusaurus.config.ts docs: add funding page 2025-03-20 15:36:34 -04:00
package-lock.json add docs site based on docusarus (#35) 2025-03-20 15:06:58 -04:00
package.json add docs site based on docusarus (#35) 2025-03-20 15:06:58 -04:00
README.md add docs site based on docusarus (#35) 2025-03-20 15:06:58 -04:00
sidebars.ts add docs site based on docusarus (#35) 2025-03-20 15:06:58 -04:00
tsconfig.json add docs site based on docusarus (#35) 2025-03-20 15:06:58 -04:00

Website

This website is built using Docusaurus, a modern static website generator.

Installation

$ yarn

Local Development

$ yarn start

This command starts a local development server and opens up a browser window. Most changes are reflected live without having to restart the server.

Build

$ yarn build

This command generates static content into the build directory and can be served using any static contents hosting service.

Deployment

Using SSH:

$ USE_SSH=true yarn deploy

Not using SSH:

$ GIT_USER=<Your GitHub username> yarn deploy

If you are using GitHub pages for hosting, this command is a convenient way to build the website and push to the gh-pages branch.