Interface web para gerenciamento de Trabalhos de Conclusão de Curso (TCCs) da UFFS.
Sistema frontend para controle e gestão de TCCs, oferecendo interfaces para docentes, discentes e coordenadores. A aplicação permite gerenciar todo o fluxo de trabalho acadêmico, incluindo propostas de temas, orientações, bancas examinadoras, disponibilidades, convites, defesas e declarações.
- React 19
- React Router 7
- Material-UI (MUI) 7
- Vite
- Axios
- Recharts (gráficos e visualizações)
- date-fns (manipulação de datas)
- html2pdf.js (geração de PDFs)
- Node.js (versão 14 ou superior)
- Yarn ou npm
- API backend do sistema (controle-tccs-api)
yarn installou
npm install- Configure a URL da API backend editando o arquivo de configuração do Axios em
src/auth/axios.js:
const API_BASE_URL = 'http://localhost:3010/api';- Certifique-se de que a API backend está rodando e acessível.
Para iniciar o servidor de desenvolvimento:
yarn startA aplicação estará disponível em http://localhost:5173
Para gerar o build de produção:
yarn buildPara visualizar o build de produção localmente:
yarn servesrc/
├── auth/ # Configuração de autenticação e Axios
├── components/ # Componentes React
│ ├── App.jsx
│ ├── Login.jsx
│ ├── Dashboard.jsx
│ ├── ModuloDiscente.jsx
│ ├── ModuloOrientador.jsx
│ └── ...
├── contexts/ # Contextos React (Auth, Permissions)
├── enums/ # Enumerações e constantes
├── hooks/ # Custom hooks
├── services/ # Serviços de API
├── utils/ # Utilitários e helpers
├── entry.client.tsx # Ponto de entrada do cliente
├── root.tsx # Componente raiz
└── routes.ts # Configuração de rotas
- Visualização do perfil acadêmico
- Acompanhamento do processo de TCC
- Visualização de temas disponíveis
- Acompanhamento de orientação
- Informações sobre banca e defesa
- Gerenciamento de orientandos
- Criação e gerenciamento de temas de TCC
- Envio de convites para orientação
- Gerenciamento de disponibilidade para bancas
- Visualização de convites recebidos
- Avaliação de defesas
- Emissão de declarações
- Dashboard com estatísticas gerais
- Gerenciamento de docentes e discentes
- Gerenciamento de cursos e ofertas de TCC
- Acompanhamento de orientações e defesas
- Visualização de gráficos e relatórios
- Controle de datas de defesa
- Gerenciamento de bancas por curso
Apresenta estatísticas e gráficos sobre:
- Distribuição de estudantes por etapa do TCC
- Convites de orientação por período
- Convites para bancas
- Defesas por docente
- Orientandos por docente
- Perfil do discente
- Stepper de acompanhamento do TCC
- Visualização de temas disponíveis
- Informações sobre orientação atual
- Perfil do orientador
- Gerenciamento de temas
- Controle de orientandos
- Gestão de disponibilidade para bancas
- Convites recebidos e enviados
- Avaliação de defesas
- Cadastro e edição de docentes
- Cadastro e edição de discentes
- Gerenciamento de cursos
- Controle de orientações
- Agendamento de defesas
- Gerenciamento de bancas
A aplicação utiliza autenticação JWT (JSON Web Token). O token é armazenado localmente e enviado automaticamente em todas as requisições através de um interceptor do Axios.
O sistema implementa controle de permissões baseado em grupos e categorias, sincronizado com o backend. Os componentes e funcionalidades são renderizados condicionalmente de acordo com as permissões do usuário.
A aplicação suporta tema claro e escuro, com alternância através do componente ThemeSwitch.
MIT
Giancarlo Salton - [email protected]
https://github.com/ccuffs/controle-tccs-front
Este frontend consome a API REST do projeto controle-tccs-api. Consulte a documentação da API para mais informações sobre os endpoints disponíveis.