[package] name = "rhombus" version = "0.2.21" edition = "2021" description = "Next generation extendable CTF framework with batteries included" authors = ["Mark Bundschuh "] license = "MPL-2.0" repository = "https://github.com/rhombusgg/rhombus" homepage = "https://rhombus.gg" keywords = ["web", "ctf", "http"] [dependencies] argon2 = { version = "0.5.3", features = ["std"] } async-hash = "0.5.4" async-imap = { version = "0.10.1", default-features = false, features = [ "runtime-tokio", ] } async-trait = "0.1.82" axum = { version = "0.7.5", features = ["multipart"] } axum-extra = { version = "0.9.3", features = ["cookie"] } chrono = { version = "0.4.38", features = ["serde"] } config = "0.14.0" dashmap = { version = "6.1.0", features = ["inline"] } dotenvy = "0.15.7" fancy-regex = "0.13.0" fluent = "0.16.1" healthscript = "1.0.3" Inflector = "0.11.4" intl-memoizer = "0.5.2" jsonwebtoken = "9.3.0" lazy_static = "1.5.0" lettre = { version = "0.11.8", default-features = false, features = [ "tokio1-rustls-tls", "smtp-transport", "builder", "pool", ] } mail-parser = "0.9.4" markdown = "1.0.0-alpha.20" mime_guess = "2.0.5" minify-html-onepass = "0.15.0" minijinja = { version = "2.2.0", features = ["json", "loader"] } petname = "2.0.2" pin-project-lite = "0.2.14" poise = "0.6.1" rand = "0.8.5" reqwest = { version = "0.12.7", default-features = false, features = [ "rustls-tls", "json", ] } resvg = "0.43.0" ring = "0.17.8" rust-embed = "8.5.0" rust-s3 = { version = "0.35.1", default-features = false, features = [ "tokio-rustls-tls", ] } serde = { version = "1.0.210", features = ["derive"] } serde_json = "1.0.128" serenity = { version = "0.12.2", features = ["chrono"] } thiserror = "1.0.63" time = "0.3.36" tokio = { version = "1.40.0", features = ["full"] } tokio-rustls = { version = "0.26.0", default-features = false, features = [ "ring", "logging", "tls12", ] } tokio-util = { version = "0.7.12", features = ["io"] } tower = { version = "0.5.1", features = ["util", "make"] } tower_governor = "0.4.2" tower-http = { version = "0.5.2", features = ["compression-full", "fs"] } tower-livereload = "0.9.3" tracing = "0.1.40" unic-langid = { version = "0.9.5", features = ["unic-langid-macros"] } unicode-segmentation = "1.11.0" urlencoding = "2.1.3" webpki-roots = "0.26.5" futures = { version = "0.3.30", optional = true } libsql = { version = "0.5.0", optional = true } listenfd = { version = "1.0.1", optional = true } sqlx = { version = "0.8.2", optional = true, features = [ "tls-rustls", "runtime-tokio", "chrono", "macros", ] } [build-dependencies] rustc_version = "0.4.1" [dev-dependencies] testcontainers = "0.22.0" testcontainers-modules = { version = "0.10.0", features = ["postgres"] } [features] default = ["libsql"] postgres = ["dep:sqlx", "sqlx/postgres"] mysql = ["dep:sqlx", "sqlx/mysql"] libsql = ["dep:libsql", "dep:futures"] systemfd = ["dep:listenfd"] shuttle = [] testcontainers = [] internal = [] all = [ "postgres", "mysql", "libsql", "systemfd", "shuttle", "testcontainers", "internal", ] [lints.rust] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(CHANNEL_NIGHTLY)'] }