# Criar uma nova instituição

1. Duplicar: `git clone /caminho/uneed-institution-baseline cliente-novo`; remover o remote de origem e criar um remote próprio. Nunca copiar `.env`, DB, storage, backups, node_modules ou builds.
2. Alterar nome, sigla, contacto e morada em `config/institution.ts`.
3. Configurar domínio em `APP_URL` antes do build e no ambiente de produção.
4. Substituir `public/branding/logo.svg`; adaptar variantes em `config/branding.ts` e favicon.
5. Definir cores/tokens e tipografia. Fontes sistema por defeito; se necessárias, WOFF2 local e poucos pesos.
6. Substituir `content/` por conteúdos aprovados. A privacidade é um placeholder a substituir, não um texto legal pronto.
7. Colocar fotografias em `assets/images`, correr `npm run images`, usar `ResponsiveImage` e rever recortes/alt.
8. Redesenhar páginas/header/footer/componentes: a fundação técnica não impõe este layout.
9. Adaptar serviços, navegação, páginas e documentos públicos. Não misturar ficheiros de candidaturas com public.
10. Adaptar `config/registration.ts`: ano, respostas, prefixo, instruções/documentos. Alterar formulário e `server/registration.ts` para retirar/adicionar campos/etapas; atualizar handler, migration e dados PDF se necessário. Testar submissão e retoma.
11. Adaptar `emails/templates.ts`/config, remetente e destinatários.
12. Adaptar `pdf/application.ts`, `config/pdf.ts` e `server/application-pdf.ts`; configurar logo PNG/JPEG e gerar/verificar exemplo.
13. Criar DB própria com `DATABASE_PATH` e `npm run db:migrate`. Não copiar dados do cliente anterior.
14. Criar `STORAGE_DIR` e `BACKUP_DIR` privados, com permissões do serviço e caminhos absolutos.
15. Criar utilizadores individuais por `admin:user`, chaves novas e `.env` específico. Verificar revogação e logout.
16. Executar `typecheck`, `lint`, `test`, `build`, `test:http`; testar email no domínio de destino só com destinatários autorizados e dados fictícios. Validar SPF/DKIM/entrega.
17. Rever teclado/mobile, rascunhos, uploads inválidos, documentos condicionais, estados/notas/revisão, CSV, jobs/retry e backup/restore. Definir retenção com o cliente.
18. Configurar HTTPS/proxy, cron de jobs, logs, backup; publicar install → migrate → build → restart.
19. Medir homepage com fotografias/conteúdo reais. Confirmar SEO, canonical, OG, sitemap e robots no domínio final. Adicionar OG image do cliente se desejado.
20. Limpar dados de teste do ambiente de produção conforme política definida; validar um processo completo e guardar evidência de aceitação.

## Pedido de adaptação sugerido

> Cria o site da Instituição X usando esta Uneed Institution Baseline num repositório separado. Aqui estão logo, cores, conteúdos, fotografias, domínio e necessidades de inscrições. Redesenha livremente o site público; preserva e testa o motor técnico. Não copies dados ou credenciais de outra instituição. Usa esta checklist e documenta qualquer alteração de schema/processo.
