Visão geral
O TermoStudio nasceu do TermoSell, só com o que é comum a todo app da Termotubos: o login pelo TermoAuth e o cadastro de colaboradores com suas permissões. Tudo o que for do Studio entra daqui para a frente, no padrão de projeto.
| Parte | Endereço em dev | O que faz |
|---|---|---|
| Frontend (SvelteKit) | http://localhost:51110 | O painel dos colaboradores (/painel) e a landing page |
| Backend (Rust + Axum) | http://localhost:51111 | A API e a validação do token do TermoAuth |
| PostgreSQL (Docker) | localhost:51119 | Banco do app, no schema termostudio |
O que existe no painel
| Área | Rota | O que faz |
|---|---|---|
| Colaboradores | /painel/colaboradores | Cadastro dos colaboradores e das permissões de ler, criar, editar e deletar |
Acesso
O login é do TermoAuth (app termo-studio): o frontend manda a pessoa para o /handoff do TermoAuth, recebe o JWT em /painel#token= e o envia em Authorization: Bearer a toda chamada. O backend valida o token offline pelo JWKS do TermoAuth e libera só quem tem cadastro ativo na tabela auth (e-mail, perfil colaborador, ativo e termoauth_id). Não existe senha no TermoStudio.
O app termo-studio precisa estar registrado no TermoAuth para o login funcionar.
Rodando localmente
| Serviço | Porta | Como subir |
|---|---|---|
| Frontend | 51110 | Configuração frontend do .claude/launch.json |
| Backend | 51111 | Configuração backend do .claude/launch.json |
| Documentação | 51112 | Configuração docs-projeto do .claude/launch.json |
| Diagrama do banco (ERD) | 51113 | Configuração database-erd do .claude/launch.json |
| Drizzle Studio | 51114 | Configuração database-studio do .claude/launch.json |
| PostgreSQL | 51119 | docker compose up -d na raiz |
Nesta página