Esse projeto é uma API REST em Node, usando Express, MySQL e TypeScript, feito para ser forkado e usado em projetos pessoais.
Teoricamente, está tudo configurado, seja para desenvolvimento ou produção.
Como é um projeto npm, você precisará de node instalado na sua máquina.
O arquivo principal é o index.ts, e nele está a API em Express, crie uma pasta para rotas e defina caminhos para a API conforme precisar.
Esse comando irá ler o arquivo package.json e instalar todas as dependências necessárias do projeto.
NÃO FUNCIONARÁ SEM ESSA ETAPA
npm installPara configurar o banco de dados, você precisará criar um arquivo .env na raiz do projeto. As variáveis de ambiente necessárias são:
DB_HOST="endereço do banco de dados"
DB_PORT=3306
DB_USER="nome de usuário"
DB_PASSWORD="senha do usuário"
DB_DATABASE="nome do banco de dados"Note que são as exatas mesmas informações que usamos para conexão em Spring ou no Workbench.
Se quiser, poderá adicionar variável extra PORT você pode mudar a porta que o servidor irá rodar.
Nota: Se você for usar um banco de dados que não seja o da escola, talvez seja necessário incluir a variável
DB_SSLcom o valortrue. O servidor da escola não precisa disso.
Compila o projeto e inicia a API. É o que deve ser usado na produção (ou seja, no servidor oficial). Útil para scripts de deploy.
Irá compilar seu projeto todo para um único arquivo javascript, na pasta dist/.
Irá executar o arquivo compilado pelo npm run build, que está na pasta dist/.
Note que você deve executar o npm run build antes de executar esse comando.
Executa seu projeto imediatamente, sem compilar. Útil para testar a API de forma rápida ou verificar se está funcionando. Como o nome diz, te fornece uma prévia da sua aplicação.
Nota: É mais lento que o
npm starte não deve ser usado em produção.
Inicia a API sem compilar, e reinicia ela a cada alteração de arquivo. Permite obter feedback rapidamente durante o desenvolvimento.
Na maior parte do tempo durante o desenvolvimento, você vai estar rodando isso.
Formata o código, adicionando espaços, quebras de linha, mudando a indentação, etc. Permite garantir um estilo de código consistente no projeto todo.
Especialmente útil para grupos que incluam pessoas que não sabem o que é um tab.
Verifica erros e warnings, além de algumas regras de formatação. É o tipo de coisa que idealmente temos na IDE, mas JavaScript não é uma linguagem de verdade e não tem.
Verifica erros, warnings e algumas regras de formatação e corrige o que consegue. Útil.
Executa npm run format e npm run lint:fix juntos.
Rode isso antes de dar push de vez em quando.