A modern, full-stack web application for tracking personal expenses, managing budgets, and generating insightful financial reports. Built with Angular (frontend) and ASP.NET Core (.NET 8) (backend).
- User registration, login, and JWT-based authentication
- Profile management and password reset
- Email verification
- Add, edit, delete, and filter expenses by category, date, and amount
- Multi-currency support with live exchange rates
- Tagging and categorization of expenses
- Recent activity and transaction history
- Set monthly budgets per category
- Track spending against budgets
- Visual progress bars and status indicators (under, near, over budget)
- Budget summaries and alerts
- Visualize spending by category and over time
- Budget vs. actual comparisons
- Export reports as PDF
- Monthly trends and summaries
- Overview of total spent, budgets, transactions, and categories
- Quick actions for adding expenses, setting budgets, and viewing reports
- Dark/light mode toggle
- Select default currency and region
- Notification preferences (budget alerts, monthly reports, reminders)
- Frontend: Angular 17, TailwindCSS, Chart.js, ng2-charts
- Backend: ASP.NET Core 8, Entity Framework Core, JWT Auth, Serilog, AutoMapper, FluentValidation
- Database: SQL Server or MySQL (configurable)
- Other: Docker-ready, RESTful API, Swagger/OpenAPI docs
- Node.js & npm
- .NET 8 SDK
- SQL Server or MySQL
- Git
- Navigate to the backend folder:
cd SPEMS.API - Update
appsettings.jsonwith your database connection string. - Run migrations:
dotnet ef database update
- Start the API:
dotnet run
- Navigate to the frontend folder (root):
npm install
- Start the Angular app:
npm start
- Configure API endpoints in
src/environments/environment.ts.
- Register a new account or log in.
- Add expenses, set budgets, and view reports from the dashboard.
- Customize your preferences in the settings page.
Personal Expense Management System/
├── SPEMS.API/ # ASP.NET Core backend
├── src/ # Angular frontend
├── supabase/ # (Optional) DB migrations
├── ...
Pull requests are welcome! For major changes, please open an issue first to discuss what you would like to change.
Personal Expense Management System – Track, budget, and take control of your finances.