[package]
edition = "2024"
rust-version = "1.95"
name = "bubbles-dialogue"
version = "0.2.0"
build = false
exclude = [
".github",
"scripts",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Lightweight engine-agnostic dialogue runtime for Rust games."
homepage = "https://github.com/ViezeVingertjes/bubbles"
documentation = "https://docs.rs/bubbles-dialogue"
readme = "README.md"
keywords = [
"dialogue",
"game",
"narrative",
"interactive-fiction",
]
categories = [
"game-development",
"parser-implementations",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/ViezeVingertjes/bubbles"
[features]
default = ["rand"]
full = [
"rand",
"serde",
]
rand = ["dep:rand"]
serde = [
"dep:serde",
"indexmap/serde",
]
[lib]
name = "bubbles"
path = "src/lib.rs"
[[example]]
name = "cli_runner"
path = "examples/cli_runner.rs"
[[example]]
name = "tavern"
path = "examples/tavern.rs"
[[test]]
name = "compile"
path = "tests/compile.rs"
[[test]]
name = "compiled_expr_pipeline"
path = "tests/compiled_expr_pipeline.rs"
[[test]]
name = "conditionals"
path = "tests/conditionals.rs"
[[test]]
name = "detour"
path = "tests/detour.rs"
[[test]]
name = "expr_proptest"
path = "tests/expr_proptest.rs"
[[test]]
name = "flow"
path = "tests/flow.rs"
[[test]]
name = "interpolation"
path = "tests/interpolation.rs"
[[test]]
name = "jump_cmd"
path = "tests/jump_cmd.rs"
[[test]]
name = "line_groups"
path = "tests/line_groups.rs"
[[test]]
name = "lines"
path = "tests/lines.rs"
[[test]]
name = "metadata"
path = "tests/metadata.rs"
[[test]]
name = "node_groups"
path = "tests/node_groups.rs"
[[test]]
name = "once"
path = "tests/once.rs"
[[test]]
name = "options"
path = "tests/options.rs"
[[test]]
name = "saliency"
path = "tests/saliency.rs"
[[test]]
name = "serde_roundtrip"
path = "tests/serde_roundtrip.rs"
[[test]]
name = "variables"
path = "tests/variables.rs"
[[test]]
name = "visited"
path = "tests/visited.rs"
[dependencies.indexmap]
version = "2"
[dependencies.logos]
version = "0.16"
[dependencies.rand]
version = "0.9"
optional = true
[dependencies.serde]
version = "1"
features = ["derive"]
optional = true
[dependencies.thiserror]
version = "2"
[dev-dependencies.proptest]
version = "1"
[dev-dependencies.serde_json]
version = "1"
[lints.clippy.cargo]
level = "warn"
priority = -1
[lints.clippy.nursery]
level = "warn"
priority = -1
[lints.clippy.pedantic]
level = "warn"
priority = -1
[lints.rust]
missing_docs = "deny"
rust_2018_idioms = "deny"
unsafe_code = "deny"