Abaixo estão algumas orientações e dúvidas comuns ao desenvolvimento do projeto.
Se houver qualquer outra dúvida ou problema, é só procurar a monitoria ou postar uma thread no slack.
‼️ Antes de começar a desenvolver
- Clone o repositório
Usar link SSH
- Entre na pasta do repositório que você acabou de clonar:
cd pasta-do-repositório
- Instale as dependências [Caso existam]
npm install
- Crie uma branch a partir da branch
main
-
Verifique se você está na branch
main
- Exemplo:
git branch
- Exemplo:
-
Se não estiver, mude para a branch
main
- Exemplo:
git checkout main
- Exemplo:
-
Agora crie uma branch à qual você vai submeter os
commits
do seu projeto -
Você deve criar uma branch no seguinte formato:
nome-de-usuario-nome-do-projeto
- Exemplo:
git checkout -b maria-sd-0x-trybe-futebol-clube
- Exemplo:
- Adicione as mudanças ao stage do Git e faça um
commit
-
Verifique que as mudanças ainda não estão no stage
- Exemplo:
git status
(deve aparecer listada a pasta maria em vermelho)
- Exemplo:
-
Adicione o novo arquivo ao stage do Git
- Exemplo:
git add .
(adicionando todas as mudanças - que estavam em vermelho - ao stage do Git)git status
(deve aparecer listado o arquivo maria/README.md em verde)
-
Faça o
commit
inicial- Exemplo:
git commit -m 'iniciando o projeto x'
(fazendo o primeiro commit)git status
(deve aparecer uma mensagem tipo nothing to commit )
- Exemplo:
- Adicione a sua branch com o novo
commit
ao repositório remoto
- Usando o exemplo anterior:
git push -u origin joaozinho-sd-0x-trybe-futebol-clube
- Crie um novo
Pull Request
(PR)
- Vá até a página de Pull Requests do repositório no GitHub
- Clique no botão verde "New pull request"
- Clique na caixa de seleção "Compare" e escolha a sua branch com atenção
- Clique no botão verde "Create pull request"
- Adicione uma descrição para o Pull Request e clique no botão verde "Create pull request"
- Volte até a página de Pull Requests do repositório e confira que o seu Pull Request está criado
⌨️ Durante o desenvolvimento
-
Faça
commits
das alterações que você fizer no código regularmente -
Lembre-se de sempre após um (ou alguns)
commits
atualizar o repositório remoto -
Os comandos que você utilizará com mais frequência são:
git status
(para verificar o que está em vermelho - fora do stage - e o que está em verde - no stage)git add
(para adicionar arquivos ao stage do Git)git commit
(para criar um commit com os arquivos que estão no stage do Git)git push -u nome-da-branch
(para enviar o commit para o repositório remoto na primeira vez que fizer opush
de uma nova branch)git push
(para enviar o commit para o repositório remoto após o passo anterior)
🤝 Depois de terminar o desenvolvimento (opcional)
Para "entregar" seu projeto, siga os passos a seguir:
- Vá até a página DO SEU Pull Request, adicione a label de "code-review" e marque seus colegas
- No menu à direita, clique no link "Labels" e escolha a label code-review
- No menu à direita, clique no link "Assignees" e escolha o seu usuário
- No menu à direita, clique no link "Reviewers" e digite
students
, selecione o timetryber/students-sd-xx
ondexx
é o número da sua turma
Se ainda houver alguma dúvida sobre como entregar seu projeto aqui tem um video explicativo.
🕵🏿 Revisando um pull request
Use o conteúdo sobre Code Review para te ajudar a revisar os Pull Requests.
🕵️ Use a versão 16.14.0 LTS ou superior do Node
-
O
node
deve ter versão igual ou superior à16.14.0 LTS
; -
Para gerenciar as versões do node e utilizar a versão correta, utilize/instale o nvm, acesse esse link;
-
Rode os comandos abaixo para instalar a versão correta de
node
e usá-la:nvm install 16.14 --lts
nvm use 16.14
nvm alias default 16.14
🕵️ Linter
Para garantir a qualidade do código, usaremos o ESLint para fazer a sua análise estática.
Este projeto já vem com as dependências relacionadas ao linter configurada no arquivo package.json
no seguinte caminho:
sd-0x-trybe-futebol-clube/app/backend/package.json
Para rodar o ESLint
em um projeto, basta executar o comando npm install
dentro do projeto e depois npm run lint
. Se a análise do ESLint
encontrar problemas no seu código, tais problemas serão mostrados no seu terminal. Se não houver problema no seu código, nada será impresso no seu terminal.
Você também pode instalar o plugin do ESLint
no VSCode
: bastar ir em extensions e baixar o plugin ESLint
.
🧪 Executando testes do avaliador com Puppeteer
Usaremos o Puppeteer para fazer os testes automatizados. Os testes estão localizados na pasta __tests__/E2E/
.
Os testes devem ser executados na raiz do projeto. Seguem algumas maneiras de executar os testes:
Comando | Resultado |
---|---|
npm test |
Executa todos os testes pelo terminal |
npm test 01_database.test.js |
Executa todos os testes do arquivo 01_database.test.js |
npm run test:browser |
Abre uma janela no Chrome, demonstrando a realização dos testes de maneira visual |
npm run test:debug |
Executa os testes pelo terminal e printa algumas informações adicionais para ajudar a debugar o erros encontrados |
🧪 Executando testes com Mocha
Você irá escrever testes de integração para o código que desenvolveu. Os testes deverão ser escritos na pasta app/backend/src/tests/
, conforme o exemplo em app/backend/src/tests/change.me.test.ts
.
Além do Mocha, Chai e Sinon, usaremos o Istambul para analisar a cobertura de testes.
É possível rodá-los diretamente dentro da pasta de backend fora do container. Seguem algumas maneiras de rodar os testes com Mocha:
Comando | Resultado |
---|---|
npm run test |
Executa todos os testes pelo terminal |
npm run test:coverage |
Executa todos os testes e mostra a cobertura de testes |
👀 Comandos úteis
Comando | Resultado |
---|---|
npm run install:apps |
Instala as dependências de front-end e back-end localmente |
npm run compose:up |
Sobe todos os containers da sua aplicação |
npm run compose:down |
Derruba todos os containers da sua aplicação |
npm run logs [nome_do_servico] |
Acompanhar os logs de algum container na aplicação ([nome_do_servico] é opcional e pode receber os serviços backend, frontend ou db) |
⚠️ Não execute comandos do Git dentro do container
- O git dentro do container não vem configurado com suas credenciais. Ou faça os commits fora do container, ou configure as suas credenciais do git dentro do container.
⚠️ Use a versão 2.5 ou superior do Docker Compose
-
Para garantir o funcionamento adequado do seu projeto com Docker e do avaliador, é fundamental que o seu 'docker-compose' esteja na versão 2.5 ou superior.".
-
Verifique sua versão:
docker-compose --version
- Se não for a versão 2.5 ou superior, faça os seguintes comandos para atualizar a versão:
sudo rm /usr/local/bin/docker-compose
sudo curl -L "https://github.com/docker/compose/releases/download/v2.5.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
🗣 Nos dê feedbacks sobre o projeto!
Ao finalizar e submeter o projeto, não se esqueça de avaliar sua experiência preenchendo o formulário. Leva menos de 3 minutos!
🗂 Compartilhe seu portfólio!
Após finalizar os requisitos, chegou a hora de mostrar ao mundo que você aprendeu algo novo! 🚀
Siga esse guia que preparamos com carinho para disponibilizar o projeto finalizado no seu GitHub pessoal.
Esse passo é super importante para ganhar mais visibilidade no mercado de trabalho, mas também é útil para manter um back-up do seu trabalho.
E você sabia que o LinkedIn é a principal rede social profissional e compartilhar o seu aprendizado lá é muito importante para quem deseja construir uma carreira de sucesso? Compartilhe esse projeto no seu LinkedIn, marque o perfil da Trybe (@trybe) e mostre para a sua rede toda a sua evolução.