This is a FastAPI project designed for user management with basic authentication functionalities. It includes features such as user creation and deletion. The project is containerized using Docker and Docker Compose for streamlined setup and deployment. The classifieds
feature is still under development.
This project uses a microservices architecture with separate services for user management and classifieds. Each service operates independently, ensuring modularity and scalability.
- User Service: Manages user authentication and related operations.
- Classified Service: Handles classified ads and their related functionalities.
Both services follow Domain-Driven Design (DDD) principles to organize code around domain models and business logic.
Event-Driven Architecture: Kafka is used for asynchronous communication between services, facilitating real-time data processing and integration.
-
Clone the repository:
git clone <https://github.com/your_username/your_repository.git> cd your_repository
-
Set up the environment and start the services:
-
Firstly, start kafka with:
make kafka
-
Then you can start storages with:
make user-storages make classified-storages
-
Make migrations with:
make user-migrate make classified-migrate
-
Finally, start the applications with:
make user-dev make classified-dev
- Ensure your
.env
file is configured correctly for Docker Compose. - The
classifieds
feature is still under development and not yet available.