[package] name = "tauri-specta" description = "Completely typesafe Tauri commands" version = "2.0.0-rc.20" authors = ["Oscar Beaumont "] edition = "2021" license = "MIT" include = ["/src", "/README.md", "/LICENCE"] repository = "https://github.com/oscartbeaumont/tauri-specta" documentation = "https://docs.rs/tauri-specta/latest/tauri-specta" keywords = ["async", "specta", "rspc", "typescript", "typesafe"] categories = ["web-programming", "asynchronous"] # /bin/sh RUSTDOCFLAGS="--cfg docsrs" cargo +nightly doc --all-features [package.metadata."docs.rs"] all-features = true rustc-args = ["--cfg", "docsrs"] rustdoc-args = ["--cfg", "docsrs"] [features] default = [] derive = ["dep:tauri-specta-macros"] javascript = ["dep:specta-jsdoc"] typescript = ["dep:specta-typescript"] [lints] workspace = true [dependencies] # Public specta = { workspace = true, features = ["function"] } specta-typescript = { workspace = true, optional = true } specta-jsdoc = { workspace = true, optional = true } tauri-specta-macros = { version = "=2.0.0-rc.16", optional = true, path = "./macros" } serde = "1" serde_json = "1" thiserror = "1" tauri = { workspace = true, features = ["specta"] } # Private heck = "0.5.0" [workspace] members = [ "examples/app/src-tauri", "examples/custom-plugin/app/src-tauri", "examples/custom-plugin/plugin", "macros", ] [workspace.lints.rust] unsafe_code = { level = "forbid", priority = -1 } missing_docs = { level = "warn", priority = -1 } [workspace.lints.clippy] all = { level = "warn", priority = -1 } cargo = { level = "warn", priority = -1 } unwrap_used = { level = "warn", priority = -1 } panic = { level = "warn", priority = -1 } todo = { level = "warn", priority = -1 } panic_in_result_fn = { level = "warn", priority = -1 } [workspace.dependencies] tauri = { version = "2.0.0-rc.15" } specta = { version = "=2.0.0-rc.20" } specta-typescript = { version = "0.0.7" } specta-jsdoc = { version = "0.0.7" }