A modern expense tracking web application built with React, TypeScript, and Tailwind CSS.
- Add/Edit/Delete Expenses: Complete CRUD operations for expense management
- Expense Categorization: Organize expenses into predefined categories (Food, Transport, Bills, Entertainment, etc.)
- Dashboard Overview: View total expenses, monthly/weekly totals, and recent transactions
- Search & Filter: Find expenses by description, category, or date range
- Local Storage: All data persists locally in your browser
- Food
- Transport
- Bills
- Entertainment
- Shopping
- Healthcare
- Education
- Travel
- Housing
- Other
- Total expenses across all time
- This month's spending
- This week's spending
- Total expense count
- Top spending categories
- Recent transactions
- Frontend: React 19 with TypeScript
- Styling: Tailwind CSS for responsive design
- Build Tool: Vite for fast development
- State Management: React hooks (useState, useEffect, custom hooks)
- Data Persistence: Browser localStorage
- Icons: Heroicons (via Tailwind CSS)
- Node.js (v18 or higher)
- npm or yarn
- Clone the repository
git clone <repository-url>
cd expense-tracker
- Install dependencies
npm install
- Start the development server
npm run dev
- Open your browser and navigate to
http://localhost:5173
npm run build
npm run preview
src/
├── components/ # React components
│ ├── Dashboard.tsx # Main dashboard with stats
│ ├── ExpenseForm.tsx # Add/edit expense form
│ ├── ExpenseList.tsx # Expense list with filters
│ └── Layout.tsx # Main app layout
├── hooks/ # Custom React hooks
│ └── useExpenses.ts # Expense management hook
├── types/ # TypeScript type definitions
│ └── expense.ts # Expense-related types
├── utils/ # Utility functions
│ └── localStorage.ts # Local storage utilities
├── App.tsx # Main app component
├── main.tsx # App entry point
└── index.css # Tailwind CSS imports
- Kotak Bank API Integration: Automatic transaction import
- Tax Calculations: Income tax and GST tracking
- Receipt OCR: Photo upload with text extraction
- Budget Management: Spending limits and alerts
- Advanced Analytics: Charts and detailed reporting
- Data Export: CSV/Excel export functionality
- Multi-currency Support: Handle multiple currencies
- Bill Reminders: Automated expense reminders
- Cloud Sync: Backend integration for data synchronization
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature
) - Commit your changes (
git commit -m 'Add some amazing feature'
) - Push to the branch (
git push origin feature/amazing-feature
) - Open a Pull Request
This project is licensed under the MIT License.