API for tracking financial expenses and income for both individuals and small businesses. It simplifies accounting work by providing a simple interface. Its functionality includes the creation of bank accounts, transactions by category and type, budgets, limits by category, a notification system, analytics through report generation, and manipulation of all data.
- i. Introduction
- ii. Architecture
- a. Layers
- b. Modular Monolith
- c. Domain-Driven Design
- d. Event-Driven Design
- e. CQRS
- iii. Modules
- a. Security
- b. BankAccounts
- c. Budgets
- d. Reports
- e. Webhooks
- f. Notifications
- iv. How to run (Not finished)
This project was created to improve my skills in working with different technologies and approaches, as well as to learn how to work with new libraries. Some solutions may not be entirely logical in this context. For those interested in the implementation, I have compiled a documentation summary in which I have tried to capture the main aspects and explain why these particular solutions were used. The table of contents breaks down the architecture, different approaches, each module separately, and at the end, it explains how to run it locally via Docker. In general, during development, I tried to use the best practices and approaches.
I would especially like to thank @dx3mirror for his advice and assistance.