/auth-jwt-passport-nest

Sistema base em Nest pronto e pré-configurado para começar projetos incríveis de backend com autenticação profissional!

Primary LanguageTypeScript

Nest Logo

Uma aplicação desenvolvida em Typescript usando Nestjs Framework

Autenticação com JWT e Passport

Commitizen friendlyConventional Commits

Sistema base pré-ajustado para começar projetos incríveis com autenticação profissional. Basta clonar o repositório e começar novos projetos com o código base já pronto!

Painel Administrativo

Um painel administrativo pré configurado e pronto para iniciar novos projetos, dando acesso à dados sensíveis do sistema apenas para administradores com permissões válidas para cada operação específica

Permissões e grupos

Contas de administrador possuem uma role, que é formada por uma agregação de várias permissões, que definem quais recursos a conta poderá acessar dentro do sistema

Configuração do ambiente

Crie um arquivo .env baseado no .env.example disponível na raíz do projeto.

Suba um banco de dados Postgre. Você pode usar o script do package.json pronto para a tarefa usando o Docker:

npm run postgre:test

Iniciando a API em ambiente de desenvolvimento

npm start

Debug

Após iniciar o Debug (F5), aguarde a mensagem "API pronta e ouvindo na porta 3000" no terminal do debugger antes de iniciar a sua depuração.

Ativação de contas de usuário

As contas de usuário entram no sistema como pendentes ao serem cadastradas, o que não permite o login. Se as configurações de ambiente (.env) estiverem com os dados de email corretamente configurados, o sistema enviará um email de confirmação para o email do usuário, e ao clicar no link, a conta é ativada e o usuário poderá se logar.

Email Email

Documentação dos endpoints

A API foi documentada com o novo Swagger 4, facilitando ao máximo a vida do time de front-end. para consultar a documentação, basta subir a api e acessar a rota raiz.

Swagger Swagger

Para consultar a documentação de uma rota, basta clicar nela, expandindo seus dados:

Swagger Swagger Swagger

Banco de dados

Diagrama de estado 1