ExTrack is a privacy-first, offline-friendly, installable PWA for tracking and analyzing your personal expenses. No accounts, no backend, just pure fun and financial freedom! 🌈💸
- Offline-first: All data stored locally in your browser (IndexedDB via Dexie.js)
- Mobile & Desktop: Responsive, touch-friendly UI
- PWA: Installable on any device, works offline
- Dark Mode: Default, with light/system toggle
- Expense CRUD: Add, edit, delete, duplicate expenses
- Categories: Customizable, color-coded, with icons
- Tags: Smart suggestions, usage stats, rename/delete
- Charts & Analysis: Pie/bar charts, monthly summaries
- Export/Import: CSV/JSON export, easy restore
- Factory Reset: Nuke all data (if you dare!)
- Fun UI: Modern, animated, accessible, and energetic
📖 View Complete Feature Documentation
# 1. Clone the repo
$ git clone https://github.com/gammaSpeck/expense-tracker.git
$ cd expense-tracker
# 2. Install dependencies
$ bun install # or npm install / pnpm install
# 3. Start the dev server
$ bun run dev # or npm run dev / pnpm dev
# 4. Open http://localhost:4173 in your browser- Vite (blazing fast dev/build)
- React (TypeScript)
- shadcn/ui (Radix UI primitives)
- Tailwind CSS v4 (CSS-first config)
- Dexie.js (IndexedDB wrapper)
- Lucide React (icons)
- Recharts (charts)
- date-fns (date utils)
- browser-image-compression (attachments)
- React Hook Form + Zod (forms/validation)
- Expense CRUD
- Category CRUD
- Tag management
- Charts & analysis
- Export/import
- PWA support
- Multi-language support
- More themes
- Community features
MIT © gammaSpeck
If you love this project, give it a ⭐️! Share your feedback, ideas, and screenshots!
Built with 💚 for privacy, fun, and financial clarity!