Welcome to Expense Tracker, a web application designed to help users manage their expenses effortlessly. This project leverages Flask and PostgreSQL to provide a secure and interactive platform for tracking personal finances.
You can access the Expense Tracker application for free at the following link: Expense Tracker
Home Page: Welcome to Expense Tracker, where users can easily navigate to login or register.
- User Authentication: Users can create accounts, log in securely, and log out.
- Expense Management: Add, view, and categorize expenses effortlessly.
- View Last 7 Days' Expenses: Display a summary of expenses for the last 7 days.
- View Monthly Expenses: Display a summary of expenses for each month and view details for each date within the month.
- Interactive Charts: Visualize expense trends with interactive charts for better insights.
- Responsive Design: Optimized for desktop and mobile platforms for seamless user experience.
- Front-end: HTML, CSS, JavaScript
- Back-end: Python (Flask)
- Database: PostgreSQL (for demonstration purposes; can be extended to other databases)
- Charts: Chart.js
- Session Management: Flask-Session (for user session management)
Register Page: New users can easily register with their name, email, and password.
Login Page: Existing users can securely log in with their credentials.
Dashboard: Visual summary of expenses for the current month.
Monthly Expenses | Daily Expenses Breakdown |
---|---|
![]() |
![]() |
View detailed expenses for the last 6 months. | View expenses for each day within the selected month. |
Mobile Dashboard: Responsive design ensures usability across different devices.
To run this project locally, follow these steps:
- Clone the repository:
git clone https://github.com/Nafi7393/Expenses-Tracker.git
- Navigate into the project directory:
cd Expenses-Tracker
- Install dependencies:
pip install -r requirements.txt
- Set up the PostgreSQL database:
- Create a database named
expenses_tracker
. - Update the database URI in
config.py
with your PostgreSQL credentials.
- Create a database named
- Initialize the database:
python manage.py db upgrade
- Start the Flask application:
python app.py
- Open your web browser and visit:
http://localhost:5000
- Register for a new account or log in with existing credentials.
- Add expenses with details such as date, category, and amount.
- Navigate through daily, weekly, and monthly summaries on the dashboard.
- Visualize spending patterns with interactive charts.
Contributions are welcome! Please fork the repository and submit a pull request with your improvements.