FinanCity is a robust personal finance management application built with Spring Boot, MySQL, and Liquibase, fully containerized using Docker. It helps users make and track transactions, manage budgets, and visualize their financial health.
This is the backend. For the frontend, please visit financity-web github repository.
You don't need Java or MySQL installed locally. The entire stack runs inside Docker containers.
-
Docker Desktop installed and running.
-
A Git client to clone the repository.
git clone https://github.com/iustinflorian/financity.git
cd financity
-
The application requires an .env file for secure configurations (email services, database connection).
-
Create a file named .env in the root directory.
-
An example is provided in the main folder.
Launch the entire stack (backend + database) with a single command:
docker-compose up --build -d
-
Download Postman Collection
-
Open Postman and click import.
-
Select the file.
Database is available at localhost:3307 (internally, the app uses 3306).
-Backend: Java 21, Spring Boot 4.x
-Database: MySQL 8.0
-Migration Tool: Liquibase
-Containerization: Docker & Docker Compose
-Security: Spring Security
This project is licensed under the MIT License - see the LICENSE file for details.