Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/ebenezr/ecommerce-ms-api
Ecommerce Micro service api
https://github.com/ebenezr/ecommerce-ms-api
docker graphql koajs nginx postgresql prisma rabittmq
Last synced: 16 days ago
JSON representation
Ecommerce Micro service api
- Host: GitHub
- URL: https://github.com/ebenezr/ecommerce-ms-api
- Owner: Ebenezr
- Created: 2024-03-30T12:12:29.000Z (9 months ago)
- Default Branch: main
- Last Pushed: 2024-04-18T19:04:35.000Z (8 months ago)
- Last Synced: 2024-12-06T12:07:21.275Z (16 days ago)
- Topics: docker, graphql, koajs, nginx, postgresql, prisma, rabittmq
- Language: TypeScript
- Homepage:
- Size: 587 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Ecommerce Api Microservices
## Architecture
The architecture consists of the following services:
- `nosql-db`: A NoSQL database service using MongoDB.
- `rabbitmq`: A RabbitMQ service for message passing between the microservices.
- `products`: A service responsible for product-related operations.
- `shopping`: A service responsible for shopping-related operations.
- `customer`: A service responsible for customer-related operations.Each service is a separate Node.js application and communicates with the others via RabbitMQ.
## Getting Started
To get started with this project, you need to have Docker and Docker Compose installed on your machine.
1. Clone the repository: `git clone https://github.com/Ebenezr/ecommerce-api-ms.git`
2. Navigate into the project directory: `cd ecommerce-api-ms`
3. Build and start the services: `docker-compose up -d`## Testing
To run the tests for each service, you can use the following command: `docker-compose run --rm pnpm test`, replacing `` with the name of the service you want to test.
## Contributing
Contributions are welcome! Please read the contributing guidelines before making any changes.
## License
This project is licensed under the MIT License.