Este projeto, authentication-nodejs
, é uma API de autenticação construída utilizando TypeScript, Koa, Prisma e JWT (JSON Web Token). Tem como finalidade principal servir como um projeto pessoal para aprender e praticar mais sobre programação, autenticação e as tecnologias envolvidas.
Estas instruções fornecerão uma cópia do projeto em execução na sua máquina local para fins de desenvolvimento e teste.
O que você precisa para instalar o software e como instalá-los:
- Node.js (versão recomendada: 18.x ou superior)
- npm ou yarn
- Um banco de dados suportado pelo Prisma (PostgreSQL, MySQL, SQLite, etc.)
Um passo a passo que informa o que você deve executar para ter um ambiente de desenvolvimento rodando:
- Clone o repositório
git clone https://github.com/seu-usuario/authentication-nodejs.git
cd authentication-nodejs
- Instale as dependências
npm install
# ou
yarn install
- Configure as variáveis de ambiente
Copie o arquivo .env.example
para .env
e ajuste as variáveis conforme necessário.
- Execute as migrações do Prisma
npx prisma migrate dev
- Inicie o servidor de desenvolvimento
npm run dev
# ou
yarn dev
O servidor estará acessível em http://localhost:3000
.
A estrutura do projeto é organizada da seguinte forma:
authentication-nodejs/
├───prisma/
│ ├───schema.prisma # Define o modelo de dados
│ └───migrations/ # Contém as migrações do banco de dados
└───src/
├───controllers/
│ └───v1/ # Controladores para as rotas da API
├───middlewares/ # Middlewares do Koa, incluindo autenticação JWT
├───models/ # (Opcional) Modelos de dados se não estiver usando Prisma diretamente
├───routes/
│ └───v1/ # Definições de rotas da API
├───services/ # Serviços para lógica de negócios e interação com o banco de dados
├───utils/ # Funções utilitárias, como geradores de token JWT
└───__tests__/ # Testes para os componentes da aplicação
prisma/
: Contém o esquema do Prisma e as migrações para o banco de dados.src/
: Código fonte da aplicação, organizado por funcionalidade.
Este projeto é uma oportunidade para explorar conceitos de autenticação, segurança e desenvolvimento backend com tecnologias modernas. Sinta-se à vontade para experimentar, modificar e expandir o projeto conforme sua curiosidade e necessidades de aprendizado.
- Gustavo Sotero - Desenvolvedor Full Stack - gustavo-sotero
Este projeto está sob a licença MIT - veja o arquivo LICENSE.md para detalhes.
- Comente a outros sobre este projeto 📢
- Convide alguém da equipe para uma cerveja 🍺 ou um café ☕
- Obrigado publicamente 🤓.