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.