It provides a REST API with user authentication and provides income, expense report, also categories them by their type for staying organised.
Check out the live demo of the app: Spend Guide↗
IMP: Might took some time(around 2-3 mins) for first response in a while from the backend due to the limitation of Render↗ free instance.
If you want, you can check if the backend server is up or not by visiting: Test Spend Guide↗
Also, check out the frontend repo of the app: Spend Guide frontend repo↗
-
- User authentication with their credentials and JWT.
- CRUD operations for income, expense and category tracking
- Generates daily/monthly reports of spending details.
- Exports data as excel file for download or for sending email.
- Email integration for scheduled/immediate report sending.
- CORS setup for react.js frontend
-
-
Clone the repository:
git clone https://github.com/<your_username>/spend-guide-backend.git -
Configure the
application.propertiesfile:- Change the properties profile from production to local:
From
spring.profiles.active=productiontospring.profiles.active=local - Put app url and frontend url as your localhost then port number:
The backend and frontend will most likely have port no.s 8080 and 5173 respectively.
So, instead of this:
put this:
app.base-url=${APP_BASE_URL} app.frontend-url=${FRONTEND_URL}app.base-url=http://localhost:8080 app.frontend-url=http://localhost:5173 - Put your own secret key instead of
${SECRET_KEY} - Configure email service:
- Create new account in Brevo↗
- Get the API key, sender email address and sender name
- And put them instead of the env variable:
brevo.apiKey=<put_your_api_key> brevo.sender=<put_the_sender_email> brevo.senderName=<put_the_sender_name>
For more info regarding Brevo API configuration, visit the official documentation↗
- Change the properties profile from production to local:
From
-
Build and run the development server: For windows powershell/terminal:
.\mvnw spring-boot:runFor mac/linux:
./mvnw spring-boot:run
-

