> ## Documentation Index
> Fetch the complete documentation index at: https://docs.ambarks.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Deploy via ZIP

> Envie um arquivo compactado pelo dashboard.

# <Icon icon="cloud" color="#0516ee" size={30} /> Como fazer deploy via ZIP

O deploy via ZIP é indicado para testes rápidos, protótipos e projetos que ainda não estão conectados ao GitHub.

## Preparação do ZIP

O ZIP deve conter o código do projeto e os arquivos necessários para instalar, buildar e iniciar a aplicação.

Estrutura recomendada:

```text theme={null}
meu-projeto.zip
  package.json
  package-lock.json
  src/
  ambarks.json
```

Também pode existir uma única pasta raiz dentro do ZIP:

```text theme={null}
meu-projeto.zip
  meu-projeto/
    package.json
    src/
```

## Evite incluir

* `node_modules`
* `.git`
* pastas de cache
* arquivos temporários
* builds locais muito grandes, quando eles puderem ser gerados no deploy

## Enviar pelo dashboard

1. Clique em `Criar Novo Projeto`.
2. Escolha `Arquivo ZIP`.
3. Selecione o arquivo `.zip`.
4. Confirme as configurações de memória, porta e runtime.
5. Clique em `Criar & Deploy`.
6. Abra os logs para acompanhar o progresso.

## Limite de tamanho do ZIP

* Tamanho máximo por upload: **100 MB**

## Quando usar `ambarks.json`

Adicione `ambarks.json` na raiz do ZIP quando:

* O comando de instalação não for o padrão.
* O projeto precisa rodar um build antes de iniciar.
* O comando de start não é `npm start`, `python main.py` ou equivalente.
* Você quer deixar o deploy previsível para próximos envios.

## Problemas comuns

| Problema                | O que verificar                                           |
| ----------------------- | --------------------------------------------------------- |
| ZIP não envia           | Confirme formato `.zip` e tamanho do arquivo              |
| Runtime não detectado   | Escolha o runtime no dashboard ou adicione `ambarks.json` |
| Build falha             | Veja se as dependências e lockfiles foram incluídos       |
| App inicia mas não abre | Confira porta interna e se o app escuta em `0.0.0.0`      |

## Links relacionados

* [Runtimes suportados](/projetos/runtimes)
* [Como usar ambarks.json](/projetos/ambarks-json)
* [Portas e domínios](/projetos/portas-dominios)
