Welcome to the Wallet Management System! This project aims to provide a robust and scalable solution for managing user wallets and transactions using NestJS microservices and Mongoose for MongoDB integration.
-
Wallet Management:
- Deposit Funds: Add funds to user wallets.
- View Wallet: Retrieve wallet details.
-
Transaction Logging:
- Track Deposits: Record all deposit transactions with unique reference IDs.
-
Daily Totals Calculation:
- Calculate and Log: Automatically calculate and log daily transaction totals.
-
Scheduled Tasks:
- Daily Totals: Automatically logs daily transaction totals at midnight.
- Docker: To run the application in a containerized environment.
- Git: For version control.
Clone the project and set up the environment:
git clone https://github.com/bahramee/wallet-management.git
cd wallet-management
docker compose up
Once the setup is complete, you can access:
- API Documentation: Swagger
To ensure the application is working as expected, run the tests using:
cd apps/api
npm run test
Please note that if your local MongoDB is running on port 27017, you should first stop your local MongoDB and then run
docker compose up