[package] name = "voiced" version = "0.1.0" description = "Voiced — offline invoicing desktop app by Bongbetic" authors = ["Bongbetic"] edition = "2021" rust-version = "1.95" # The `_lib` suffix keeps the library name distinct from the binary name on Windows. [lib] name = "voiced_lib" crate-type = ["staticlib", "cdylib", "rlib"] [build-dependencies] tauri-build = { version = "2", features = [] } [dependencies] tauri = { version = "2", features = [] } tauri-plugin-dialog = "2" tauri-plugin-opener = "2" serde = { version = "1", features = ["derive"] } serde_json = "1" rusqlite = { version = "0.40", features = ["bundled"] } rusqlite_migration = "2.6" chrono = { version = "0.4", features = ["serde"] } uuid = { version = "1", features = ["v4"] } thiserror = "2" base64 = "0.22" sha2 = "0.10" flate2 = "1" zip = { version = "8", default-features = false, features = ["deflate-flate2"] } percent-encoding = "2" image = { version = "0.25.10", default-features = false, features = ["png", "jpeg", "webp"] } # Desktop-only plugins (not available on mobile targets). [target.'cfg(not(any(target_os = "android", target_os = "ios")))'.dependencies] tauri-plugin-single-instance = "2" tauri-plugin-window-state = "2" [dev-dependencies] tempfile = "3" [features] # Production builds embed the frontend and serve it over the custom asset # protocol. Without this, the app expects a dev server on localhost:1420. # DO NOT REMOVE. custom-protocol = ["tauri/custom-protocol"] [profile.release] codegen-units = 1 lto = true opt-level = "s" panic = "abort" strip = true