Skip to content

luiisp/gen-api

Repository files navigation

Gen Api 🪄🧶

License: MIT GitHub last commit en

Speak in English? Access Readme.md in English

Tag this project with a star 🌟

Gen Api é um Api RestFul feita utilizando Node js, Express, Jest, Jwt, Swagger Docker e Prisma. A api tem como objetivo gerenciar usuários e realizar autenticação segura.

🎉 Features

  • Testes automatizados com Jest
  • Cadastro de usuários
  • Documentação com Swagger
  • Autenticação de usuários com JWT
  • Listagem de usuários + Paginação
  • Atualização de usuários
  • Deleção de usuários
  • Validação de dados com Yup
  • Criptografia de senhas com Bcrypt
  • Banco de dados Postgres com Prisma + Docker

💻 Tecnologias

  • Node Js (Runtime)
  • Express (Framework)
  • Prisma (ORM)
  • Swagger (Documentação)
  • Docker + Postgres (Banco de dados)
  • Jest (Testes)
  • JWT (Autenticação)
  • Bcrypt (Criptografia)
  • Yup (Validação de dados)

📚 Project Structure

O projeto foi estruturado seguindo alguns padrões de arquitetura para melhor organização e escalabilidade.

src/
  ├── docs/
  ├── middlewares/
  ├── routes/
  ├── repositorys/
  ├── validations/
  ├── test/
  ├── utils/
  ├── index.js
.env
.docker-compose.yml
.jest.config.js
swagger.js
server.js

Screenshots

Testes automatizados com Jest

image

Documentação com Swagger

image

Validação de dados com Yup

image

Cadastro de usuários

image

Autenticação de usuários com JWT

image

Listagem de usuários + Paginação

image

☕ Instalação

  • Clone o repositório: git clone https://github.com/luiisp/gen-api

  • Entre no diretorio do projeto: cd gen-api

  • Instale as dependências: yarn install ou npm install

  • Crie um arquivo .env e adicione as variáveis de ambiente conforme o arquivo .env.example

  • suba o banco de dados com docker: docker-compose up -d

  • Execute as migrations: yarn prisma ou npx prisma

  • Inicie o servidor: yarn dev ou npm run dev

👁️‍🗨️ Testes

Para rodar os testes, execute o comando: yarn test ou npm run test

📝 Documentação

Para acessar a documentação da api, acesse o endpoint: /docs

Para gerar documentação automaticamente com Swagger, execute o comando: yarn docs ou npm run docs

🧑‍💻 Author

Pedro Luis Dias (Luiisp) https://github.com/luiisp

About

🪄🧶 A RestFul Node.js API for user management, JWT authentication, unit tests with JEST and Swagger documentation.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published