Qualidade Informacional API é um projeto desenvolvido com o framework NestJS para gerenciar pesquisas de usuários. Ele utiliza MongoDB como banco de dados, Redis para cache e Nodemailer para envio de emails.
-
Clone o repositório:
git clone https://github.com/cleitonpin/qualidade-informacional-api.git cd qualidade-informacional-api -
Instale as dependências:
npm install
-
Configure as variáveis de ambiente: Crie um arquivo
.env.developmentna raiz do projeto e adicione as seguintes variáveis:DATABASE_URL=<sua-url-do-mongodb> EMAIL_HOST=<seu-host-de-email> EMAIL_PORT=<sua-porta-de-email> EMAIL_USER=<seu-usuario-de-email> EMAIL_PASSWORD=<sua-senha-de-email> REDIS_HOST=localhost REDIS_PORT=6379
-
Inicie o servidor de desenvolvimento:
npm run start:dev
-
Acesse a aplicação em
http://localhost:3000.
src: Diretório contendo o código-fonte da aplicação.common: Diretório contendo classes e funções comuns a toda a aplicação.utils: Diretório contendo funções utilitárias.errors: Diretório contendo classes e funções para tratamento de erros comuns.views: Diretório contendo templates de emails.
config: Diretório contendo arquivos de configuração da aplicação.modules: Diretório contendo os módulos da aplicação.userPoll: Módulo de pesquisas de usuários.users: Módulo de usuários.
app.controller.ts: Controlador principal da aplicação.app.module.ts: Módulo principal da aplicação.app.service.ts: Serviço principal da aplicação, contendo a lógica de negócio geral.main.ts: Arquivo de inicialização da aplicação.
test: Diretório contendo os testes da aplicação..env.development: Arquivo de configuração das variáveis de ambiente para o ambiente de desenvolvimento..eslintrc.js: Arquivo de configuração do ESLint..gitignore: Arquivo de configuração do Git para ignorar arquivos e diretórios.Jenkinsfile: Arquivo de configuração do Jenkins.LICENSE: Arquivo de licença do projeto.
Para executar os testes, utilize o comando:
npm run testPara gerar o relatório de cobertura de testes, utilize o comando:
npm run test:covContribuições são bem-vindas! Sinta-se à vontade para abrir issues e pull requests.
Este projeto está licenciado sob a licença MIT. Veja o arquivo LICENSE para mais detalhes.