Skip to content

jonattasmoraes/stellarcommerce

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Click here for the English version

Banner

📦 StellarCommerce: A sales application

License Go gRPC Kafka Docker Build Tests Coverage

📝 Descrição

StellarCommerce é uma aplicação de vendas robusta e escalável, composta por quatro microserviços, cada um nomeado como um satélite de Saturno. Este projeto utiliza gRPC para comunicação entre os microserviços de usuários, produtos e vendas, e Kafka para transmitir informações de vendas para o serviço de relatórios. A API possui um gateway simples e está documentada com Swagger.

🚀 Microserviços

🌐 Monorepo

Todos os microserviços estão organizados em um monorepo:

🛠️ Tecnologias Utilizadas

  • Golang 1.22
  • gRPC
  • Kafka
  • Docker
  • Docker Compose

📂 Estrutura do Projeto

StellarCommerce/
├── titan/
├── mimas/
├── telesto/
├── dione/
├── kafka/
├── gateway/
├── makefile
└── README.md

⚙️ Configuração e Execução

Pré-requisitos

  • Docker e Docker Compose instalados.
  • Golang 1.22 instalado.
  • Make instalado.

Passo a Passo

  1. Clone o monorepo:
git clone https://github.com/jonattasmoraes/stellar_commerce.git
cd stellar_commerce
  1. Suba os containers com Docker Compose:
make run
  1. Acesse os microserviços:
  • Titan (Usuários): http://localhost:8081
  • Mimas (Produtos): http://localhost:8082
  • Telesto (Vendas): http://localhost:8083
  • Dione (Relatórios): http://localhost:8084

ou acesse a API Gateway:

  • GateWay: http://localhost:3000

📖 Documentação da API

Cada microserviço possui sua própria documentação da API, disponível nos respectivos repositórios:

🧪 Testes

Para executar os testes, navegue até o diretório do microserviço desejado e utilize o comando:

go test ./...

ou execute o makefile na raiz do monorepo:

make test

📄 Licença

Este projeto está licenciado sob a licença MIT. Veja o arquivo LICENSE para mais detalhes.

🤝 Contribuição

Contribuições são bem-vindas! Sinta-se à vontade para abrir issues e pull requests.

📧 Contato

---

Banner

📦 StellarCommerce: A sales application(English Version)

License Go gRPC Kafka Docker Build Tests Coverage

📝 Description

StellarCommerce is a robust and scalable sales application composed of four microservices, each named after a satellite of Saturn. This project uses gRPC for communication between user, product, and sales microservices, and Kafka to transmit sales information to the reporting service. The API has a simple gateway and is documented with Swagger.

🚀 Microservices

🌐 Monorepo

All microservices are organized in a monorepo:

🛠️ Technologies Used

  • Golang 1.22
  • gRPC
  • Kafka
  • Docker
  • Docker Compose

📂 Project Structure

StellarCommerce/
├── titan/
├── mimas/
├── telesto/
├── dione/
├── kafka/
├── gateway/
├── makefile
└── README.md

⚙️ Setup and Execution

Prerequisites

  • Docker e Docker Compose installed.
  • Golang 1.22 installed.
  • Make installed.

Steps

  1. Clone the monorepo:
git clone https://github.com/jonattasmoraes/golang-mservices.git
cd stellar_commerce
  1. Bring up the containers with Docker Compose:
make run
  1. Access the microservices:
  • Titan (Users): http://localhost:8081
  • Mimas (Products): http://localhost:8082
  • Telesto (Sales): http://localhost:8083
  • Dione (Reports): http://localhost:8084

or access the API Gateway:

  • GateWay: http://localhost:3000

📖 API Documentation

Each microservice has its own API documentation available in their respective repositories:

🧪 Tests

To run tests, navigate to the desired microservice directory and use the command:

go test ./...

or run the makefile at the root of the monorepo:

make test

📄 License

This project is licensed under the MIT License. See the LICENSE for details.

🤝 Contribution

Contributions are welcome! Feel free to open issues and pull requests.

📧 Contact

About

StellarCommerce is a robust and scalable sales application composed of four microservices, each named after a satellite of Saturn. This project uses gRPC for communication between user, product, and sales microservices, and Kafka to transmit sales information to the reporting service.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors