Skip to content
This repository has been archived by the owner on Mar 19, 2022. It is now read-only.

Latest commit

 

History

History
115 lines (87 loc) · 6.67 KB

README.md

File metadata and controls

115 lines (87 loc) · 6.67 KB

MeetApp
Yare Yare daze

GitHub top language GitHub language count Repository size GitHub last commit Repository issues GitHub

Projeto MeetAppp desenvolvido durante o Bootcamp GoStack 8 da Rocketseat, para o desafio final da certificação.

Estrutura

  • Aplicativo mobile, construído pra android, apenas.
  • Construído em React Native, redux, styled-components, entre outras ferramentas.
  • Servidor de documentação, exemplificando os dados que devem ser enviados para a API.
  • Construído com Insomnia Documenter.
  • Quando o projeto é iniciado pelo docker-compose da raiz do projeto, ele roda no endereço localhost:5000.

Server - Instruções

  • Servidor backend da aplicação.
  • Construído com Sequelize ORM, express, multer, bee-queue, sucrase, e outras ferramentas. A documentação da API está disponível através da da aplicação de documentação.
  • Quando o projeto é iniciado pelo docker-compose da raiz do projeto, ele roda no endereço localhost:3333.
  • Também hospedado no heroku, como versão de "produção": Backend MeetApp
  • Aplicação frontend web do projeto.
  • Construído com create-react-app, redux, styled-components e outras ferramentas.
  • Quando o projeto é iniciado pelo docker-compose da raiz do projeto, ele roda no endereço localhost:3000.
  • Também hospedado no heroku, como versão de "produção": Web MeetApp

Rodando o projeto localmente

Requisitos:


Antes do projeto ser iniciado, é necessário definir as variáveis de ambiente. Portanto crie um arquivo .env ena raiz do projeto, com o conteúdo do arquivo .env.example. Edite os campos DB_USER, DB_PASS e DB_NAME, isto vai servir pra criar o banco de dados com essas configurações. Para que ocorra a conexão correta com o banco, crie outro arquivo .env no diretório server, com o conteúdo do arquivo .env.example dentro da pasta server. Também edite os campos DB_USER, DB_PASS e DB_NAME, com os mesmos valores do arquivo .env que foi criado na raiz do projeto.

Assim, o projeto (frontend e backend) pode ser iniciado em modo de desenvolvimento, com o seguinte comando na raiz:

# A opção "-d" inicia os contâineres e não exibe os retornos. Se você quer ver o projeto executanto, não use essa opção.
$ docker-compose up -d 

Isso vai iniciar os seguintes containers, na seguinte ordem:

  • postgres-database
    • Banco de dados postgres.
    • Usuário e senha do postgres podem ser definidos através de dois arquivos .env, um na raiz do diretório, apenas com a configuração do banco de dados postgres, e outro de acordo com o conteúdo do arquivo server/.env.example, dentro da pasta server.
    • Atenção: Por padrão, sem a criação dos arquivo com as variáveis de ambiente, será utilizado o usuário padrão postgres e sem senha, o que pode causar uma falha de segurança.
  • frontend-application
    • Aplicação web front-end do meetapp. Acessível através do endereço localhost:3000
  • redis-database
    • Banco de dados Redis, utilizado para guardar a fila de tarefas.
  • mongo-database
    • Banco de dados mongoDB, utilizado para armazenamento de esquemas.
  • mailhog-mail-service
    • Serviço de email, capturando os emails enviados pela porta smtp. Acessível através do endereço localhost:8025
  • api-docs-application
    • Aplicação local da documentação da API. Acessível através do endereço localhost:5000
  • bee-queue-service
    • Serviço da fila de tarefas (emails), utilizando bee-queue.
  • backend-application
    • Aplicação backend da API. Acessível através da rota localhost:3333

A partir daqui, a aplicação já estará pronta para receber as requisições. Se deseja testar as rotas, o arquivo com a configuração de rotas para teste no insomnia está na pasta docs/src/insomnia.json. Faça o download e importe no Insomnia, que é uma ferramenta de testes de rotas, muito eficiente, prático, leve e customizável. Link para download.


Issues