code-mesh-wasm 0.1.0

WebAssembly bindings for the Code-Mesh distributed swarm intelligence system
[package]
name = "code-mesh-wasm"
version = "0.1.0"
authors = ["ruv <ruv@ruv.net>"]
edition = "2021"
license = "MIT OR Apache-2.0"
description = "WebAssembly bindings for the Code-Mesh distributed swarm intelligence system"
homepage = "https://github.com/ruvnet/code-mesh"
repository = "https://github.com/ruvnet/code-mesh"
documentation = "https://docs.rs/code-mesh-wasm"
readme = "README.md"
keywords = ["wasm", "webassembly", "javascript", "browser", "swarm"]
categories = ["wasm", "web-programming", "development-tools", "api-bindings"]

[lib]
crate-type = ["cdylib"]

[dependencies]
# Core functionality
code-mesh-core = { version = "0.1.0", path = "../code-mesh-core", default-features = false, features = ["wasm"] }

# WASM specific
wasm-bindgen = "0.2"
wasm-bindgen-futures = "0.4"
js-sys = "0.3"
web-sys = { version = "0.3", features = [
    "console",
    "Window",
    "Document",
    "Request",
    "RequestInit",
    "RequestMode",
    "Response",
    "Headers",
    "AbortController",
    "AbortSignal",
    "Storage",
    "Location",
    "History",
    "Navigator",
    "Clipboard",
    "ClipboardEvent",
    "File",
    "FileReader",
    "Blob",
    "BlobPropertyBag",
    "Worker",
    "ServiceWorker",
    "ServiceWorkerContainer",
    "MessageEvent",
    "EventTarget",
    "Event",
    "CustomEvent",
    "ProgressEvent",
    "ErrorEvent",
    "Performance",
    "PerformanceEntry",
    "PerformanceMark",
    "PerformanceMeasure",
    "Url",
    "UrlSearchParams",
    "Element",
    "HtmlElement",
    "HtmlInputElement",
    "HtmlTextAreaElement",
    "HtmlSelectElement",
    "DomRect",
    "DomTokenList",
    "CssStyleDeclaration",
    "FormData",
    "TextEncoder",
    "TextDecoder",
    "ReadableStream",
    "WritableStream",
    "TransformStream",
] }

# Utilities
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
serde-wasm-bindgen = "0.6"
console_error_panic_hook = { version = "0.1", optional = true }
wasm-logger = "0.2"
wee_alloc = { version = "0.4", optional = true }
futures = "0.3"
tokio = { version = "1.0", features = ["macros", "rt"], default-features = false }
base64 = "0.22"
uuid = { version = "1.0", features = ["v4"] }
getrandom = { version = "0.2", features = ["js"] }
thiserror = "1.0"

[dev-dependencies]
wasm-bindgen-test = "0.3"
proptest = "1.0"
mockall = "0.12"
tempfile = "3.0"
insta = "1.0"

[package.metadata.wasm-pack]
"wasm-pack" = "0.12"

[features]
default = ["console_error_panic_hook"]
browser = ["web-sys/Storage"]
node = []
performance = ["wee_alloc"]
webworker = ["web-sys/Worker", "web-sys/ServiceWorker"]
offline = ["web-sys/ServiceWorker", "web-sys/ServiceWorkerContainer"]