[package] name = "thoughtsync-desktop" version = "0.1.0" description = "ThoughtSync desktop — local-first Keep-style thought capture" authors = ["bvandeusen"] edition = "2021" # App logic lives in the library (Tauri v2 pattern: a single `run()` entry point # reusable across desktop and any future mobile target); main.rs is a thin shim. [lib] name = "thoughtsync_desktop_lib" crate-type = ["staticlib", "cdylib", "rlib"] [build-dependencies] tauri-build = { version = "2", features = [] } [dependencies] tauri = { version = "2", features = [] } serde = { version = "1", features = ["derive"] } serde_json = "1" # Local-first store (M10.4): bundled = compile SQLite in, so there's no system # libsqlite dependency to vary across the AppImage / native / Windows builds. rusqlite = { version = "0.32", features = ["bundled"] } uuid = { version = "1", features = ["v4"] } # RFC3339 timestamps for created_at/updated_at/remind_at (Date.parse-able on the JS side). chrono = { version = "0.4", default-features = false, features = ["clock"] } # Startup + operation logging to stdout AND a persistent file, so portability # issues are diagnosable from any environment. `log` is the facade the code uses. tauri-plugin-log = "2" log = "0.4" # Tauri's default release profile: smaller, faster shipped binaries. [profile.release] codegen-units = 1 lto = true opt-level = "s" panic = "abort" strip = true