The project defines the following roles for managing access and functionalities:
- Admin Role:
ADMIN_ROLE=4451 - Investor Role:
INVESTOR_ROLE=1002
email: admin@gmail.com
passord: Qwerty124323email: callistus506@gmail.com
passord: Qwerty123To run the project locally without Docker containers, follow these steps:
- Navigate to the
frontendfolder:cd frontend - Install dependencies:
yarn install
- Start the development server:
yarn start
- Navigate to the
backendfolder:cd backend - Install dependencies:
yarn install
- Start the development server:
yarn dev
To manage the project with Docker containers, use the following commands:
- Start the containers:
docker-compose up
- Bring down the containers:
docker-compose down
- Start the containers (after stopping):
docker-compose start
- Stop the containers:
docker-compose stop
The backend development is 90% complete, with testing remaining. Below is a list of the available endpoints:
-
Postman Link: Postman Collection
-
Base API Endpoint:
/api/v1
- POST
/sign-up
Create a new user account. - POST
/verify-otp
Verify user account using OTP. - POST
/request-otp
Request a new OTP for verification. - POST
/sign-out
Log out from the system.
- GET
/investments?page=1&size=10
Retrieve all available investments. - GET
/admin/investment/:investmentId
Retrieve details of a specific investment. - POST
/admin/investment
Create a new investment plan (Admin only). - PATCH
/admin/update/investment/:investmentId
Update an investment plan (Admin only).
- POST
/plan/subscribe
Subscribe to an investment plan. - GET
/plans/subscriptions?page=1&size=10
Retrieve all user subscriptions. - DELETE
/plan/unsubscribe/:subscriptionId
Unsubscribe from a specific plan.
- GET
/transactions?page=1&size=10
Retrieve all transactions for the user. - POST
/transaction/deposit
Create a deposit transaction. - POST
/transaction/withdrawal
Create a withdrawal transaction. - PATCH
/admin/update/transaction/:transactionId
Update a transaction's status (Admin only).
- GET
/wallet
Retrieve wallet details for the logged-in user. - GET
/profile
Retrieve user profile details. - PATCH
/profile
Update user profile details.
- GET
/admin/transaction/analytics
Retrieve transaction analytics for all users (Admin only). - GET
/transaction/analytics
Retrieve analytics for user transactions. - GET
/transaction/stat
Retrieve transaction statistics for the user. - GET
/admin/transaction/stat
Retrieve transaction statistics for all users (Admin only). - GET
/admin/dashboard - GET
/admin/inv/analytics
This project is licensed under the MIT License.