This full-stack webapp enables the user to track and manage expenses effectively. It features a React frontend for user interactions and a Spring Boot backend for data management, leveraging a MySQL database for persistence.
Backend:
- Java version 17
- Spring Boot 3.2.X
- Databse: MySQL with Spring Data JPA
Frontend:
- ReactJS
- Axios
- Individual expense tracking
- User creation and management
- Expense creation and list display for individual users.
- Expense categorization
Project Structure
- backend-springboot: Contains SpringBoot backend code
- frontend-react: Contains React frontend code
Prerequisites:
- Java 17
- MySQL database
- npm
Steps:
- Clone the repository:
git clone <invalid URL removed>
- Set up the backend:
-
Create a MySQL database named expense-tracker.
-
Update database credentials in src/main/resources/application.properties.
- Replace your_database_username with your MySQL username.
- Replace your_database_password with your MySQL password.
-
Build and run the backend: (Run the BackendSpringbootApplication.java file)
cd backend-springboot ./mvnw spring-boot:run
- Set up the frontend:
- Install dependencies:
cd frontend-react npm install
- Start the development server:
npm start
- Access the application:
- Open http://localhost:3000 (or the specified frontend port) in your browser.