Skip to content

rhombusgg/rhombus

Repository files navigation

Rhombus

Next generation extendable CTF framework with batteries included.

Crates.io Documentation License Build Status

See documentation for deployment, and a hosted demo.

Documentation site Demo social image

Development

The MSRV is currently 1.80.0.

Nix (recommended)

A Nix Flake is provided for development. It is recommended to be paired with direnv for automatic environment setup.

Individual dependencies

Required:

Optional (recommended):

Getting started

Run task dev to start the standalone example. This will build the project and start the server with live reloading.

Project structure

├── rhombus/             # core library
│   ├── src/             # rust source code
│   ├── templates/       # minijinja templates
│   ├── static/          # static files like css, js
│   ├── frontend/        # TypeScript source code
│   ├── migrations/      # SQL database migrations
│   ├── locales/         # translations for the UI
├── rhombus-cli/         # CLI tool to manage and play CTFs
├── rhombus-build/       # core library for build scripts
├── docs/                # hosted docs on https://rhombus.gg
└── examples/
    ├── standalone/      # minimal example
    ├── demo/            # demo running https://demo.rhombus.gg
    ├── plugin/          # example plugin library
    └── external-plugin/ # uses `plugin` as a dependency