Este projeto consiste em duas partes: uma API para gerenciar cartas (Cards API
) e outra para gerenciar estudantes (Students API
). Ambas as APIs seguem uma estrutura similar, com operações CRUD (Create, Read, Update, Delete) para suas respectivas entidades.
-
API de Cartas (
Cards API
):models/Cards/Cards.js
: Módulo que contém as classesCard
eCardList
para representar cartas e listas de cartas, respectivamente.controllers/cardsController.js
: Controladores para manipular operações CRUD em cartas.routes/cards.routes.js
: Roteador que define as rotas para as operações de cartas.
-
API de Estudantes (
Students API
):models/Students/Students.js
: Módulo que contém as classesStudent
eStudentList
para representar estudantes e listas de estudantes, respectivamente.controllers/studentsController.js
: Controladores para manipular operações CRUD em estudantes.routes/students.routes.js
: Roteador que define as rotas para as operações de estudantes.
-
Roteador Principal (
index.js
):routes/index.js
: Roteador principal que agrupa os roteadores deCards API
eStudents API
e define uma rota de boas-vindas para a API.
-
Clonar o Repositório:
git clone https://seu-repositorio.git cd seu-repositorio
-
Instalar Dependências:
npm install
-
Iniciar o Servidor:
npm start
- Rota:
GET /cards/
- Descrição: Retorna todas as cartas cadastradas.
- Exemplo de Uso:
GET /cards/
- Rota:
GET /cards/:id
- Descrição: Retorna uma carta com o ID correspondente.
- Exemplo de Uso:
GET /cards/123
- Rota:
POST /cards/
- Descrição: Cria uma nova carta com os dados fornecidos.
- Exemplo de Uso:
POST /cards/
- Rota:
PUT /cards/:id
- Descrição: Atualiza os dados de uma carta existente.
- Exemplo de Uso:
PUT /cards/123
- Rota:
DELETE /cards/:id
- Descrição: Deleta uma carta com o ID correspondente.
- Exemplo de Uso:
DELETE /cards/123
- Rota:
GET /students/
- Descrição: Retorna todos os estudantes cadastrados.
- Exemplo de Uso:
GET /students/
- Rota:
GET /students/:id
- Descrição: Retorna um estudante com o ID correspondente.
- Exemplo de Uso:
GET /students/abc
- Rota:
POST /students/
- Descrição: Cria um novo estudante com os dados fornecidos.
- Exemplo de Uso:
POST /students/
- Rota:
PUT /students/:id
- Descrição: Atualiza os dados de um estudante existente.
- Exemplo de Uso:
PUT /students/abc
- Rota:
DELETE /students/:id
- Descrição: Deleta um estudante com o ID correspondente.
- Exemplo de Uso:
DELETE /students/abc
- As classes
Card
eStudent
contêm métodos para gerar IDs únicos. - A validação de URLs e campos de entrada vazios é realizada nos métodos apropriados das classes.
- As rotas principais da API estão definidas em
routes/index.js
, que inclui os roteadores de cartas e estudantes. - A aplicação utiliza o pacote
express
para gerenciar rotas e o pacoteuuid
para gerar IDs únicos.
Espero que esta documentação ajude a entender a estrutura e a funcionalidade do projeto. Se houver alguma dúvida ou necessidade de esclarecimentos adicionais, sinta-se à vontade para perguntar.