ExpenseTracker.app
ExpenseTracker.app is a Flask-based household budgeting app where admin sets income, users log shared expenses, and the system tracks spending with dashboards, reports, and charts.
Overview
๐ Overview
ExpenseTracker.app is a full-featured, multi-household budget management web application built with Flask. It allows families, groups, and organizations to track income, expenses, and budgets with role-based access control and real-time financial insights. Key Concepts Concept Description Household A family or group container (each has isolated data) Users Members of a household with different roles Transactions Income or expense entries Budgets Monthly spending limits (household and per-category) Categories Hierarchical income/expense classifications (200+ predefined) Multi-Device Support Device OS Status Windows PC Windows 10/11 โ Fully Supported MacBook macOS 12+ โ Fully Supported Linux PC Ubuntu/Debian โ Fully Supported Raspberry Pi Raspberry Pi OS โ Fully Supported Mobile Browser iOS/Android โ Responsive โจ Features Core Features Feature Description โ Multi-Household Complete data isolation between households โ Role-Based Access Global Admin, Admin, User roles โ Transaction CRUD Create, read, update, delete transactions โ Hierarchical Categories 200+ predefined categories with parent-child relationships โ Monthly Budgets Set monthly household income targets โ Category Budgets Set spending limits per category โ Real-Time Insights Projections, variance analysis, YTD calculations โ Threaded Comments Comment on transactions with nested replies User Features Feature Description ๐ค User Profiles Custom avatars and display names ๐ฌ Messaging Internal user-to-user messaging ๐ฌ Transaction Comments All household members can comment ๐ Notifications System notifications for comments and messages ๐ Password Change Secure password management Admin Features Feature Description ๐ฅ User Management Create, view, delete users ๐ Category Management Add, toggle, delete custom categories ๐ฐ Budget Setting Set monthly household and category budgets ๐พ Backup Management Create, download, restore database backups ๐ Logs Viewer View application, error, and access logs ๐ Audit Trail Track all user actions Global Admin Features Feature Description ๐ Global Dashboard View ALL households and users ๐ Global Reports Reports across all households ๐๏ธ Delete Households Remove entire households ๐ System Logs View all system logs ๐พ Backup Management Full backup control Reports & Analytics Feature Description ๐ Daily Reports Transactions for a specific day ๐ Weekly Reports Transactions for a specific week ๐ Monthly Reports Full month summary with category breakdown ๐ Yearly Reports Full year summary with monthly breakdown ๐ Custom Reports Any date range you select ๐ Export Formats PDF, CSV, JSON, Excel ๐ Global Reports Reports across all households ๐ Spending Variance Track spending against averages ๐ End-of-Month Projections Forecast remaining balance ๐ Year-to-Date Calculations YTD income, expenses, remaining Security Features Feature Description ๐ก๏ธ CSRF Protection Flask-WTF CSRF protection ๐ Password Hashing Werkzeug secure password hashing ๐ Session Security HttpOnly, SameSite cookies ๐ซ Rate Limiting Login attempt limiting ๐ฎ Role-Based Access @role_required, @global_admin_required ๐ Audit Logging Track all user actions ๐ก๏ธ XSS Protection Jinja2 auto-escaping ๐ก๏ธ SQL Injection Protection SQLAlchemy ORM ๐ ๏ธ Technology Stack Layer Technology Version Backend Flask 2.3.2 ORM SQLAlchemy 3.0.5 Database SQLite (Dev) / PostgreSQL (Production) - Authentication Flask-Login 0.6.2 Forms Flask-WTF 1.1.1 Migrations Flask-Migrate 4.0.5 Charts Chart.js 4.4.0 Image Processing Pillow 10.1.0 PDF Generation reportlab 4.0.4 Excel Export openpyxl 3.1.2 Frontend HTML5, CSS3, JavaScript - Package Manager uv / pip - Production Server Gunicorn / Waitress -
Technology Stack
Learning Outcomes
- Build a complete application from scratch
- Understand core concepts and best practices
- Deploy to production environment
- Implement industry standard patterns
Prerequisites
- Basic understanding of programming
- Familiarity with the primary language(s)
Resources
Resources are locked
Request access to view the resources for this project.
Please provide your email to request access.
Request AccessPurchase $499.98
Purchase this project for $499.98 and get immediate download access.
Reviews
0 ReviewsNo reviews yet. Be the first to review this project!