A book-manager-api é um projeto que fornece funcionalidades relacionadas a uma livraria, incluindo operações CRUD (Create, Read, Update, Delete) para autores e livros. Abaixo, fornecerei uma breve descrição de cada parte do projeto:
- Clone o repositório:
git clone https://github.com/KevynMurilo/API-LIVRARIA-ATUALIZADA.git
- Instale as dependências:
npm install
- Crie um arquivo
.env
na raiz do seu projeto e adicione as seguintes configurações:
DB_CONNECT_STRING
: String de conexão com o banco de dados MongoDB.PORT
: Porta na qual o servidor será executado.
- Execute o comando:
npm start
A estrutura do projeto é organizada da seguinte forma:
- dbConnect.js: Configuração de conexão com o banco de dados MongoDB.
- autor.controller.js: Controlador para operações relacionadas a autores.
- livro.controller.js: Controlador para operações relacionadas a livros.
- erroBase.js: Classe base para manipulação de erros.
- ReqInvalido.js: Classe para representar erros de requisição inválida.
- ValidationError.js: Classe para representar erros de validação.
- erro404.js: Classe para representar erros de página não encontrada.
- manipulador404.js: Middleware para manipular erros 404.
- manipuladorDeErros.js: Middleware para manipular diferentes tipos de erros.
- paginas.js: Middleware para paginar resultados.
- validadorGlobal.js: Validador global para campos de string.
- autor.model.js: Modelo de dados para autores.
- livro.model.js: Modelo de dados para livros.
- validadorGlobal.js: Validador global para campos de string.
- index.js: Arquivo de índice para modelos de dados.
- autor.route.js: Rotas relacionadas a autores.
- livro.route.js: Rotas relacionadas a livros.
- index.js: Arquivo de índice para rotas.
Configuração principal do aplicativo Express.
Arquivo de configuração para variáveis de ambiente.
Arquivo para inicialização do servidor.
Recupera uma lista de autores.
Recupera um autor específico com base no ID.
Cadastra um novo autor.
Atualiza informações de um autor existente.
Exclui um autor com base no ID.
Recupera uma lista de livros.
Recupera uma lista de livros filtrados por diferentes critérios.
Recupera informações detalhadas de um livro com base no ID.
Cadastra um novo livro.
Atualiza informações de um livro existente.
Exclui um livro com base no ID.
Contribuições são bem-vindas! Sinta-se à vontade para abrir um problema ou enviar um pull request.