[workspace] resolver = "3" members = [ "." ] [workspace.package] description = "A federated marketplace platform" documentation = "https://books.kanjala.com/sellershut" homepage = "https://git.kanjala.com/sellershut" license = "AGPL-3.0-only" [workspace.dependencies] anyhow = "1.0.100" async-trait = "0.1.89" bon = "3.8.2" oauth2 = "5.0.0" rand = "0.9.2" secrecy = "0.10.3" serde = "1.0.228" thiserror = "2.0.18" tracing = "0.1.44" url = "2.5.8" uuid = "1.20.0" [package] name = "sellershut" version = "0.1.0" edition = "2024" description.workspace = true documentation.workspace = true homepage.workspace = true license.workspace = true [dependencies] activitypub_federation = { version = "0.7.0-beta.8", default-features = false, features = ["axum"] } anyhow.workspace = true async-trait.workspace = true axum = { version = "0.8.8", features = ["macros"] } bon.workspace = true clap = { version = "4.5.56", features = ["derive", "env"] } oauth2.workspace = true secrecy = { workspace = true, features = ["serde"] } serde = { workspace = true, features = ["derive"] } tokio = { version = "1.49.0", features = ["rt-multi-thread", "macros", "signal"] } toml = "0.9.11" tower = "0.5.3" tower-http = { version = "0.6.8", features = ["cors", "request-id", "timeout", "trace"] } tracing.workspace = true tracing-subscriber = { version = "0.3.22", features = ["env-filter"] } url = { workspace = true, features = ["serde"] } utoipa = "5.4.0" utoipa-axum = "0.2.0" utoipa-rapidoc = { version = "6.0.0", optional = true } utoipa-redoc = { version = "6.0.0", optional = true } utoipa-scalar = { version = "0.3.0", optional = true } utoipa-swagger-ui = { version = "9.0.2", optional = true } uuid = { workspace = true, features = ["v7"] } [dependencies.sqlx] version = "0.8.6" default-features = false features = ["postgres", "runtime-tokio-rustls"] [features] default = ["oauth-discord"] oauth = [] oauth-discord = ["oauth"] rapidoc = ["dep:utoipa-rapidoc", "utoipa-rapidoc/axum"] redoc = ["dep:utoipa-redoc", "utoipa-redoc/axum"] scalar = ["dep:utoipa-scalar", "utoipa-scalar/axum"] swagger = ["dep:utoipa-swagger-ui", "utoipa-swagger-ui/axum"] [profile.dev.package.sqlx-macros] opt-level = 3 [dev-dependencies] rand.workspace = true