Logos (PNG, JPEG, WebP) are decoded, trimmed to their ink box, downscaled to 1200 px and re-encoded as a content-addressed print PNG plus a white knockout variant when the logo has alpha; aspect, ink density, mean colour and kind (wordmark, mark, tall) are stored with the settings and frozen in the issue snapshot. Legacy logos are derived at startup. The Arun P logo PDF shrinks from 334 KB to 92 KB. Settings gains a Branding section with white and dark previews and a business-name toggle (migration M5).
53 lines
1.4 KiB
TOML
53 lines
1.4 KiB
TOML
[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"
|
|
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
|