Agency Suite

The Offline Business Operating System

A small travel agency that lives on paper. Invoices typed by hand, receipts in a drawer, earnings hidden inside a diary. No way to know what's been paid, who owes what, or whether the month was actually profitable. I gave them a self-contained desktop app — no cloud, no subscription, no developer required — that runs invoicing, payments, commissions and analytics entirely on their machine.

Role
Product Design & Full Stack Desktop Development
Timeline
~2 Months, Iterative
Key Technologies
Electron / React / TypeScript / Vite / better-sqlite3 / React Query / Recharts / SheetJS / Playwright

Agencies are stuck with two impossible choices: SaaS tools that bleed money monthly and hold your data hostage in the cloud, or generic invoice templates that can't carry your brand, your services, or your currencies. I've built a third path — a native desktop application that installs like a normal program, lets the agency paint its own identity on every screen and invoice, and stores everything in a local, encrypted database it fully owns.

The Challenge

The Bottleneck

The client ran a real travel agency on paper — handwritten invoices, a paper ledger, and no way to track which customers had paid, how much was still owed, or which services actually made money. Every month-end was a scramble of receipts and guesswork. Any "solution" had to be something a non-technical owner could install and configure in minutes: their own logo, their own services, their own currencies, their own invoice style — with zero cloud, zero subscriptions, and zero ongoing developer involvement.

The Solution

The Reality

I've engineered a complete offline operations suite. A signed, branded invoice generator with print and PDF export; payment tracking with partial-payment history and running balances; a commission and incentive ledger; and a seven-tab analytics dashboard that turns the raw invoice data into profit, service and customer intelligence. Every piece of customer PII is encrypted at rest, every IPC call is validated and frame-checked, and the whole thing ships as installers for Windows, macOS and Linux.

"I didn't just build an invoice app, engineered a business brain that turns a travel agency's daily paper into real-time financial intelligence — entirely on their own machine."

Under the Hood

Technical Execution

A breakdown of the core systems engineered to deliver a secure, self-contained desktop product.

01

Bulletproof Desktop Architecture

  • Isolated three-process Electron model: sandboxed renderer, context-isolated preload bridge, and a main process that owns every database and system call.
  • A single type-safe IPC contract (EventPayloadMapping) drives every channel with compile-time guarantees.
  • Every IPC event is validated against the trusted UI frame and rejected with a "Malicious event" guard.
02

Encryption at Rest

  • AES-256-GCM with random IVs, auth tags and AAD for all customer and invoice PII.
  • scrypt-derived keys and graceful fallbacks keep data readable without ever shipping plaintext.
  • Field-level encrypt/decrypt helpers applied at the exact write and read boundaries.
03

Local-First Data Engine

  • Synchronous SQLite (better-sqlite3) powering customers, invoices, line items, payments, incentives, settings and a global invoice-number sequence.
  • Additive auto-migrations that evolve the schema and even rewrite legacy invoice-number formats across app updates.
  • A multi-currency engine that converts every sale into the agency's chosen base currency for analytics.
04

PDFs, Print & Branding

  • Invoice documents generated to HTML with embedded base64 logos and seals, then rendered via print-to-PDF pipelines.
  • Robust multi-tier logo fallback (PNG → SVG → generated text logo) so a document always renders.
  • Company name, contact block, thank-you note, signature image and address — all configurable from Settings, with assets stored safely in the user-data directory so they survive app updates.
05

Analytics That Pay Rent

  • Seven-tab reporting built on real SQL aggregation: revenue, services, customers, financials, incentives and time-based performance.
  • Profit analysis from purchase-vs-selling prices, discount analysis, currency performance and payment-collection rates.
  • Commission tracking with categories, filters and dedicated analytics.
06

Backup, Data Portability & Testing

  • Full import/export to Excel (single combined file or separate invoices/customers), with date-range export and dedupe-aware imports.
  • Automated E2E suites in Playwright covering launch, navigation, invoices, customers, reports and settings.
  • Custom NSIS installer logic that pre-creates the database directory and preserves user data across uninstalls.

Wanna try it

reach out to me →

The Outcome.

Agency Suite went from a paper-based back office to a live, self-contained operations system — installed, branded and used by the agency with no cloud, no monthly fees and no developer dependency.

  • Encrypted At Rest
  • Fully Offline & Installable
  • Seven-Tab Real-Time Analytics

What I learned

This project taught me that the best software disappears into the user's day.

No cloud, no subscriptions, no support calls — the product's job was to be forgettable in the best way.

Trust is earned by giving people ownership of their own data, not by promising them more features.