You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
2.3 KiB
2.3 KiB
05 — Critérios de aceitação e verificação
Funcionais
npm installconclui sem erros.npm run devarranca e serve a aplicação sem erros de runtime.npm run build(outsc --noEmit) sem erros de TypeScript.- Âncoras
#home,#work-plan,#indicators(+#goal) navegáveis com scroll suave. - Header colapsa em menu < md; links funcionam em mobile e desktop.
- Work plan: hover (desktop) e clique (mobile) revelam o cronograma.
- Indicators: cartões clicáveis abrem detalhe.
- Footer lista os 3 beneficiários e o suporte financeiro.
Containerização (Docker) — ver 06-deployment.md
- RF-D1
docker build -t resilience-microsite .conclui sem erros (o build correnpm run build→tsc -b; erros de TS fazem o build falhar). - RF-D2
docker run -p 8080:80 resilience-micrositeserve o site em http://localhost:8080 sem depender de Node/npm no host. - RF-D3
docker compose up --buildarranca o serviço com a porta mapeada. - RF-D4 Refresh/deep-link de uma âncora (ex.:
/#work-plan) devolve 200 (SPA fallback do nginx paraindex.html). - RF-D5 Imagem final isolada e sem estado: não inclui código-fonte nem Node; não requer volumes nem serviços externos.
- RF-D6 Versões base pinadas e
.dockerignoreexcluinode_modules/dist.
Conteúdo
- Todo o texto em inglês e fiel a 03-content.md (sem invenção).
- Datas, código de projeto, montantes e DOI corretos.
Visual / UX
- Paleta navy institucional INESCC + tipografia Outfit aplicadas.
- Responsivo (mobile → desktop) sem overflow/quebras.
- Animações discretas; respeitam
prefers-reduced-motion.
Rastreabilidade
- Cada incremento de código referenciado em CHANGELOG.md.
Plano de verificação
- Com Node local:
npm install→npm run build(gate TypeScript) →npm run dev→ inspeção manual das 6 secções + navegação. - Sem Node local (recomendado nesta máquina):
docker build(gate TS dentro da imagem) →docker run -p 8080:80→ inspeção manual em http://localhost:8080. - Teste responsivo (largura mobile/desktop) e teclado/scroll.
- Teste de SPA fallback: refrescar com hash
/#indicatorsdevolve a página.