Loading repository data…
Loading repository data…
davifariasp / repository
Este repositório foi um desafio técnico que consistia em criar sistema para uma plataforma de cursos online. Utilizando a arquitetura de microsserviços, Java com Spring e NextJs.
O desafio consistia na criação de uma plataforma de cursos online, utilizando Java com Spring Boot no back, arquitetura de microsserviços e RabbitMQ para gerenciamento de filas. Também era necessário a utilização de concorrência e WebSocket para comunicação em tempo real, além de implementar autenticação JWT com o OAuth2. Já no front-end era mais simples, utilizei NextJs com React, junto com Talwhind para estilização. Também foi implementado a conexão com WebSocket do microsserviço API.
O desafio não é só na questão técnica, mas também na forma que você se organiza para completá-lo. O tempo limite era 72h (3 dias) e uma série de requisitos para serem satisfeitos. Mas acabou que deixei de apenas implementar os testes, tanto os unitários quanto o de integração, do front e do back.
Uma coisa que eu queria ter implementado mas pelo tempo não rolou, foi a questão da criação das imagens para o docker e o deploy em uma cloud, juntamente com uma API Gateway (com NGINX ou Spring Cloud).
As tecnologias a seguir são necessárias para conseguir rodar o projeto em sua máquina.
A API oferece Swagger para documentação das rotas
http://localhost:8081/swagger-ui/index.html#
http://localhost:8082/swagger-ui/index.html#
# Clonar o projeto:
$ git clone git@github.com:davifariasp/plataforma-cursos.git
# Entrar no diretório:
$ cd plataforma-cursos
# Compor o projeto:
$ docker compose up -d
# Entrar no serviço backend:
$ cd backend
# Entrar no serviço api:
$ cd api
# Entrar da spa:
$ cd frontend