WINDOWS DESKTOP · FULL STACK
OjorDesk
Windows Desktop Application
OjorDesk is a Windows desktop application built around a React interface and a native desktop layer using Tauri 2 and Rust — for operational HR, payroll and print workflows that need local data and security.

The problem
Desktop applications introduce requirements that web applications do not have to solve in the same way: local storage, native integration, security and reliable printing.
Operational teams needed personnel and payment workflows that stay usable on the machine, protect sensitive local data, and still connect to backend services when available.
What I built
The application combines React and TypeScript on the interface side with Tauri/Rust and encrypted local database technologies.
Clear boundaries separate the React UI, the Tauri/Rust desktop layer and backend services — so local persistence, print flows and sync stay maintainable.
What I owned
- Desktop product engineering across React UI, Tauri 2 / Rust shell and Node/Express/PostgreSQL services.
- Local SQLite persistence with SQLCipher for sensitive data, plus operational list and payslip print flows with Arabic preview.
- Sync-mode configuration and backend-connected desktop behavior without collapsing everything into one layer.
What changed
- Teams get a real Windows product for HR and payroll operations — not a browser tab pretending to be desktop.
- Sensitive data can stay on the machine under encrypted local storage while print and sync remain part of the same product.
- UI, native shell and backend stay separated so the stack can evolve without rewriting the whole application.
Engineering challenges
Local data
The desktop environment requires reliable local storage.
Approach
Local persistence was designed around SQLite so the application remains usable with data kept on the machine.
Security
Sensitive local data requires a more deliberate storage strategy.
Approach
SQLCipher was used to protect sensitive local database content.
Cross-layer integration
React, Tauri, Rust and the backend need to work together without making the application architecture unnecessarily difficult to maintain.
Approach
Clear boundaries between the React UI, Tauri/Rust desktop layer and backend services keep responsibilities separated.
Gallery
Personnel list with HR print options
Stack
- React
- TypeScript
- Tailwind CSS
- Tauri 2
- Rust
- SQLite
- SQLCipher
- Node.js
- Express
- PostgreSQL
Role
Full Stack Developer
Contact
Need similar engineering?
Building a product system and need someone who can own the hard parts — I reply on WhatsApp.