A modern, production-ready expense tracking application built with React and Encore.dev, designed to help users manage their expenses and budgets effectively with email notifications.
- 🔐 User Authentication: Secure signup/login using Supabase Auth
- 💸 Expense Management: Add, view, and categorize expenses with ease
- 📊 Budget Tracking: Set monthly budgets and track spending against limits
- 📧 Smart Notifications: Email alerts when budgets are approached or exceeded
- 📈 Visual Analytics: Charts and summaries for expense insights
- 📱 Responsive Design: Modern UI that works on desktop and mobile
- React 18 with TypeScript
- Vite for fast development and building
- Tailwind CSS for styling
- Tanstack Query for state management
- Radix UI components for accessibility
- Lucide React for icons
- Encore.dev for API framework and deployment
- TypeScript for type safety
- Supabase for authentication and PostgreSQL database
- Nodemailer for email notifications
- Node.js 18+
- Bun (recommended) or npm
- Encore CLI
- Supabase account
-
Backend Setup
cd backend bun install cp .env.example .env # Edit .env with your credentials encore db migrate encore dev
-
Frontend Setup
cd frontend bun install cp .env.example .env # Edit .env with your settings bun run dev
-
Access
- Frontend: http://localhost:5173
- Backend: http://localhost:4000
# Run tests
cd backend && bun test
cd frontend && bun test
# Linting
bun run lint
# Type checking
bun run typecheck- Fork the repository
- Create feature branch:
git checkout -b feature/amazing-feature - Commit changes:
git commit -m 'Add amazing feature' - Push to branch:
git push origin feature/amazing-feature - Open Pull Request
- 📱 Mobile app (React Native)
- 📊 Advanced analytics dashboard
- 🌍 Multi-currency support
- 📄 Receipt image upload
- 📈 Export/import functionality
- 👥 Team expense sharing
MIT License - see LICENSE file for details.
Ready to track your expenses? Get started with it 🚀