[package]
edition = "2024"
name = "nami"
version = "0.10.1"
authors = ["Lexo Liu <me@lexo.cool>"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "A powerful, lightweight reactive framework."
homepage = "https://github.com/water-rs/nami"
documentation = "https://docs.rs/nami"
readme = "README.md"
keywords = [
"reactive",
"binding",
"observer",
"state",
]
categories = [
"gui",
"data-structures",
"embedded",
"wasm",
"rust-patterns",
]
license = "MIT"
repository = "https://github.com/water-rs/nami"
resolver = "2"
[badges.license]
file = "LICENSE"
[badges.maintenance]
status = "actively-developed"
[features]
default = [
"derive",
"timer",
]
derive = ["dep:nami-derive"]
std = [
"executor-core/std",
"nami-core/std",
]
timer = [
"std",
"dep:async-io",
"dep:gloo-timers",
]
[lib]
name = "nami"
path = "src/lib.rs"
[[example]]
name = "example"
path = "examples/example.rs"
[[example]]
name = "signal_ext_bool"
path = "examples/signal_ext_bool.rs"
[[example]]
name = "signal_ext_comparison"
path = "examples/signal_ext_comparison.rs"
[[example]]
name = "signal_ext_numeric"
path = "examples/signal_ext_numeric.rs"
[[example]]
name = "signal_ext_option"
path = "examples/signal_ext_option.rs"
[[example]]
name = "signal_ext_result"
path = "examples/signal_ext_result.rs"
[[example]]
name = "signal_ext_string"
path = "examples/signal_ext_string.rs"
[[test]]
name = "s_macro_test"
path = "tests/s_macro_test.rs"
[dependencies.async-channel]
version = "2.5.0"
default-features = false
[dependencies.executor-core]
version = "0.6.0"
default-features = false
[dependencies.futures-core]
version = "0.3.31"
[dependencies.log]
version = "0.4.28"
default-features = true
[dependencies.nami-core]
version = "0.3.2"
default-features = false
[dependencies.nami-derive]
version = "0.2.3"
optional = true
[dependencies.num-traits]
version = "0.2.19"
default-features = false
[dependencies.pin-project-lite]
version = "0.2.16"
[dev-dependencies.nami-derive]
version = "0.2.3"
[target.'cfg(not(target_arch = "wasm32"))'.dependencies.async-io]
version = "2.6.0"
optional = true
[target.'cfg(target_arch = "wasm32")'.dependencies.gloo-timers]
version = "0.3"
features = ["futures"]
optional = true
[lints.clippy]
all = "warn"
cargo = "warn"
complexity = "warn"
correctness = "warn"
nursery = "warn"
pedantic = "warn"
perf = "warn"
style = "warn"
suspicious = "warn"
[lints.clippy.multiple_crate_versions]
level = "allow"
priority = 1
[lints.rust]
missing_debug_implementations = "warn"
missing_docs = "warn"