← ProjectsABD·
(05) / ProjectApril 2026

KudiLog

A fast, local-first budgeting PWA for logging expenses, understanding monthly patterns, and keeping financial data on-device.

Fast expense entry for a new transaction
Fast expense entry for a new transaction
Monthly spending overview and category breakdown
Monthly spending overview and category breakdown
Settings, data portability, and offline-first controls
Settings, data portability, and offline-first controls

The challenge

Budgeting tools often make a simple expense entry feel like administrative work, while sending personal financial records to a remote account. KudiLog needed to be quick, private, and useful without a backend.

The approach

A React and Vite PWA stores records in IndexedDB through Dexie live queries. A natural-language expense input, category detection, monthly analytics, recurring-expense detection, import/export, and Workbox caching keep the core experience available offline.

What I learned

Local-first products can feel substantially faster when persistence and reactivity are designed together, but portability and schema versioning need to be part of the first data model.

Built with
ReactPWAIndexedDBDexieTailwind CSS

Role

Product engineer

Outcome

An installable offline-first budgeting tool with instant expense capture, analytics, backups, and multi-currency support.