The Expense Tracker App is a web-based application designed to help users manage and categorize their expenses. The app provides a user-friendly interface for logging expenses, setting budgets, and viewing visual expense reports.
- User registration with email and password
- Login and password recovery functionality
- Log expenses with date, category, description, and amount
- Categorize expenses into predefined categories (e.g., food, transportation, entertainment)
- Edit and delete logged expenses
- Set budgets for specific categories or overall expenses
- Track expenses against set budgets
- View visual reports using bar charts, pie charts, and line graphs
- Get an expense summary, including total amount spent and percentage of budget used
- Search for expenses by date, category, or description
- Sort expenses by date, category, or amount
- EJS (Embedded JavaScript) for templating
- CSS for styling
- JavaScript for client-side interactions
- Node.js for server-side runtime
- Express.js as the web framework
- MySQL as the database (hosted on Aiven Console)
- The app is hosted on Render.com
- The database is hosted on Aiven Console
- Node.js and npm installed
- MySQL database setup
- Clone the repository:
git clone https://github.com/ChidexWorld/expense-tracker.git
- Navigate to the project directory:
cd expense-tracker
- Install dependencies:
npm install
- Create a
.env
file and configure database credentials:DB_HOST=your_database_host DB_USER=your_database_user DB_PASSWORD=your_database_password DB_NAME=your_database_name DB_PORT=your_port_no
- Start the server:
npm start
- Open
http://localhost:3000
in your browser to access the app. - Register or log in to start tracking expenses.
Contributions are welcome! Feel free to fork the repository and submit pull requests.
This project is licensed under the MIT License.
For any inquiries, reach out to ChidexWorld.