How varunkainth/expense-tracker works
Expense Tracker is a local-first mobile app for recording personal spending and work reimbursements, then reviewing or exporting records. Users enter personal expenses or work-expense details through separate app areas; records are stored in SQLite and can support period-based reports. Settings cover encrypted backup and restore, app security, and appearance. The README documents these product capabilities, while sampled source confirms SQLite initialization, repository access, and personal-expense operations; wiring from unsampled screens and services is therefore not drawn.
Main entry points: client.ts Local SQLite · expense.repository.ts Expense records · daily-allowance.repository.ts Work repositories · category.repository.ts Expense categories
Components 22
Personal expenses
- Personal screens
src/app/(personal)/history.tsx - Expense entry
src/app/(personal)/add-expense.tsx - Quick add
src/app/(personal)/quick-add.tsx - Expense detail
src/app/(personal)/expense/[id].tsx - Expense records
src/repositories/personal/expense.repository.ts
Work expenses
- Company screens
src/app/(tabs)/company.tsx - Employee details
src/app/(company)/employee.tsx - Work expense forms
src/app/(company)/local-conveyance.tsx - Work repositories
src/repositories/company/daily-allowance.repository.ts
Local data
- Local SQLite
src/database/client.ts - Schema migrations
src/database/migrations.ts - Expense categories
src/repositories/personal/category.repository.ts
Reports and protection
- Report export
src/services/export-company-excel.service.ts - Attendance PDF
src/services/export-attendance-pdf.service.ts - Backup and restore
src/services/backup.service.ts - Backup encryption
src/services/security/backup-crypto.service.ts - Security settings
src/app/settings/security.tsx - Device authentication
src/services/auth.service.ts - Appearance settings
src/app/settings/appearance.tsx - Secure storage
src/services/storage.service.ts
Other components
- App user
- Device database
Connections 16
- App user → Personal screens: browses
- App user → Expense entry: records
- App user → Quick add: records
- App user → Company screens: opens
- App user → Employee details: manages
- App user → Work expense forms: records
- App user → Report export: exports
- App user → Attendance PDF: exports
- App user → Backup and restore: backs up
- App user → Security settings: configures
- App user → Appearance settings: personalizes
- Expense records → Local SQLite: reads/writes
- Work repositories → Local SQLite: reads/writes
- Expense categories → Local SQLite: reads/writes
- Local SQLite → Device database: opens
- Local SQLite → Schema migrations: runs migrations