Appliance Retailer Desktop POS
Offline cash and installment sales with a penalty engine, undoable Excel import and backups.
2026Tauri, React, Rust, SQLite, Zustand
Problem
The store needed a practical desktop tool for inventory and receivables without depending on a cloud backend, server setup, or always-on internet connection.
Constraints
- Must run locally without a cloud backend or server setup
- Sales need to update stock, serial numbers, accounts, and payment schedules atomically
- Installment accounts require penalties, rebates, restructuring, and payment history
- Nontechnical users need reliable backup, restore, import, and export workflows
- Desktop distribution should use Tauri installers instead of a heavy Electron package
Key Decisions
- Local-first Tauri over web app deployment
The business needed reliable desktop use without managing hosting, networking, or cloud database access.
Built a Tauri app with React UI and Rust/SQLite backend commands for all core workflows.
Trade-off: No built-in multi-branch sync, but installation and day-to-day operation stay simple. - Transactional sales workflow
A sale touches stock, serial numbers, receivables, payment schedules, audit data, and reports.
Use SQLite transactions through Rust commands so related updates succeed or fail together.
Trade-off: More careful backend command design, but fewer partial-state failures in real store use. - Maintenance tools inside the app
The target users need to handle backups and data exports without developer help.
Expose backup, restore, reset, PDF/Excel/CSV export, and import flows directly in the desktop UI.
Trade-off: More surface area to test, but the app is much more operationally useful.
- Role
- Sole engineer
- Timeline
- Apr 2026
- Stack
- Tauri, React, Rust, SQLite, Zustand, Tailwind CSS, Recharts, shadcn/ui