Visão geral
O TermoSupport é o painel de suporte da Termotubos: os colaboradores cadastram os sites, mantêm a base de conhecimento (documentos) de cada um e gerenciam a equipe e as permissões.
O sistema tem duas metades, no padrão de projeto da Termotubos:
| Parte | Endereço em dev | O que faz |
|---|---|---|
| Frontend (SvelteKit) | http://localhost:51050 | O painel dos colaboradores (/painel) e a landing page |
| Backend (Rust + Axum) | http://localhost:51051 | A API do painel |
| PostgreSQL (local) | localhost:5432 | Banco do app, no schema termosupport |
O que existe no painel
| Área | Rota | O que faz |
|---|---|---|
| Aplicativos | /painel/aplicativos | Cadastro dos sites: nome, endereço, cor, saudação e a base de conhecimento (documentos) |
| Colaboradores | /painel/colaboradores | Equipe sincronizada com o TermoAuth e as permissões de ler, criar, editar e deletar de cada área |
Integrações
| Integração | Pasta | Para que serve |
|---|---|---|
| TermoAuth | backend/integrations/termoauth/ | Valida o JWT do login central e lista os colaboradores para a sincronização |
Acesso
O login é do TermoAuth (app termo-suporte): 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 @termotubos.com.br, perfil colaborador, ativo e termoauth_id). O que cada pessoa enxerga vem de auth_permissao, por área. Master do TermoAuth entra sem cadastro e com tudo liberado. Não existe senha no TermoSupport.
Rodando localmente
| Serviço | Porta | Como subir |
|---|---|---|
| Frontend | 51050 | Configuração frontend do .claude/launch.json |
| Backend | 51051 | Configuração backend do .claude/launch.json |
| Documentação | 51052 | Configuração docs-projeto do .claude/launch.json |
| Diagrama do banco (ERD) | 51053 | Configuração database-erd do .claude/launch.json |
| Drizzle Studio | 51054 | Configuração database-studio do .claude/launch.json |
| PostgreSQL | 5432 | Serviço local do PostgreSQL; .claude/preparar-banco.sh cria o banco e aplica as migrations |
Esta é a primeira página da documentação do TermoSupport. As próximas páginas entram em docs/projeto/src/routes/docs/<pagina>/+page.md, e o menu lateral é definido em docs/projeto/src/navegacao.json.