Este é um projeto de uma biblioteca comunitária onde os usuários podem postar livros para compartilhar com outros usuários e também emprestar livros de outros membros da comunidade.
- Node.js (v14.x ou superior)
- npm (Node Package Manager) ou yarn
-
Clone o repositório:
git clone git@github.com:Mateus-Bittencourt/community_library.git
ou
git clone https://github.com/Mateus-Bittencourt/community_library.git
-
Acesse o diretório do projeto:
cd community-library
-
Instale as dependências:
Com npm:
npm install
Com yarn:
yarn install
-
Crie um arquivo
.env
na raiz do projeto e adicione suas variáveis de ambiente. Veja o exemplo abaixo:PORT=3000 SECRET=your_jwt_secret
Substitua
your_jwt_secret
por um hash SHA256 usada para assinar tokens JWT. -
Gerando uma chave secreta de SHA256:
Você pode gerar uma chave secreta com SHA256 executando o seguinte comando no terminal:
node -e "console.log(require('crypto').randomBytes(32).toString('hex'))"
Isso gerará uma chave secreta aleatória de 256 bits em formato hexadecimal.
-
Inicie o servidor:
Com npm:
npm start
Com yarn:
yarn start
-
O servidor estará em execução em
http://localhost:3000
.
- /users: Rotas para operações de usuários (criar, listar,buscar por ID, atualizar, excluir).
- /books: Rotas para operações de livros (criar, listar, buscar por ID, atualizar, excluir).
- /loans: Rotas para operações de empréstimos (criar, listar, buscar por ID, excluir).
- Node.js
- Express.js
- SQLite (ou outro banco de dados de sua escolha)
- JSON Web Tokens (JWT) para autenticação
- Zod para validação de esquemas de dados
Se você gostou do projeto e deseja contribuir, fique à vontade para abrir uma issue ou enviar um pull request. Todas as contribuições são bem-vindas!
Obrigado por acessar o projeto e por considerar contribuir para torná-lo ainda melhor!