
An offline desktop workspace for financial documents, exact calculations, reconciliation and local AI.
(01)
Open source
Source-led
Financial clarity, kept on your computer.
Import invoices, receipts and bank rows. Calculate in exact integer money units. Reconcile, ask questions and export, with a trail back to every source.
- 0 networkThe desktop web view sets connect-src to none.
- Exact mathMoney is signed integer minor units, never floats.
- EncryptedSQLCipher workspaces, Argon2id keys, AES-256-GCM files.
- Local AIQwen3 4B through llama.cpp, with a CPU fallback.
(02) From pile to proof.
Nothing is uploaded.
What it is
From a pile of files to an answer you can trace.
Financial work often starts with a pile of invoices, receipts and bank rows, then ends with a question: where did this number come from?
SAAR brings those records into one local workspace. It extracts and organises evidence, matches related transactions, adds up in integer minor units, and lets you open the source behind a result. Nothing is uploaded, because the application is built so that it cannot be.
(03) Six steps.
Each one inspectable.
The workflow
Six steps, each one inspectable.
- 01
Bring in the evidence
Drop in invoices, receipts, statements and bank rows. SAAR keeps them in one workspace and de-duplicates by content hash.
- 02
Inspect the source
Every extracted value keeps its provenance. Read the field beside the original document, with its hash, size and storage state.
- 03
Review the match
Deterministic rules propose links between invoices and payments and flag anomalies. You approve, reject or correct.
- 04
Ask, and see the receipts
Ask in plain language. Totals are calculated from your records and cited to transactions. Model prose is labelled as not verified.
- 05
Report with a trail
Monthly income, expenses and net cash flow, per currency. Export CSV or PDF reports that trace back to source records.
- 06
Back up and restore
An encrypted, authenticated archive that restores into a fresh profile. A wrong passphrase or a tampered byte is rejected.
(04) Verified, quarantined,
not verified.
Grounded local AI
Numbers are calculated. Prose is labelled.
A model that can invent a total is a liability. In SAAR, figures come from your records and carry citations. When the language model writes the words, the interface says so.
- VerifiedCalculated from your records by SAAR, with the scope stated. The language model did not produce these figures.
- QuarantinedA hostile prompt is stopped by the local safety boundary and not answered.
- Not verifiedFree-form model text is marked, so nobody mistakes it for a ledger entry.

(05) Integer minor units.
Checked arithmetic.
Exact money
Why the arithmetic is not floating point.
Binary floating point cannot store most decimal amounts exactly, so small errors creep into totals. SAAR stores money as signed integer minor units with checked arithmetic.
- 0.10 + 0.20 in floating point0.30000000000000004
- 10 + 20 minor units in SAAR30 = 0.30
From pile to proof
A trail from document to decision.
- Documents in
- Evidence read
- Ledger resolved
Private by construction
What the code actually does.
Each claim below links to the file that implements it. Read the source, not the marketing.
- Network
The desktop web view blocks every network connection. Its content security policy sets connect-src to none.
src-tauri/tauri.conf.json - Passphrase
A workspace key is derived with Argon2id: 64 MiB of memory, 3 iterations, 1 lane, 32-byte key.
src-tauri/src/security/kdf.rs - Database
Each workspace has its own SQLCipher database, with write-ahead logging and foreign-key checks.
src-tauri/src/db - Documents
Files are stored as AES-256-GCM encrypted blobs, addressed by content hash, written atomically.
src-tauri/src/security/blob_store.rs - Backups
Backup archives are authenticated and encrypted. A wrong passphrase or a flipped bit is rejected.
src-tauri/src/security/backup.rs - Injection
Text hidden in a document cannot instruct the model. Hostile prompts are quarantined and not answered.
src-tauri/src/ai/defense.rs
No independent security audit is claimed. The project has a written threat model and a recorded offline test, linked from the security page.
Architecture
One window, a Rust core, local workers.
The interface never touches the network. It talks to a Rust core through typed commands, and the core talks to a local database, an encrypted file store, a local model and a local OCR worker.
Run it yourself
A source repository, honestly labelled.
SAAR is a source repository, not a finished download. Model weights and native sidecars are not committed to Git and must be provided separately for AI and OCR features.
# Frontend and desktop shell
git clone https://github.com/THE-SHRIKS/SAAR-LokiXPiyush.git
cd SAAR-LokiXPiyush
pnpm install --frozen-lockfile
cargo install tauri-cli --version '^2' --locked
cargo tauri dev
(06) Bring the evidence
closer to the answer.