autumn-plugin-react 0.3.0

Autumn plugin: React islands in Maud + htmx pages.
Documentation
[package]
name = "autumn-plugin-react"
version = "0.3.0"
edition = "2024"
rust-version = "1.97"
description = "Autumn plugin: React islands in Maud + htmx pages."
license = "Apache-2.0"
repository = "https://github.com/autumn-foundation/autumn-plugin-react"
readme = "README.md"
keywords = ["autumn", "react", "islands", "htmx", "plugin"]
categories = ["web-programming"]
exclude = [
    # The demo and its bundle (React, MIT) are not in the published crate.
    "examples/",
    ".github/",
    "docs/",
    "frontend/",
    "js-tests/",
    "package.json",
    "package-lock.json",
    "CLAUDE.md",
    "clippy.toml",
]

[dependencies]
# No default features: the host app selects the Autumn features.
autumn-web = { version = "0.10", default-features = false, features = ["maud"] }
# `html!` expands to `maud::` paths, so this crate needs `maud` by name.
maud = "0.27"
serde = "1"
serde_json = "1"
thiserror = "2"

[dev-dependencies]
serde_json = { version = "1", features = ["raw_value"] }
autumn-web = { version = "0.10", default-features = false, features = ["maud", "htmx"] }
base64 = "0.22"
proptest = "1"
serde = { version = "1", features = ["derive"] }
sha2 = "0.10"
tokio = { version = "1", features = ["macros", "rt-multi-thread"] }

[lints.rust]
unsafe_code = "forbid"
missing_docs = "warn"

[lints.clippy]
pedantic = { level = "warn", priority = -1 }
nursery = { level = "warn", priority = -1 }
unwrap_used = "deny"
expect_used = "deny"
panic = "deny"
todo = "deny"
unimplemented = "deny"
module_name_repetitions = "allow"
redundant_pub_crate = "allow"

[[example]]
name = "react_demo"
# `cargo test` also runs the smoke tests in the example.
test = true