Backend API for the Expense Tracker application written in Java Spring Boot.
The Expense Tracker application allows users to manage their expenses, incomes, and subscriptions. It helps users keep track of their expenses through budgeting, alerting, and visualizations.
- User authentication and authorization
- Expense and income management
- Subscription tracking
- Email confirmation for user registration
- Budgeting and alerts (TODO)
- Cool graphs and visualizations (TODO)
To install and run the project locally, follow these steps:
-
Clone the repository:
git clone https://github.com/yourusername/expense-tracker.git cd expense-tracker
-
Install dependencies:
./mvnw install
-
Build the project:
./mvnw package
-
Create a
.env
file in the root directory and add the necessary environment variables:SPRING_GMAIL_USERNAME= SPRING_GMAIL_PASSWORD= SPRING_MYSQL_HOST=localhost SPRING_MYSQL_DB_NAME=expense_tracker SPRING_MYSQL_USERNAME=user SPRING_MYSQL_PASSWORD=password SPRING_JWT_SECRET_KEY=
-
Update the application.yaml file with your configuration settings:
server: port: 8080 bert-cat-api: url:
The bert API is used to classify the user's expenses into categories. You can find more information about the API here (TODO).
To run the application, use the following command:
./mvnw spring-boot:run
The application will be available at http://localhost:8080.
To run the tests, use the following command:
./mvnw test
Contributions are welcome! Please fork the repository and create a pull request with your changes.
This project is licensed under the Apache License 2.0. See the LICENSE file for details.