# Deploy Estático no UOL Host

Este pacote foi preparado para hospedagem estática comum, sem backend e sem pipeline de build. O `index.html` permanece na raiz e os arquivos carregados por caminhos relativos continuam no mesmo nível.

## O que subir

Envie o conteudo desta pasta diretamente para a pasta de publicacao desejada no cPanel:

- Para publicar na raiz do dominio, envie os arquivos para `public_html/`
- Para publicar em uma subpasta, crie a subpasta no cPanel e envie o conteudo para dentro dela

Nao envie a pasta `deploy_uolhost/` inteira como um nivel extra se quiser que o `index.html` abra direto no endereco final. O arquivo `index.html` precisa ficar na raiz da area publicada.

## Estrutura obrigatoria

Os seguintes arquivos precisam permanecer juntos no mesmo diretorio:

- `index.html`
- `styles.css`
- `app.js`
- `cannabis-data.js`
- `embedded-data.js`
- `3Dmol-min.js`
- `3VTE.pdb`
- `3VTE_summary.json`
- `THCAS_3VTE_final_PI.png`

## Dependencias externas

O pacote nao depende de backend, banco, PHP, Node, Flask, FastAPI ou Docker.

Existe apenas uma referencia externa direta no HTML:

- Google Fonts para tipografia

O viewer 3D foi endurecido para tentar, nesta ordem:

- `./3Dmol-min.js` na raiz do deploy
- `cdnjs`
- `jsDelivr`
- `unpkg`

Se nenhuma origem do `3Dmol` responder, a aplicacao continua funcional com o fallback local em canvas ja implementado no `app.js`.

## Checklist antes do upload

1. Rode `bash validate_static_deploy.sh .` dentro desta pasta.
2. Confirme que `index.html` esta na raiz do diretorio que sera publicado.
3. Nao renomeie `3VTE.pdb` nem `3VTE_summary.json`.
4. Nao mova `styles.css`, `app.js`, `embedded-data.js` ou `cannabis-data.js` para subpastas.
5. Mantenha `THCAS_3VTE_final_PI.png` no mesmo nivel do `index.html`.
6. Preserve `3Dmol-min.js` no pacote, mesmo que ele esteja apenas como placeholder local.

## Checklist depois do upload

1. Abra a URL final do relatorio no navegador.
2. Confirme que a imagem principal carrega.
3. Confirme que o viewer abre em `3Dmol` ou, no minimo, no fallback em canvas.
4. Confirme que o painel de resumo e o explorador de dados aparecem.
5. Se precisar testar arquivos diretamente, verifique se `3VTE.pdb` e `3VTE_summary.json` respondem no mesmo diretorio publicado.
