API NestJS para gestão de estudantes e bolsas
Este projeto foi desenvolvido pela equipe Grupo 4 da Turma JavaScript 10:
- Bruno Pinheiro de Carvalho - Membro
- Gabrieli Martins - Membro
- Kauã Gabriel de Farias - Membro
- Assis Pires Neto - Membro
- LiA - Membro
- Patrícia Souza - Membro
- Pedro - Membro
O Path Educ é uma API construída com NestJS para gerenciamento de estudantes interessados em cursos e das bolsas de estudo disponíveis. O objetivo é oferecer uma base sólida para cadastro, consulta, atualização e vinculação de estudantes às bolsas, com integração a banco de dados relacional e boas práticas de desenvolvimento.
- Centralizar o cadastro e gestão de estudantes
- Gerenciar bolsas de estudo com regras de validade e status
- Permitir o vínculo entre estudantes e bolsas
- Disponibilizar endpoints simples e organizados (CRUD)
id: Identificador único da bolsanome: Nome da bolsaporcentagem: Percentual de desconto aplicadoinstituicao: Instituição responsável pela bolsacurso: Curso específico (opcional)validade: Data de validade da bolsaativa: Indicador se a bolsa está ativaestudante: Lista de estudantes vinculados (relacionamento)
id: Identificador único do estudantenome: Nome completoemail: E-mail válidoendereco: Endereço do estudanteidade: IdadecursoInteresse: Curso de interesseativo: Indicador se o cadastro está ativobolsa: Bolsa vinculada (relacionamento)
- ✅ Create - Criar Registros: Inserir novos estudantes e bolsas
- 📋 Read - Listar Registros: Consultar estudantes e bolsas disponíveis
- 🔍 Read - Buscar por ID: Visualizar detalhes de um estudante/bolsa específico
- 🔄 Update - Atualizar Registros: Modificar dados de estudantes e bolsas
- ❌ Delete - Remover Registros: Excluir estudantes e bolsas
- Atualização de Status: Atualizar status do bolsista/estudante (ativo ou inativo)
- NestJS - Framework progressivo para Node.js
- Node.js - Ambiente de execução JavaScript
- TypeScript - Linguagem de programação tipada
- MySQL - Sistema de gerenciamento de banco de dados relacional
- TypeORM - ORM para modelagem e consultas
- Insomnia ou Postman - Clientes API para testes
- VSCode - IDE
- Git - Controle de versão
- GitHub - Hospedagem de código
- Trello - Organização e gestão de tarefas
# Instalar dependências
npm install# Modo desenvolvimento
npm run start
# Modo desenvolvimento com watch (reinicia automaticamente)
npm run start:dev
# Modo desenvolvimento com .env
npm run start:env
# Modo debug
npm run start:debug
# Modo produção (após build)
npm run build
npm run start:prodA aplicação estará disponível em http://localhost:3000.
# Testes unitários
npm run test
# Testes em watch
npm run test:watch
# Testes e2e (end-to-end)
npm run test:e2e
# Cobertura de testes
npm run test:covsrc/
├── app.module.ts # Módulo raiz da aplicação
├── main.ts # Ponto de entrada da aplicação
├── bolsa/
│ ├── bolsa.module.ts # Módulo de bolsas
│ ├── controllers/
│ │ └── bolsa.controllers.ts # Controller de bolsas
│ ├── services/
│ │ └── bolsa.service.ts # Service de bolsas
│ └── entities/
│ └── bolsa.entity.ts # Entidade Bolsa (TypeORM)
└── estudante/
├── estudante.module.ts # Módulo de estudantes
├── controllers/
│ └── estudante.controller.ts # Controller de estudantes
├── services/
│ └── estudante.services.ts # Service de estudantes
└── entities/
└── estudante.entity.ts # Entidade Estudante (TypeORM)
Para fazer o deploy da aplicação NestJS em produção, consulte a documentação oficial de deployment.
npm install -g @nestjs/mau
mau deployEste é um projeto colaborativo da turma. Para contribuir:
- Faça um fork do projeto
- Crie uma branch para sua feature (
git checkout -b feature/NovaFeature) - Commit suas mudanças (
git commit -m 'Adiciona nova feature') - Push para a branch (
git push origin feature/NovaFeature) - Abra um Pull Request
Este projeto está sob a licença MIT. Veja o arquivo LICENSE para mais detalhes.
Desenvolvido com ❤️ pela equipe Grupo 4 - Turma JavaScript 10
