O projeto visa a criação de questões de medicina modelo ENADE mediante solicitação do usuário, uso de agentes e interação com o LM Studio.
Tip
Use a extensão live server do VSCode.
pip install -r requirements.txt
Defina uma chave para assinar os tokens JWT antes de subir o Flask (Ex.: PowerShell):
$Env:JWT_SECRET="uma-chave-secreta-bem-grande"
Use o mesmo terminal para iniciar o servidor ou exporte a variável de acordo com seu SO.
python server.py
Warning
O comando deve ser realizado dentro do diretório \projetoIntegrador\server.
Warning
A opção fica no menu lateral, na aba Developer.
- Cadastro: o formulário "Cadastro de Médico" agora envia
nome,emailesenhaparaPOST /register. A senha é armazenada com hash dentro deusuarios.db. - Login: o formulário de login chama
POST /login, que devolve um JWT (Authorization: Bearer ...). O token é guardado nolocalStoragedo navegador e enviado automaticamente para rotas protegidas. - Sessão: ao recarregar a página usamos
GET /mepara validar o token antes de mostrar o dashboard. - Proteção: o endpoint
POST /gerar_questaoexige JWT válido, garantindo que apenas usuários autenticados consigam gerar questões com a IA.
| Método | Rota | Corpo | Descrição |
|---|---|---|---|
POST |
/register |
{ "name": "Dr. Ana", "email": "ana@exemplo.com", "password": "senha123" } |
Cria usuário em usuarios.db e retorna { user, token }. |
POST |
/login |
{ "email": "ana@exemplo.com", "password": "senha123" } |
Valida credenciais e retorna { user, token }. |
GET |
/me |
— | Retorna o usuário associado ao token enviado em Authorization: Bearer .... |
POST |
/gerar_questao |
{ "especialidade": "Cardiologia", "dificuldade": "medium", "prompt": "..." } |
Gera nova questão (requer token). |
| Home |
|---|
![]() |
| Gerador de Questões |
|---|
![]() |

