[package]
name = "buttplug_core"
version = "11.0.0"
authors = ["Nonpolynomial Labs, LLC <kyle@nonpolynomial.com>"]
description = "Buttplug Intimate Hardware Control Library - Core Library"
license = "BSD-3-Clause"
homepage = "http://buttplug.io"
repository = "https://github.com/buttplugio/buttplug.git"
readme = "./README.md"
keywords = ["usb", "serial", "hardware", "bluetooth", "teledildonics"]
edition = "2024"
exclude = ["examples/**"]
[lib]
name = "buttplug_core"
path = "src/lib.rs"
test = true
doctest = true
doc = true
[features]
default=["tokio-runtime"]
tokio-runtime=["tokio/rt", "tokio/time"]
wasm=["wasm-bindgen-futures", "wasmtimer"]
[package.metadata.docs.rs]
targets = []
features = ["default", "unstable"]
[dev-dependencies]
tracing-subscriber = "0.3.23"
[build-dependencies]
serde = "1.0.229"
serde_json = "1.0.151"
jsonschema = { version = "0.49.1", default-features = false }
[dependencies]
futures = "0.3.33"
futures-util = "0.3.33"
serde = { version = "1.0.229", features = ["derive"] }
serde_json = "1.0.151"
serde_repr = "0.1.21"
thiserror = "2.0.19"
displaydoc = "0.2.6"
log = "0.4.33"
getset = "0.1.7"
jsonschema = { version = "0.49.1", default-features = false }
cfg-if = "1.0.4"
tokio = { version = "1.53.1", features = ["sync", "macros"] }
async-stream = "0.3.6"
strum_macros = "0.28.0"
strum = "0.28.0"
derive_builder = "0.20.2"
enum_dispatch = "0.3"
tracing = "0.1.44"
wasm-bindgen-futures = { version = "0.4.76", optional = true }
wasmtimer = { version = "0.4.3", optional = true }
smallvec = { version = "1.15.2", features = ["serde", "const_generics"] }
enumflags2 = "0.7.12"
tokio-util = "0.7.19"
dashmap = "6.2.1"