Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

418 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PROAE Backend

Logo pgcomp

Sistema de gestão para a Pró-Reitoria de Ações Afirmativas e Assistência Estudantil da UFBA

Node.js NestJS PostgreSQL Docker TypeScript

🔧 Instalação Rápida

# Clonar repositório
git clone https://github.com/TSIW-PROAE/proae_backend

# Instalar dependências
npm install

# Rodar com Docker
docker-compose up -d

Nota: Configure o arquivo .env baseado no .env.example antes de rodar.

Rodar local (sem Docker)

O Nest compila para dist/src/main.js. Após npm run build, um dist/main.js é gerado automaticamente (redireciona para src/main.js), então node dist/main e node dist/src/main.js funcionam. npm run start:prod compila e sobe com node dist/main.js. Se aparecer Cannot find module '.../dist/main', rode npm run build em proae_backend (a pasta dist precisa existir).

☁️ Deploy GCP

Documento Conteúdo
DEPLOY.md Dois fluxos: deploy por aqui (PC / Cursor, gcloud builds submit) e por fora (Console, Cloud Shell, trigger Git)
README-CLOUD-RUN-CLOUD-SQL.md Infra: Cloud SQL, IAM, segredos, troubleshooting

📊 Estrutura Principal

src/
├── aluno      # Gestão de alunos
├── auth       # Autenticação
├── edital     # Gestão de editais
└── ...

📚 API (Atualizada em 26/06/2026)

A API não usa prefixo global (as rotas começam em /). Documentação interativa (Swagger): GET /api Health check: GET /health

🔐 Autenticação (/auth)

  • POST /auth/signup
  • POST /auth/login
  • POST /auth/logout
  • PATCH /auth/update-password
  • POST /auth/forgot-password
  • POST /auth/reset-password
  • POST /auth/validate-token
  • POST /auth/signup-admin
  • GET /auth/approve-admin/:token
  • GET /auth/reject-admin/:token
  • GET /auth/confirm-cadastro-aluno

👤 Aluno (/aluno) e benefícios (/beneficios)

  • POST /aluno/complete-cadastro
  • GET /aluno/me
  • GET /aluno/all
  • PATCH /aluno/update
  • GET /aluno/inscricoes
  • POST /aluno/inscricoes/:inscricaoId/recurso
  • GET /aluno/admin/por-edital/:editalId/alunos
  • GET /aluno/admin/:alunoId/resumo
  • GET /aluno/edital/:editalId/step/:stepId/alunos
  • DELETE /aluno/admin/:alunoId/perfil
  • GET /beneficios/aluno

👥 Admin (/admin)

  • GET /admin
  • PATCH /admin/update
  • GET /admin/listar
  • GET /admin/notificacoes-aprovacao
  • POST /admin/notificacoes-aprovacao
  • DELETE /admin/notificacoes-aprovacao/:emailId
  • PATCH /admin/:adminId/perfil
  • PATCH /admin/:adminId/aprovar
  • DELETE /admin/:adminId/rejeitar
  • DELETE /admin/:adminId/perfil

📋 Editais (/editais) e vagas (/vagas)

  • POST /editais
  • GET /editais
  • GET /editais/abertos
  • GET /editais/visiveis-aluno
  • GET /editais/:id
  • PATCH /editais/:id
  • GET /editais/:id/inscritos
  • PATCH /editais/:id/status/:status
  • DELETE /editais/:id
  • POST /vagas
  • GET /vagas/edital/:editalId
  • PATCH /vagas/:id
  • DELETE /vagas/:id

🧩 Formulários: steps, perguntas, respostas

Steps (/steps)

  • POST /steps
  • POST /steps/edital/:id/clonar-formulario
  • PATCH /steps/edital/:id/reordenar
  • GET /steps/edital/:id/with-perguntas
  • GET /steps/edital/:id
  • PATCH /steps/:id
  • DELETE /steps/:id

Perguntas (/perguntas)

  • POST /perguntas
  • GET /perguntas/step/:stepId
  • PATCH /perguntas/step/:stepId/reordenar
  • PATCH /perguntas/:id
  • DELETE /perguntas/:id

Respostas (/respostas)

  • POST /respostas
  • GET /respostas
  • GET /respostas/aluno/:alunoId/edital/:editalId/steps-completos
  • GET /respostas/aluno/:alunoId/edital/:editalId
  • GET /respostas/aluno/:alunoId/edital/:editalId/step/:stepId
  • GET /respostas/aluno/:alunoId/edital/:editalId/step/:stepId/perguntas-com-respostas
  • GET /respostas/pergunta/:perguntaId/edital/:editalId
  • PATCH /respostas/:id/reabrir-complemento
  • PATCH /respostas/:id/validate
  • GET /respostas/:id
  • PATCH /respostas/:id
  • DELETE /respostas/:id

📝 Inscrições (/inscricoes)

  • POST /inscricoes
  • PATCH /inscricoes/:id/correcao-respostas
  • PATCH /inscricoes/:id
  • GET /inscricoes
  • POST /inscricoes/cache/save/respostas
  • GET /inscricoes/cache/respostas/vaga/:vagaId
  • GET /inscricoes/admin/:id/status-audit
  • PATCH /inscricoes/admin/:id/status
  • PATCH /inscricoes/admin/:id/beneficio-edital
  • PATCH /inscricoes/admin/:id/resultado-recurso
  • GET /inscricoes/aprovados/pdf
  • GET /inscricoes/beneficiarios/pdf
  • GET /inscricoes/admin/:id/pdf
  • GET /inscricoes/admin/edital/:id/export.csv

📎 Documentos

Fluxo de documentos da inscrição (/documentos)

  • POST /documentos/upload
  • GET /documentos/inscricao/:inscricaoId
  • GET /documentos/:id
  • PUT /documentos/:id
  • DELETE /documentos/:id
  • GET /documentos/reprovados/meus
  • PUT /documentos/resubmissao/:id
  • GET /documentos/pendencias/meus

Armazenamento de arquivos (/documents)

  • POST /documents/upload
  • GET /documents/view?key=...
  • GET /documents/presigned?key=...
  • GET /documents/:filename

🧱 Dados auxiliares

  • POST /dado
  • GET /dado
  • GET /dado/:id
  • PATCH /dado/:id
  • DELETE /dado/:id
  • POST /valor-dado
  • GET /valor-dado/aluno/:alunoId
  • PATCH /valor-dado/:id
  • DELETE /valor-dado/:id
  • POST /validacao
  • GET /validacao
  • GET /validacao/:id
  • PATCH /validacao/:id
  • DELETE /validacao/:id

👥 Equipe

📄 Licença

MIT

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages