Skip to content
@TSIW-PROAE

Sistema PROAE

PROAE - Sistema de Gestão para Pró-Reitoria de Ações Afirmativas e Assistência Estudantil

Logo PROAE

🚀 Missão: Aprimorar a gestão da assistência estudantil da UFBA, promovendo inclusão e equidade.

Visão: Ser referência em gestão de ações afirmativas e assistência estudantil, com um sistema moderno, eficiente e transparente.

Índice


Objetivos e Contexto

Desenvolvido para a disciplina Tópicos em Sistemas de Informação e Web I (IC045/MATE85) na UFBA, o PROAE visa construir um sistema de gestão completo para a Pró-Reitoria de Ações Afirmativas e Assistência Estudantil. O projeto é mantido pela organização TSIW-PROAE no GitHub e busca centralizar informações, automatizar processos, melhorar a comunicação com estudantes e aprimorar a transparência na gestão da assistência estudantil.

Tecnologias

Frontend:

  • React.js: Biblioteca JavaScript para construção de interfaces de usuário.
  • TypeScript: Superset de JavaScript que adiciona tipagem estática.
  • Vite: Ferramenta de build para desenvolvimento web rápido.

Backend:

  • Node.js: Ambiente de execução JavaScript para backend.
  • NestJS: Framework para construir aplicações Node.js escaláveis e eficientes.
  • PostgreSQL: Sistema de gerenciamento de banco de dados relacional.
  • Docker: Plataforma para conteinerização de aplicações.
  • Docker-Compose: Ferramenta para orquestrar múltiplos containers Docker.
  • Type-ORM: Ferramenta que permite a interação com bancos de dados relacionais usando a abordagem orientada a objetos.
  • TypeScript: Superset de JavaScript que adiciona tipagem estática.

Estrutura do Projeto

O projeto é dividido em três repositórios com algumas documentações em destaque, como:

  1. [Documentação]: content_copy download Use code with caution. Markdown project_management/ technical_documentation/ requirements/ design/ guidelines/ references/ miscellaneous/

  2. [Frontend]:) content_copy download Use code with caution. proae-frontend/ ├── public/ ├── src/ │ ├── assets/ │ ├── components/ │ ├── context/ │ ├── features/ │ ├── hooks/ │ ├── pages/ │ ├── services/ │ ├── styles/ │ ├── utils/ │ ├── App.tsx │ ├── main.tsx │ └── setupTests.ts ├── .env ├── package.json └── README.md

  1. Backend: A estrutura do backend será definida de acordo com as melhores práticas do NestJS e poderá incluir pastas como src, dist, node_modules, entre outras. Detalhes da estrutura serão documentados no repositório do backend.
  2. Documento de requisitos: Esse documento contém todos os requisitos do projeto definidos pela equipe junto ao cliente através de conversas e reuniões formais.
  3. Prototipação: Esse documento contém a prototipação do projeto levando em consideração todos os requisitos funcionais decididos previamente.
  4. Atas de reunião gerais: Essa pasta contém todas as atas de reuniões realizadas. Nessas atas buscamos expor todas as tomadas de decisões da equipe, assim como todos os detalhes das nossas reuniões de time.

Fluxo de Trabalho

  • Gitflow: Utilização do workflow Gitflow para organização das branches (develop, feature, release, hotfix).
  • Pull Requests: Abertura de Pull Requests para revisão de código antes da integração com a branch principal.
  • Commit Messages: Padronização das mensagens de commit para clareza e organização do histórico do projeto (ex: feat: adiciona nova funcionalidade, fix: corrige bug).
  • Coding Standards: ESLint e Prettier serão utilizados para garantir a qualidade e consistência do código. As configurações serão definidas em arquivos de configuração específicos em cada repositório.

Testes

  • Frontend: Testes unitários e de integração utilizando Jest e React Testing Library.
  • Backend: Testes unitários e de integração utilizando Jest. A cobertura de testes será monitorada para garantir a qualidade do código.

Ambiente de Desenvolvimento

  • Docker e Docker Compose serão utilizados para garantir um ambiente de desenvolvimento consistente e facilitar a configuração.
  • Um arquivo docker-compose.yml será criado para definir os serviços e suas dependências.

Segurança

  • JWT (JSON Web Tokens): Utilização de JWT para autenticação e autorização de usuários.
  • Controle de Acesso Baseado em Roles: Níveis de acesso diferenciados para diferentes tipos de usuários (administradores, assistentes sociais, alunos).
  • Medidas de segurança: Implementação de medidas para prevenir ataques comuns como SQL Injection, Cross-Site Scripting (XSS) e Cross-Site Request Forgery (CSRF). Serão utilizadas bibliotecas e técnicas de segurança para proteger o sistema contra essas vulnerabilidades.

Documentação

  • Documentação da API (Backend): Swagger será utilizado para documentar a API REST.
  • Documentação do Código: JSDoc será utilizado para documentar o código-fonte.
  • Arquitetura do Sistema: Diagramas e descrições detalhadas da arquitetura do sistema serão incluídos na documentação. Diagramas serão criados utilizando ferramentas como Mermaid ou Draw.io.
  • Organização da Documentação: A documentação será mantida organizada e atualizada no repositório proae_documents.

Colaboradores

Frontend:

Foto do Hevelin no GitHub
Hevelin Freitas
Foto do Hevelin no GitHub
Mauricio Menezes
Foto do Steve Jobs
Caio Alcarria
Foto do Allan no GitHub
Allan Oliveira
Foto do Luiz Antonio
Luiz Antonio

Backend:

Foto do Thales no GitHub
Thales Macêdo
Foto do Maurício no GitHub
Mauricio Menezes
Foto do Hugo no GitHub
Hugo Chaves
Foto da Jessica no GitHub
Jessica Ellen
Foto do Lucas no GitHub
Lucas Lima
Foto do Marcos no GitHub
Marcos Vinicius
Foto do Matheus no GitHub
Matheus Salaroli

Licença

O projeto PROAE é licenciado sob a Creative Commons Attribution 4.0.

Contato

Popular repositories Loading

  1. proae_frontend proae_frontend Public

    TypeScript 1

  2. proae_backend proae_backend Public

    TypeScript

  3. proae_documents proae_documents Public

  4. .github .github Public

Repositories

Showing 4 of 4 repositories
  • TSIW-PROAE/proae_frontend’s past year of commit activity
    TypeScript 1 MIT 0 0 0 Updated Apr 23, 2025
  • proae_backend Public
    TSIW-PROAE/proae_backend’s past year of commit activity
    TypeScript 0 0 0 1 Updated Apr 23, 2025
  • TSIW-PROAE/proae_documents’s past year of commit activity
    0 0 0 0 Updated Apr 17, 2025
  • .github Public
    TSIW-PROAE/.github’s past year of commit activity
    0 0 0 0 Updated Apr 12, 2025

Top languages

Loading…

Most used topics

Loading…