[package]
edition = "2021"
name = "egui_router"
version = "0.7.0"
authors = ["Lucas Meurer"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "A SPA router for egui"
homepage = "https://lucasmerlin.github.io/hello_egui/"
readme = "README.md"
keywords = [
"egui",
"router",
"single-page",
"gui",
"ui",
]
license = "MIT"
repository = "https://github.com/lucasmerlin/hello_egui/tree/main/crates/egui_router"
[features]
async = ["egui_suspense/async"]
[lib]
name = "egui_router"
path = "src/lib.rs"
[[example]]
name = "async_router"
path = "examples/async_router.rs"
required-features = ["async"]
[[example]]
name = "route_lifecycle"
path = "examples/route_lifecycle.rs"
[[example]]
name = "router"
path = "examples/router.rs"
required-features = ["async"]
[[example]]
name = "router_minimal"
path = "examples/router_minimal.rs"
[dependencies.egui]
version = "0.34.0"
default-features = false
[dependencies.egui_inbox]
version = "0.11.0"
[dependencies.egui_suspense]
version = "0.11.0"
optional = true
[dependencies.form_urlencoded]
version = "1"
[dependencies.matchit]
version = "0.9"
[dependencies.thiserror]
version = "2"
[dev-dependencies.eframe]
version = "0.34.0"
default-features = true
[dev-dependencies.egui_animation]
version = "0.11.0"
[dev-dependencies.egui_inbox]
version = "0.11.0"
features = ["type_inbox"]
[dev-dependencies.egui_suspense]
version = "0.11.0"
features = [
"async",
"tokio",
]
[dev-dependencies.tokio]
version = "1"
features = ["full"]
[target.'cfg(target_arch = "wasm32")'.dependencies.js-sys]
version = "0.3"
[target.'cfg(target_arch = "wasm32")'.dependencies.wasm-bindgen]
version = "0.2"
[target.'cfg(target_arch = "wasm32")'.dependencies.web-sys]
version = "0.3"
features = [
"History",
"PopStateEvent",
"HtmlCollection",
]
[lints.clippy.cast_possible_truncation]
level = "allow"
priority = 12
[lints.clippy.cast_precision_loss]
level = "allow"
priority = 11
[lints.clippy.cast_sign_loss]
level = "allow"
priority = 13
[lints.clippy.doc_markdown]
level = "allow"
priority = 21
[lints.clippy.enum_glob_use]
level = "deny"
priority = 2
[lints.clippy.float_cmp]
level = "allow"
priority = 14
[lints.clippy.missing_errors_doc]
level = "allow"
priority = 19
[lints.clippy.missing_fields_in_debug]
level = "allow"
priority = 20
[lints.clippy.missing_panics_doc]
level = "allow"
priority = 18
[lints.clippy.module_name_repetitions]
level = "allow"
priority = 10
[lints.clippy.must_use_candidate]
level = "allow"
priority = 16
[lints.clippy.pedantic]
level = "deny"
priority = 1
[lints.clippy.perf]
level = "warn"
priority = 3
[lints.clippy.return_self_not_must_use]
level = "allow"
priority = 17
[lints.clippy.struct_excessive_bools]
level = "allow"
priority = 15
[lints.clippy.style]
level = "warn"
priority = 4
[lints.rust]
unsafe_code = "deny"