[package] name = "sycamore" categories = ["gui", "wasm", "web-programming"] description = "A library for building reactive web apps in Rust and WebAssembly" edition = "2021" homepage = "https://github.com/sycamore-rs/sycamore" keywords = ["wasm", "gui", "reactive"] license = "MIT" readme = "../../README.md" repository = "https://github.com/sycamore-rs/sycamore" version.workspace = true [dependencies] futures = { version = "0.3.25", optional = true } hashbrown = "0.14.1" indexmap = { version = "2.0.2", features = ["std"] } paste = "1.0.9" sycamore-core = { workspace = true } sycamore-futures = { workspace = true, optional = true } sycamore-macro = { workspace = true } sycamore-reactive = { workspace = true } sycamore-web = { workspace = true, optional = true } wasm-bindgen = { version = "0.2.83", optional = true } wasm-bindgen-futures = { version = "0.4.33", optional = true } web-sys = { version = "0.3.60", optional = true } [dev-dependencies] expect-test = "1.4.0" tokio = { version = "1.22.0", features = ["macros", "rt"] } wasm-bindgen-test = "0.3.33" web-sys = { version = "0.3.60", features = ["HtmlInputElement"] } [features] default = ["web", "wasm-bindgen-interning"] nightly = ["sycamore-reactive/nightly"] hydrate = ["web", "sycamore-web/hydrate"] suspense = [ "futures", "wasm-bindgen-futures", "sycamore-futures", "sycamore-core/suspense", "sycamore-web/suspense", ] serde = ["sycamore-reactive/serde"] wasm-bindgen-interning = [ "web", "dep:wasm-bindgen", "wasm-bindgen/enable-interning", ] web = ["dep:wasm-bindgen", "dep:web-sys", "dep:sycamore-web"] [[test]] name = "web" required-features = ["hydrate"] [package.metadata.docs.rs] all-features = true default-target = "wasm32-unknown-unknown"