[package]
edition = "2024"
name = "finitomata"
version = "0.1.1"
authors = ["Aleksei Matiushkin"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Finite state machines with rich lifecycle callbacks, persistence, and supervision"
homepage = "https://github.com/am-kantox/finitomata.rs"
documentation = "https://docs.rs/finitomata"
readme = "README.md"
keywords = [
"fsm",
"state-machine",
"finite-state-machine",
"actor",
"async",
]
categories = [
"asynchronous",
"concurrency",
"rust-patterns",
"data-structures",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/am-kantox/finitomata.rs"
resolver = "2"
[lib]
name = "finitomata"
path = "src/lib.rs"
[[example]]
name = "order_workflow"
path = "examples/order_workflow.rs"
[[example]]
name = "persistent_fsm"
path = "examples/persistent_fsm.rs"
[[example]]
name = "supervised_fsm"
path = "examples/supervised_fsm.rs"
[[example]]
name = "turnstile"
path = "examples/turnstile.rs"
[[test]]
name = "integration_test"
path = "tests/integration_test.rs"
[dependencies.async-trait]
version = "0.1"
[dependencies.dashmap]
version = "6"
[dependencies.finitomata_macro]
version = "0.1.0"
[dependencies.joerl]
version = "0.7.1"
[dependencies.serde]
version = "1"
features = ["derive"]
[dependencies.thiserror]
version = "2"
[dependencies.tokio]
version = "1.48"
features = ["full"]
[dependencies.tracing]
version = "0.1"
[dev-dependencies.tokio]
version = "1.48"
features = [
"full",
"test-util",
]