[package]
edition = "2024"
name = "rust-elm"
version = "0.1.0"
authors = ["Codefonsi <info@codefonsi.com>"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Elm Architecture for Rust: composable reducers, pure effects, async runtime."
readme = "README.0.1.0.md"
keywords = [
"elm",
"udf",
"reducer",
"effect",
"architecture",
]
license = "MPL-2.0"
repository = "https://github.com/codefonsi/rust-key-paths"
[features]
default = ["runtime"]
runtime = []
serde = [
"dep:serde",
"dep:serde_json",
"rust_identified_vec/serde",
]
[lib]
name = "rust_elm"
path = "src/lib.rs"
[[example]]
name = "catch_reduce"
path = "examples/catch_reduce.rs"
[[example]]
name = "ecommerce"
path = "examples/ecommerce.rs"
[[test]]
name = "dependencies_integration"
path = "tests/dependencies_integration.rs"
[[test]]
name = "effect_integration"
path = "tests/effect_integration.rs"
[[test]]
name = "identified_scope_integration"
path = "tests/identified_scope_integration.rs"
[[test]]
name = "integration_basic"
path = "tests/integration_basic.rs"
[[test]]
name = "optics_smoke"
path = "tests/optics_smoke.rs"
[[test]]
name = "reducer_integration"
path = "tests/reducer_integration.rs"
[[test]]
name = "shared_integration"
path = "tests/shared_integration.rs"
[[test]]
name = "store_integration"
path = "tests/store_integration.rs"
[[test]]
name = "test_store_integration"
path = "tests/test_store_integration.rs"
[dependencies.crossbeam-channel]
version = "0.5"
[dependencies.key-paths-core]
version = "2.0.2"
[dependencies.parking_lot]
version = "0.12"
[dependencies.rust-key-paths]
version = "3.2.0"
[dependencies.rust_dependencies]
version = "0.1.1"
[dependencies.rust_identified_vec]
version = "0.1.1"
[dependencies.serde]
version = "1"
features = ["derive"]
optional = true
[dependencies.serde_json]
version = "1"
optional = true
[dependencies.tokio]
version = "1.38"
features = [
"sync",
"rt",
"rt-multi-thread",
"macros",
"time",
]
[dev-dependencies.serde_json]
version = "1"
[dev-dependencies.tokio]
version = "1.38"
features = [
"sync",
"rt",
"rt-multi-thread",
"macros",
"time",
"test-util",
]