WalletFlow API is a personal financial control API developed in Java using Spring Boot and based on Clean Architecture. The project helps users organize income and expenses in a structured and secure way, with categorization and analysis features for better financial planning.
- Java 23
- Spring Boot
- Spring Data JPA
- MySQL for data storage
The project follows Clean Architecture, separating responsibilities into clear layers for easy maintenance and scalability:
- Controllers: Receive and process HTTP requests.
- Use Cases: Business logic and main operations.
- Repositories: Interface with the database.
- Entities: Definition of domain models and entities.
- Clone the repository:
git clone https://github.com/kaiquefreire05/walletFlowApi.git
cd walletFlowApi
-
Configure the
application.properties
file with the MySQL connection string. -
Start the application with Maven:
./mvnw spring-boot:run
- Access
http://localhost:8080
to interact with the API.
- POST /api/auth/register: User registration.
- POST /api/auth/login: User authentication.
- GET /api/transactions: List of transactions.
- POST /api/transactions: Add a new transaction.
Detailed documentation is not available in Swagger.
- Fork the project.
- Open a branch (
git checkout -b feature/your-feature
). - Commit your changes (
git commit -m 'Feature Description'
). - Push to the branch (
git push origin feature/your-feature
). - Open a Pull Request.
Distributed under the MIT License. See LICENSE
for more details.
This README includes a general description, installation and running instructions, and details about the structure and main endpoints.