major.minor.patch: o major é a geração da plataforma (v26 desde 21 de março de 2026; v25 do lançamento até fevereiro de 2026), o minor é o lançamento mensal, e cada patch agrupa tudo o que foi entregue no mesmo dia.
26 de outubro de 2026
Documentação em português e espanhol
A documentação agora está disponível em português do Brasil e em espanhol, além do inglês. Escolha o idioma no seletor no topo de qualquer página. As páginas em inglês mantêm os endereços, e as traduções ficam em/pt-br e /es-es. Guias, tutoriais, Blob Storage, as ferramentas de desenvolvimento e o changelog estão traduzidos. A referência da API e a base de conhecimento continuam em inglês em todos os idiomas, para o contrato ser lido do mesmo jeito em qualquer lugar.Correções em toda a documentação
- Referência da API: cada endpoint agora lista os erros de autenticação que a API devolve de verdade:
AUTH_TOKEN_MISSING,API_KEY_INVALIDeSESSION_REVOKEDcom 401, eAPI_KEY_IP_DENIEDeAPI_KEY_SCOPE_DENIEDcom 403. O código genéricoUNAUTHORIZED, que a API nunca devolve, saiu, e os exemplos de erro mostram os status certos. - Criar um app pelo terminal: rode
vertra uploadna pasta do projeto. Ele cria a aplicação e grava o ID dela novertracloud.config, e a partir daí overtra deployenvia o código novo para ela. A documentação começava comvertra deploy, que só atualiza uma aplicação que já existe e falha numa conta sem nenhuma. A página da CLI também explicavertra linkevertra unlink. - Passos do painel apontam para as abas reais: Config → Geral, Deploy, Variáveis de ambiente e Rede. O deploy automático fica em Config → Deploy → Ativar deploy automático.
- Armazenamento do banco é 6 GB + 1 GB a cada 512 MB de RAM, ou 3× a RAM quando isso for maior.
- Aplicação mais banco: rodar uma aplicação com PostgreSQL, MySQL ou MongoDB exige Scale ou acima. Com Redis, o Pro basta.
- Papéis de workspace têm 20 permissões. Algumas páginas diziam 19 ou 21.
- Exemplos de código: corrigidos o bot de Discord em Python (
message.channel.send), os tutoriais de Flask, Telegram, Ruby, PHP e Django, e os exemplos das SDKs de Python, Go e JavaScript. - Downgrade de plano: o exemplo agora leva o Enterprise-4 para o Intermediary, um degrau abaixo.
25 de outubro de 2026
Imagens Docker personalizadas
Enterprise 28, Enterprise 30 e Enterprise 32 agora podem criar uma imagem a partir do próprioDockerfile e rodar aplicações a partir dela. Use para outra linguagem ou versão, pacotes de sistema, seu próprio processo de inicialização ou apps prontos.- Crie uma imagem a partir de um ZIP de até 100 MB ou de um repositório do GitHub. A branch é opcional: sem ela, usa-se a branch padrão do repositório. Um repositório das suas instalações do GitHub App fica vinculado, então cada push reconstrói a imagem; um repositório público fora delas é construído uma vez, sem vínculo. No painel, Novo projeto também tem a opção Usar imagem Docker para criar um app a partir de uma imagem que você já tem. O projeto precisa de um arquivo chamado exatamente
Dockerfilena raiz. A imagem é construída em um ambiente de build isolado, com limite de 26 minutos, e o resultado pode ter até 10 GB. Cada conta pode ter até 20 imagens. - Verifique antes de construir. O painel analisa o seu
Dockerfileantes de o build começar: instruções que enfraqueceriam o isolamento do build são recusadas, e erros comuns, como arquivos.envno projeto, são apontados para você corrigir. Arquivos.env*nunca entram na imagem, e o seuDockerfilenunca é reescrito. Veja o que é recusado e o que gera aviso. - Crie apps a partir da imagem. Vários apps podem compartilhar uma imagem, cada um com as próprias variáveis. Para um app web, a porta é o primeiro
EXPOSEdoDockerfile, ou 80, e ela chega ao seu app comoPORT. Um app criado sem web pode ser publicado depois, informando a porta. - Atualize a imagem enviando um novo contexto, por um commit sobre o contexto atual, ou por um push para uma branch vinculada do GitHub (vincule um repositório das suas instalações do GitHub App; a branch é opcional). A GitHub Action aceita
image-idpara reconstruir uma imagem. Reconstruir nunca reinicia as suas aplicações: cada app passa para a nova versão quando você o reinicia ou faz deploy. - Versões e rollback. Cada build bem-sucedido é uma versão. Os apps mantêm 30 releases por 30 dias, e um rollback inicia uma versão que já foi construída.
- Snapshots desses apps guardam os dados de
/appe a versão da imagem. Ao restaurar, você também pode voltar a essa versão, se ela ainda existir. - Renomeie e descreva. Dê uma descrição à imagem (até 128 caracteres) ao criá-la, e renomeie-a ou altere a descrição depois, no painel, na API, nos SDKs, na CLI, no servidor MCP ou na extensão do VS Code. Nada é reconstruído e os seus apps continuam rodando.
- Excluir uma imagem exclui todas as aplicações criadas a partir dela, depois que você digitar o nome da imagem.
- Na extensão do VS Code. Uma nova visualização de Docker images lista as suas imagens e os apps delas. A partir dela, você pode criar uma imagem a partir de uma pasta ou de um repositório do GitHub, reconstruí-la, acompanhar o log do build, ver as versões, vincular uma branch do GitHub, excluí-la e criar um app a partir dela. Fazer deploy, publicar e restaurar snapshots de apps de imagem também funcionam pela extensão, e um novo app a partir de uma pasta com
Dockerfileoferece criar uma imagem.
/v1/images (incluindo PATCH /v1/images/{image_id} para renomear e descrever) e POST /v1/apps/image, com os novos escopos de chave de API images:read, images:write e images:delete (excluir uma imagem que tenha apps também exige apps:delete, e enviar arquivos para um app que roda uma imagem também exige images:write), e os novos códigos de erro PLAN_DOES_NOT_SUPPORT_CUSTOM_IMAGES, MAX_IMAGES_REACHED, IMAGE_NOT_FOUND, IMAGE_VERSION_NOT_FOUND, IMAGE_BUILD_IN_PROGRESS, IMAGE_NOT_READY, IMAGE_BUILDER_UNAVAILABLE, IMAGE_CONTEXT_TOO_LARGE, IMAGE_NAME_MISMATCH, IMAGE_TOO_LARGE, IMAGE_LABEL_REFUSED, IMAGE_VOLUME_REFUSED, IMAGE_APP_PORT_REQUIRED, IMAGE_APP_FIELD_NOT_APPLICABLE, IMAGE_APP_CODE_NOT_APPLICABLE, DOCKERFILE_NOT_FOUND e DOCKERFILE_REFUSED. Leia o guia e a referência da API.Melhorias
- Escolha a branch dos seus deploys pelo GitHub. Ao importar um repositório do GitHub no painel, agora há um seletor de branch, e o deploy automático segue a branch que você escolher (a rota do webhook de deploy aceita um
branchopcional). Os deploys automáticos já existentes continuam seguindomainemaster. - Links para desenvolvedores na barra lateral. CLI, extensão do VS Code, MCP, O que há de novo e Docs saíram do menu da conta e foram para a barra lateral do painel.
- Tema com um clique. A aparência no menu da conta agora é um único botão que alterna entre Sistema, Claro e Escuro.
- Excluir uma aplicação espera o resultado. A caixa de confirmação fica aberta com o progresso até a exclusão terminar, e então fecha com a aplicação já fora da lista. Se a exclusão falhar, a caixa continua aberta e mostra o motivo.
- Já autenticado. Abrir a página de login estando com a sessão iniciada leva direto ao painel.
Correções
- Importar um repositório do GitHub cujo nome contém
.gitno meio, comonome.github.io, não busca mais o repositório errado. - Restaurar um snapshot (de aplicação ou de banco de dados) ou fazer rollback para uma release a partir de um arquivo danificado agora é recusado antes de qualquer alteração (
INVALID_ZIP_STRUCTURE,400). Os arquivos da aplicação e o banco de dados em execução continuam como estavam; antes, um banco podia ficar parado e os arquivos de uma aplicação podiam ser apagados. Um snapshot de aplicação sem arquivos também é recusado da mesma forma. - Ações em aplicações, bancos de dados, snapshots, domínios e arquivos agora sempre registram a atividade no workspace ao qual o recurso pertence.
- Vincular uma aplicação ao deploy automático agora confere o repositório com a sua instalação do GitHub App. Um
repo_idque não corresponde ao repositório é recusado comVALIDATION_ERROR, um repositório fora da instalação retornaINSTALLATION_NOT_FOUND, e o GitHub indisponível retornaFETCH_ZIP_ERROR(502).
24 de outubro de 2026
Novos bancos de dados ganham um usuário vertracloud dedicado
Bancos de dados criados a partir desta versão vêm com um usuário dedicado chamado vertracloud e um banco padrão chamado vertracloud, nos quatro motores:TLS com o certificado de cliente continua obrigatório, como antes. O dashboard, a API e o servidor MCP mostram o usuário e a string de conexão corretos para cada banco.
Redis: o nome de usuário agora é obrigatório em novos bancos
Em novos bancos Redis, faça login com o usuário e a senha (AUTH vertracloud <password>, ou o usuário na URL). Só a senha é recusada. Use a string de conexão exibida no dashboard ao criar um novo banco Redis.username na API
O objeto de banco de dados retornado pela API agora inclui username. Leia esse campo em vez de presumir o usuário pelo motor, já que bancos antigos e novos usam usuários diferentes. Veja Bancos de dados.Aplicações só podem gravar em /app, /tmp, /var/tmp e /run
O restante do sistema de arquivos do container agora é somente leitura, e HOME é /app. Tudo o que a sua aplicação grava no diretório home (caches de gerenciadores de pacotes, pastas de configuração) vai para /app e conta para a cota de disco. /tmp é a metade da RAM da aplicação, com mínimo de 128 MB e máximo de 1 GB, e /var/tmp é limitado a 64 MB; ambos ficam em memória e são limpos a cada reinício. Uma aplicação que grave em qualquer outro lugar recebe um erro de sistema de arquivos somente leitura. As aplicações passam para esse modelo no próximo deploy ou reinício.Arquivos temporários também não se acumulam mais no seu projeto: o TMPDIR da aplicação não é mais redirecionado para a pasta do projeto depois da instalação das dependências. Assim, arquivos temporários vão para /tmp e são limpos no reinício.Escolha a versão do banco de dados
Ao criar um banco de dados, agora você pode escolher a versão, no dashboard ou comversion na API. A versão recomendada é o padrão.O objeto do banco retorna
version, e o novo endpoint Listar versões de banco de dados lista o que está disponível por motor. Uma version fora da lista falha com INVALID_DATABASE_VERSION.Ao criar um banco a partir de um snapshot, ele começa na versão principal do snapshot (um snapshot de MySQL 8.0 cria um banco MySQL 8.4, e um snapshot de Redis 7.4 cria um Redis 8.2). version pode ser igual ou mais nova, e uma mais antiga falha com SNAPSHOT_VERSION_NEWER. Restaurar um snapshot feito em uma versão mais nova em um banco mais antigo falha com o mesmo código, e nada é alterado.Atualizações de segurança no reinício
Bancos existentes mantêm a versão principal. Atualizações de segurança (releases de patch) são aplicadas automaticamente sempre que o banco é reiniciado: pare e inicie de novo no dashboard. Bancos MySQL 8.0 existentes continuam no 8.0 e bancos Redis 7.4 existentes continuam no 7.4; nenhuma dessas versões está disponível para novos bancos. Se você usa índicesbtree_gist em colunas float ou índices ltree no PostgreSQL, rode REINDEX neles depois do reinício.Correção: redefinição de senha no MySQL
Redefinir a senha de um banco MySQL criado com o usuáriovertracloud agora surte efeito. Antes desta correção, a nova senha era exibida, mas não aplicada, e a antiga continuava funcionando.22 de outubro de 2026
Deno, .NET e Elixir
Três novas linguagens estão disponíveis ao criar uma aplicação.- Deno (
deno): 2.9.8 (recomendada e mais recente), além da 2.8.3. Detectada a partir dedeno.json,deno.jsoncoudeno.lock.MAINé o arquivo de entrada, comomain.ts. - .NET (
dotnet, exibido como .NET (C#)): 10.0.402. Detectada a partir de.csproj,.fsproj,.slnouglobal.json.MAINé o.csproj, e a aplicação escuta na porta definida emASPNETCORE_HTTP_PORTS, que já está definida como 80. - Elixir (
elixir): 1.20.4 sobre OTP 28. Detectada a partir demix.exs. Phoenix é suportado comSECRET_KEY_BASEePHX_HOSTdefinidas como variáveis de ambiente. Rodemix assets.deployantes de zipar, ou use um projeto sem assets.
Runtimes atualizados e fim de suporte
Todos os runtimes passaram para a versão de patch mais recente:Versões que chegaram ao fim do suporte foram removidas: Node.js 18 e 20, Bun 1.2, Go 1.21 a 1.23, Ruby 3.2, e Rust 1.97 e 1.98. Uma aplicação salva em uma versão antiga agora roda na release mais recente da mesma linha (por exemplo, Python 3.11 roda na 3.11.17). Se a linha inteira foi removida, ela roda na versão
recommended. Confira a lista completa na base de conhecimento ou com Listar runtimes.Correções de segurança nos runtimes atualizados
As novas versões incluem estas correções de segurança upstream. As aplicações as recebem no próximo deploy ou reinício.- Node.js 22.23.4 e 24.22.1: sete correções, incluindo CVE-2026-111497 no decodificador Brotli. A 24.22.1 também corrige CVE-2026-105483. Aviso do Node.js
CVE-2026-105481CVE-2026-105482CVE-2026-106069CVE-2026-106072CVE-2026-106073CVE-2026-106074 - PHP 8.2.35, 8.3.36 e 8.4.27: CVE-2026-109618 e CVE-2026-109619, ambas no núcleo do PHP. GHSA-w8hw-w9fx-j79w e GHSA-6wmf-4rv5-p3rp
- Python 3.11.17, 3.12.15 e 3.13.17: oito correções, incluindo CVE-2026-82049 em
tarfile. A 3.13.17 também traz certificados raiz atualizados. Notas de release: 3.11.17, 3.12.15 e 3.13.17CVE-2026-15310CVE-2026-15806CVE-2026-17084CVE-2026-19445CVE-2026-19553CVE-2026-19672CVE-2026-87910 - Go 1.26.10 e 1.27.3: CVE-2026-56866 em
net/http, CVE-2026-111943 emcrypto/x509e as demais correções das linhas 1.26 e 1.27. Histórico de releases do Go - Bun 1.3.14 e 1.4.4: correções para request smuggling em HTTP, TLS, WebSocket e o gerenciador de pacotes. Bun 1.3.14 e Bun 1.4.4
Detecção de linguagem mais confiável
A plataforma agora lê apenas os arquivos de manifesto da raiz do projeto e verifica cada ecossistema antes dopackage.json. Um projeto Python, PHP (Laravel) ou Ruby (Rails) que também tem um package.json de front-end não é mais tratado como JavaScript. O bun.lock é reconhecido como Bun, projetos Java também são reconhecidos por build.gradle.kts, settings.gradle(.kts), mvnw e gradlew, e MAIN=./src/index.js é aceito.Para forçar uma linguagem, defina LANGUAGE=<slug> no vertracloud.config (a chave é "language" no vertracloud.config.json) ou envie language em POST /v1/apps. A precedência é o campo da API, depois o arquivo de configuração e por último a detecção. Veja Configuração.O assistente de criação mostra o que foi detectado
Antes de criar uma aplicação, o assistente de criação do dashboard agora mostra a linguagem detectada, o arquivo principal e a versão, para que você possa conferi-los (ou defini-los você mesmo) antes de qualquer build.A vCPU agora acompanha a RAM de cada projeto
A vCPU de um projeto agora cresce com a RAM dele, até o limite de vCPU do plano: em planos com até 2 vCPU, +1 vCPU a cada 512 MB; em planos com mais de 2 vCPU, +1 vCPU a cada 1 GB. Projetos com 512 MB ou mais recebem pelo menos 2 vCPU (nunca acima do plano), e os menores recebem pelo menos 1. Projetos pequenos em planos menores ganham vCPU, e em planos com mais de 2 vCPU a vCPU de um projeto passa a seguir a RAM (por exemplo, 4 GB = 4 vCPU). A mudança vale na próxima vez que o projeto for reiniciado ou receber deploy. Veja Planos e limites.Mudança incompatível: missing_dependencies removido
O aviso sobre dependências ausentes, exibido antes de enviar um projeto, deixou de existir, e o campo missing_dependencies não é mais retornado nas respostas de upload e de aplicação. Se o seu código lê esse campo, remova-o. Quando uma aplicação cai porque uma dependência está faltando, os logs da aplicação ainda mostram isso.Limpeza automática na troca de linguagem
Quando você troca a linguagem de uma aplicação, as dependências da linguagem anterior agora são limpas automaticamente no próximo reinício. O campocleanup_old_runtime_language da rota de reinício foi removido e é ignorado se enviado.INVALID_LANGUAGE responde 400
INVALID_LANGUAGE agora está documentado e é retornado como HTTP 400, em vez de 500, porque informa um valor que a requisição enviou. Veja Erros.22 de outubro de 2026
Vários domínios personalizados por aplicação
Uma aplicação agora pode ter vários domínios personalizados, e adicionar, alterar ou remover um deles nunca reinicia a aplicação. Domínios personalizados começam no plano Intermediary, e o número por aplicação cresce com o plano:wwwautomático: adicionarexample.comtambém adicionawww.example.com, e vice-versa. O domínio complementar redireciona para o principal, não conta no seu limite e pode ser desativado. Qualquer um dos dois pode ser definido como o domínio principal.- Porta por domínio: cada domínio pode alcançar uma porta diferente da sua aplicação, de 1 a 65535, com até 5 portas além da 80 por aplicação.
- Prefixo de caminho: um domínio pode adicionar um caminho como
/apiantes de cada requisição. Recomendado para APIs. - Redirecionamentos: um domínio pode redirecionar para outro domínio da mesma aplicação com
301,302,307ou308(padrão308), mantendo o caminho e a query string. - Status e limpeza: cada domínio mostra seu status e o estado do certificado. Um domínio que fica sem DNS por 14 dias é removido automaticamente, e você recebe um e-mail. Quando um domínio é removido, por você, ao despublicar ou por essa limpeza, exclua os registros
CNAMEeTXTde validação no seu provedor de DNS. Domínios raiz mostram um aviso, porque umCNAMEna raiz exige um provedor de DNS com CNAME flattening.
/v1/apps/{id}/domains: listar, adicionar, atualizar, remover e registros DNS. Os SDKs, a CLI, o servidor MCP e a extensão do VS Code oferecem suporte a elas. Veja Conectar domínios personalizados.Mudança incompatível: planos são identificados pelo nome na API
A API identifica um plano pelo nome, comopro ou enterprise-8. O ID numérico do plano deixou de existir.GET /v1/users/menão retorna maisplan_idnemplan.id. Leiaplan.nameno lugar.planénullquando a conta não tem plano ativo.- Aplicações, bancos de dados e workspaces retornam
owner_plan(o nome do plano, ounull) em vez deowner_plan_id. - Contas sem plano ativo recebem
PLAN_REQUIREDao criar aplicações ou bancos de dados ou ao publicar um site.FREE_PLAN_SUSPENDEDeFREE_PLAN_NO_WEB_PUBLISHnão são mais retornados. - A lista completa de nomes está na base de conhecimento.
Mudança incompatível: rotas de domínio personalizado substituídas
GET, POST e DELETE /v1/apps/{id}/network/custom e GET /v1/apps/{id}/network/dns são substituídas pelas rotas de domínio acima.- Os payloads das aplicações retornam
domains, uma lista, em vez decustom_domain.public_urlaponta para o domínio principal. As rotas de publicação retornam os hostnames emdomains. NO_CUSTOM_DOMAINnão é mais retornado: uma aplicação sem domínios tem uma lista vazia.DOMAIN_ALREADY_IN_USEagora responde409, eCUSTOM_DOMAIN_REGISTRATION_FAILEDresponde502.- Novos códigos de erro:
DOMAIN_NOT_FOUND,DOMAIN_LIMIT_REACHED,DOMAIN_PORT_LIMIT_REACHED,INVALID_DOMAIN_PORT,INVALID_PATH_PREFIX,INVALID_REDIRECT_TARGETeDOMAIN_CONNECT_UNAVAILABLE. Veja Erros.
plan_id, owner_plan_id ou custom_domain.SDKs, CLI, servidor MCP e extensão do VS Code 0.3.0
Novas versões dos SDKs (JavaScript, Python e Go), da CLI, do servidor MCP e da extensão do VS Code oferecem suporte a vários domínios personalizados por aplicação e a planos pelo nome. Elas seguem as mudanças incompatíveis acima, então atualize-as juntas.- CLI: novos comandos
vertra app domains(veja CLI). Parar uma aplicação ou um banco de dados e remover uma variável de ambiente agora pedem confirmação; recusar qualquer confirmação encerra com código 1. - Servidor MCP: novas ferramentas de domínio. Ferramentas que excluem, sobrescrevem, param, reiniciam ou alteram acesso são marcadas como destrutivas, então o cliente pede confirmação antes de executá-las. Logs, arquivos e outros conteúdos das suas aplicações são marcados como não confiáveis. Veja MCP.
- Extensão do VS Code: gerencie todos os domínios personalizados de uma aplicação e veja os nomes dos planos.
- Sua chave de API fica na API da Vertra Cloud: o servidor MCP e a extensão do VS Code não seguem mais redirecionamentos, e os SDKs descartam a chave quando um redirecionamento sai da API. Os SDKs e o servidor MCP também recusam caminhos de requisição inválidos antes de enviar qualquer coisa.
- GitHub Action v1.0.4 usa a CLI 0.3.0 por padrão. Veja GitHub Actions.
Limite de variáveis de ambiente elevado para 256
Uma aplicação agora pode ter até 256 variáveis de ambiente, antes eram 25. As chaves podem ter até 255 caracteres, e os valores até 3.072. Veja Configuração.JSON malformado agora retorna 400
Uma requisição com JSON malformado no corpo agora recebe400 com INVALID_JSON; antes recebia 500. Outros problemas de requisição também respondem com o próprio status e um código estável: UNSUPPORTED_MEDIA_TYPE (415), BAD_REQUEST (400) e REQUEST_TIMEOUT (408). Uma requisição com content-type: application/json e corpo vazio continua retornando 400 EMPTY_BODY. Veja Erros.20 de outubro de 2026
Proteção mais forte contra enchentes de tráfego
Aplicações em*.vertraweb.app e em domínios personalizados agora têm proteção mais forte contra enchentes de tráfego: visitantes abusivos são bloqueados antes de chegar à sua aplicação. Aplicações que recebem um pico repentino de tráfego não são mais pausadas pelo Vertra Shield.Durante uma pausa do Shield, iniciar, reiniciar e alterar a configuração agora mostram o motivo e quando a pausa termina, em vez de um erro genérico de acesso (APP_SHIELD_COOLDOWN). Veja Proteções da plataforma.18 de outubro de 2026
A criação da aplicação retorna na hora e o build continua em segundo plano
Criar uma aplicação não mantém mais a requisição aberta até a instalação e o build terminarem.POST /v1/apps agora responde 202 Accepted imediatamente, com a aplicação no novo status building, e o build continua em segundo plano, com logs ao vivo. Quando termina, a aplicação fica up, ou down se a instalação ou o build falharam, com a saída nos logs.- Acompanhando o build: leia
GET /v1/apps/{id}ou abra os logs em tempo real. - Durante o build: iniciar, parar, reiniciar, deploys de arquivos, rollback, snapshots, restaurações e alterações de configuração respondem
409 APP_BUILDING. Excluir a aplicação é permitido. - Builds interrompidos: a aplicação continua
downeBUILD_INTERRUPTEDaparece no log dela. Se a plataforma cancelar a criação, a aplicação deixa de existir. - Motivo da falha: quando um build ou uma instalação falha,
GET /v1/apps/{id}retorna o código no novo campolast_build_error(nullapós um build bem-sucedido). Os auxiliares de espera dos SDKs, o servidor MCP, a CLI, a extensão do VS Code e o dashboard usam esse código para dizer o que fazer. Veja Erros. - Mudanças na resposta: a resposta de criação não inclui mais
removed_directories, emissing_dependenciespassa a ser retornado porGET /v1/apps/{id}depois do build. - SDKs, MCP e CLI:
apps.waitUntilReady(JavaScript),apps.wait_until_ready(Python) eApps.WaitUntilReady(Go) esperam pelo build. O servidor MCP tem uma nova ferramentawait_for_app, e a CLI aceita--no-wait. Veja o guia de SDKs e MCP.
Builds instalam devDependencies quando há comando de build
Quando uma aplicação tem comando de build, a instalação de dependências agora incluidevDependencies, para que ferramentas como Tailwind, TypeScript e PostCSS funcionem sem precisar mudá-las para dependencies. Sem comando de build, só dependencies é instalado, como antes.Builds mais rápidos
A instalação de dependências e os builds agora são mais rápidos, especialmente em projetos grandes.Puppeteer usa o Chromium já instalado
O Puppeteer agora usa o Chromium que já vem na imagem do runtime, então a instalação não baixa mais um navegador.Correções de runtime para Ruby, Java, PHP e Rust
- Ruby: gems instaladas pelo Gemfile agora são carregadas automaticamente na inicialização, então você não precisa mais de
require "bundler/setup". As aplicações também rodam comRACK_ENVeRAILS_ENVdefinidos comoproduction, então apps Sinatra deixam de responder403 Host not permitted. As duas variáveis agora são reservadas, comoNODE_ENV. - Java: projetos Maven e Gradle são compilados na plataforma, já que o runtime agora traz um JDK.
- PHP: adicionar um pacote ao
composer.jsonsem atualizar ocomposer.locknão faz mais a instalação falhar; o arquivo de lock é atualizado. - Rust: o runtime foi atualizado para a versão 1.98 (recomendada) e 1.99 (mais recente); a 1.97 também continua disponível.
15 de outubro de 2026
Blob Storage
A Vertra Cloud agora guarda arquivos dos seus projetos: uploads de usuários, imagens, vídeos, exportações e backups. Os arquivos ficam separados do disco da sua aplicação, sobrevivem a redeploys e são servidos por uma CDN global. Gerencie-os pela nova página Blob Storage do dashboard, pela API, pelos SDKs, pela CLI, pelo servidor MCP ou por qualquer ferramenta compatível com S3. Comece pela visão geral e pelo início rápido.Arquivos públicos e privados
Todo arquivo é público ou privado, e os novos arquivos são privados. Um arquivo público tem uma URL permanente emblob.vertracloud.dev, colocada em cache pela CDN. Um arquivo privado é lido por meio de um link temporário (de 60 segundos a 24 horas) ou de uma página de compartilhamento com expiração, limite de downloads e, a partir do Enterprise-12, senha. Você pode trocar um arquivo entre os dois modos a qualquer momento sem mudar o ID dele.Uploads de até 10 GB
Arquivos de até 100 MB vão em uma única requisição. Arquivos maiores, de até 10 GB, são enviados em partes direto para o armazenamento, com retomada e cancelamento. Um navegador pode fazer upload com um token de upload de curta duração criado pelo seu backend, para que sua chave de API nunca chegue até ele; veja o guia de uploads de usuários. Quando um caminho já está ocupado,overwrite substitui o arquivo e rename_on_conflict o salva como nome-1.ext, nome-2.ext e assim por diante. Detalhes em Uploads.Seguro por padrão
Executáveis e instaladores são recusados, mesmo quando renomeados. Arquivos HTML, SVG e XML sempre baixam no endereço padrão em vez de abrir no navegador, e o tipo de conteúdo vem da extensão.Regras de pasta, transformações de imagem e domínios personalizados
- Regras de pasta: padrões e limites por pasta, como visibilidade, tamanho máximo, extensões permitidas, cache e exclusão automática após um número de dias.
- Transformações de imagem: redimensionar, recortar e converter imagens públicas por parâmetros na URL, a partir do Scale.
- Domínios personalizados: servir arquivos públicos por um subdomínio seu, como
cdn.example.com, a partir do Enterprise-4. Um domínio também pode servir HTML, SVG e XML no navegador, em sandbox, quando você ativaweb_content.
Cota por plano
O Blob Storage está incluído a partir do Economy: 1 GB no Economy, 5 GB no Pro, 15 GB no Scale, 20 GB no Intermediary e de 30 a 250 GB no Enterprise. Uploads acima da cota respondemSTORAGE_QUOTA_EXCEEDED. Depois de um downgrade seus arquivos permanecem, e o uso acima da nova cota é cobrado a R$0,20 por GB iniciado na próxima renovação. Quando um plano expira, os arquivos ficam online por um período de carência de 72 horas e depois são excluídos permanentemente, sem backup. A tabela completa está em Limites e cotas.Chaves de API e workspaces
As chaves de API ganharam dois novos escopos,blob:read e blob:write. Os workspaces ganharam duas permissões, blob:read e blob:manage, que atuam sobre os arquivos e a cota do dono. Nenhum papel existente as recebe, então o dono precisa concedê-las explicitamente. Veja Autenticação.SDKs, S3, CLI e MCP
- JavaScript: um SDK dedicado,
@vertracloud/blob, para Node, navegadores e runtimes de borda. Veja SDK JavaScript. - Python e Go:
client.blobeclient.Blobnos SDKs existentes. Veja SDKs Python e Go. - S3: aws-cli, rclone, boto3 e outras ferramentas S3 funcionam com credenciais derivadas da sua chave de API. Veja Compatibilidade com S3.
- CLI:
vertra blob ls,put,get,link,rmestats. Veja CLI. - MCP: ferramentas para listar, enviar, gerar links, mudar a visibilidade e excluir arquivos. Veja MCP.
12 de outubro de 2026
Deploys sem queda no Enterprise
No Enterprise, um deploy ou um reinício agora pode iniciar a nova versão ao lado da que está rodando, verificar se ela está saudável e só então trocar. Assim, uma aplicação que recebe tráfego web continua acessível durante a atualização. A versão antiga recebe um pedido de desligamento assim que a nova assume.- Modos:
off(o padrão, inclusive para aplicações criadas antes desta atualização) continua parando a versão em execução primeiro;autousa deploy sem queda para aplicações que recebem tráfego web;onforça o modo, inclusive para aplicações sem tráfego web. Bots e outras aplicações sem tráfego web continuam com parar e iniciar noauto, porque duas cópias de um bot responderiam ao mesmo evento duas vezes. Ative nas configurações da aplicação, em Deploy; a mudança vale a partir do próximo reinício ou deploy. - Caminho do health check: defina o caminho que a plataforma chama na nova versão,
/por padrão, com o novo campodeploy.health_check_pathde Atualizar configuração da aplicação ou nas configurações da aplicação. Qualquer resposta HTTP conta como saudável, inclusive404; uma conexão recusada, um timeout ou uma resposta5xxnão contam. - Deploys descartados: se a nova versão não ficar saudável em cerca de 2 minutos, ela é descartada, você recebe um aviso com o log dela, e a versão anterior continua rodando. O log ao vivo mostra o mesmo aviso.
- Fallback: se a segunda cópia não puder ser iniciada naquele momento, o deploy volta a parar a versão em execução primeiro.
Rollback automático quando uma nova versão não inicia
No Intermediary e no Enterprise, uma aplicação que para em até 60 segundos depois de um deploy agora volta sozinha para a versão anterior. Assim, um deploy quebrado não deixa mais a aplicação fora do ar.- Quando age: só se a nova versão parar nos primeiros 60 segundos após um deploy. Uma parada depois disso é tratada como queda normal e fica a cargo do reinício automático.
- Uma vez só: a plataforma volta uma única vez. Se a versão anterior também parar, a aplicação fica parada e você é notificado.
- O que volta: os arquivos de código, não as variáveis de ambiente. Para trazer as variáveis de volta, use o rollback manual com a opção de variáveis.
- Você é avisado: você recebe uma notificação, a aba Rollbacks marca a versão com falha com o log dela, e o rollback automático aparece como uma nova versão atribuída à Vertra Cloud. O log ao vivo da aplicação mostra os mesmos avisos.
- Configuração: vem desativado por padrão, inclusive para aplicações criadas antes desta atualização. Ative nas configurações da aplicação, em Deploy, ou com o novo campo
deploy.auto_rollbackde Atualizar configuração da aplicação. Alterar essa opção não reinicia a aplicação.
deploy com as configurações de deploy salvas. Depois de um downgrade, o valor salvo permanece, mas ele só atua em um plano que inclua o recurso.Snapshot de segurança ao excluir uma aplicação
Nos planos Pro e superiores, excluir uma aplicação agora faz antes um snapshot de segurança dela, como a exclusão de um banco de dados já fazia. O snapshot fica guardado por 30 dias em Snapshots, onde você pode baixá-lo.- Se o snapshot falhar, a aplicação não é excluída e a requisição responde
SNAPSHOT_FAILED; entre em contato com o suporte. Snapshots de segurança demais em pouco tempo respondemFORCED_SNAPSHOT_RATE_LIMIT. - No Free e no Economy, a aplicação é excluída na hora, sem cópia. O diálogo de exclusão avisa disso e oferece baixar o projeto antes.
- A expiração do plano continua fazendo um snapshot de cada projeto antes de removê-lo, em todos os planos.
Volte uma aplicação para uma versão anterior
A aba Rollbacks agora permite voltar a uma versão anterior do código de uma aplicação. Escolha uma versão e confirme: a aplicação volta ao código que tinha nessa versão e reinicia.- O que volta: todo o código daquela versão. Arquivos de código que a versão não tinha são removidos.
- O que fica: dados que a aplicação criou enquanto rodava, como um arquivo de banco ou uploads. Para trazer dados de volta, use um snapshot.
- Variáveis de ambiente (opcional): marque a opção para restaurar as variáveis salvas com aquela versão. A confirmação lista apenas os nomes das variáveis que serão adicionadas, alteradas ou removidas. Os valores nunca são mostrados.
- Desfazer: um rollback é uma nova versão no histórico, então você pode voltar à versão de onde veio. Dois rollbacks da mesma aplicação precisam de 30 segundos de intervalo.
- Limites por plano: o rollback começa no Pro. O Pro mantém as 3 versões anteriores por 7 dias, o Scale 5 por 14 dias, o Intermediary 10 por 30 dias, e o Enterprise de 15 a 30 por nível, por 30 dias. O prazo de uma versão começa quando ela deixa de rodar; a versão em execução nunca expira. Economy e Free mostram o histórico sem a opção de rollback.
apps:write, além de apps:envs ao restaurar variáveis.Histórico de deploys e mensagens de commit para toda aplicação
Cada aplicação agora tem uma aba Rollbacks no dashboard. Ela lista cada versão do código da aplicação, qualquer que seja a origem: um push para o GitHub, a CLI, um upload pelo dashboard ou pela API, ou uma edição no gerenciador de arquivos. Cada entrada mostra status, mensagem, autor, data e tempo de build. A aba está disponível em todos os planos.O histórico começa com o primeiro envio de código depois desta atualização. Aplicações criadas a partir de um snapshot não ganham uma entrada inicial. Edições feitas no gerenciador de arquivos são agrupadas no histórico no próximo reinício ou envio de código. Arquivos enviados sem reiniciar aparecem como Aguardando reinício até a aplicação reiniciar, porque até lá ela continua rodando a versão anterior.Você pode escrever uma mensagem para cada versão:- Dashboard: um campo opcional de mensagem no diálogo de upload.
- API: um campo
messageno endpoint de upload de arquivos. - CLI:
vertra app commit -m "...". Sem-m, dentro de um repositório git, a CLI usa o assunto do último commit.
apps:read. O SDK Go adiciona Apps.Releases() e um campo Message nos uploads.O auto-deploy do GitHub faz o build do commit que você enviou
O auto-deploy pelo GitHub agora faz o build exatamente do commit que foi enviado. Antes, o build pegava o que estivesse na ponta da branch quando o download começava, então dois pushes próximos podiam mostrar um commit no histórico de deploys enquanto um mais novo estava rodando. Agora cada deploy corresponde ao commit que ele lista.Um push que exclui a branchmain ou master não inicia mais um deploy.Releases, rollback e configurações de deploy pela CLI, SDKs e MCP
A CLI, os SDKs de JavaScript, Python e Go e o servidor MCP agora cobrem releases, rollback e configurações de deploy, com os mesmos planos e escopos de chave de API do dashboard e da API.- CLI:
vertra app releaseslista as versões evertra app releases logmostra o log de uma com falha.vertra app rollbackmostra o que vai acontecer e pede confirmação antes de executar; com--env, lista apenas os nomes das variáveis que mudam. Sem terminal, exige--yes.vertra app configaceita--zero-downtime,--auto-rollback,--health-pathe--clear-health-path. - SDKs:
apps.releaseslista releases, lê um log, faz a prévia de um rollback e o executa, nas três linguagens. Atualizar a configuração de uma aplicação aceita as configurações de deploy, e os uploads aceitam uma mensagem. - MCP: novas ferramentas
list_releases,get_release_log,preview_rollbackerollback_app.rollback_appé marcada como destrutiva, então seu cliente pede confirmação.update_app_configaceita as configurações de deploy, edeploy_appaceita uma mensagem. - Escopos:
apps:readpara listar e ler logs,apps:envspara a prévia e para restaurar variáveis,apps:writepara fazer rollback.
10 de outubro de 2026
Escolha para onde vão os arquivos enviados
A caixa Enviar alterações do gerenciador de arquivos tem um campo Destino do commit. Ele começa com a pasta que você tem aberta, e Selecionar permite escolher qualquer outra pasta da aplicação. Os arquivos são gravados nessa pasta. Um ZIP é extraído dentro dela e mesclado com os arquivos que já existem lá, então os arquivos que você não enviar são mantidos.- API:
POST /v1/apps/{id}/files/uploadaceita um parâmetro de querypathopcional com a pasta de destino, relativa à raiz da aplicação. Deixe vazio ou omita para enviar à raiz. Três novos códigos de erro podem ser retornados:INVALID_PATH,FORBIDDEN_PATHePATH_IS_FILE. - SDKs: JavaScript
apps.files.upload(id, file, filename, { path }), Pythonupload(..., path="src")e GoApplicationFileUploadParams{Path: "src"}. - CLI:
vertra app commit --path srcenvia para essa pasta.
Arquivos enviados aparecem na hora ao reiniciar
Com Reiniciar aplicação marcado, os arquivos enviados só apareciam na lista depois que o reinício terminava. Agora aparecem assim que o upload é concluído.5 de outubro de 2026
Menu da conta
O menu da conta agora abre um painel agrupado: perfil, aparência, idioma, configurações, faturamento, CLI, VS Code, MCP, changelog, documentação, suporte, troca de workspace e sair.Pague com cartão, com renovação automática
Agora você pode pagar um plano com cartão de crédito Visa ou Mastercard, além do Pix, sem sair do checkout da Vertra.- Um cartão fica salvo na sua conta, e seu plano renova automaticamente no cartão padrão. O cartão é cobrado 3 dias antes de o plano expirar, e você recebe um e-mail no mesmo dia. Se a cobrança falhar, ela é tentada de novo em cada um dos 2 dias seguintes e no dia da expiração; se todas as tentativas falharem, o plano expira normalmente. Se o seu banco pedir confirmação, você recebe um e-mail para confirmá-la.
- Não há período de fidelidade. Para parar a renovação automática, use Cancelar renovação no cartão do plano em Faturamento: seu plano continua ativo até a data de vencimento, o cartão fica salvo, e você pode reativar a renovação a qualquer momento.
- Pagamentos via Pix não renovam sozinhos; você continua recebendo o aviso de expiração habitual.
- O plano Economy é pago somente via Pix, então nunca renova automaticamente.
- A Vertra nunca vê nem armazena o número do seu cartão: o cartão e os seus dados de cobrança ficam guardados pela Stripe, e a Vertra mantém apenas a bandeira, os últimos 4 dígitos e a validade.
Dados de cobrança
Comprar um plano agora exige dados de cobrança, porque eles são necessários para emitir a nota fiscal de serviço (NFS-e). No Brasil: nome, CPF ou CNPJ e endereço completo (CEP, rua, número e bairro; cidade e estado são preenchidos a partir do CEP). Fora do Brasil: nome, rua, cidade, país e código postal. O telefone é opcional. Preencha em Faturamento; se faltarem, o checkout pede antes do pagamento. Salvar um cartão novo não altera esses dados.Períodos de cobrança: 1, 3 ou 12 meses
Os planos podem ser comprados para 1, 3 ou 12 meses. Uma compra de 3 meses tem 5% de desconto, e uma de 12 meses tem 15% de desconto sobre o preço mensal. A opção de 6 meses foi removida. Os preços continuam em R$, e o site agora mostra, ao lado deles, um valor aproximado em dólar americano como referência.Notas fiscais de serviço automáticas (NFS-e)
A nota fiscal de serviço (NFS-e) brasileira é emitida automaticamente para todo pedido pago e enviada por e-mail, em nome e com o CPF ou CNPJ dos seus dados de cobrança. A emissão pode levar alguns minutos, e um reembolso integral cancela a nota fiscal. Pedidos sem cobrança e códigos de resgate não geram nota.Mudanças na API
POST /v1/ordersaceita apenasmonthscom1,3ou12; qualquer outro valor retorna400 INVALID_MONTHS. O plano Economy aceita apenas1.- Criar um pedido e consultar o status agora retornam
allowed_payment_methods. Para o plano Economy, o valor é["pix"]. POST /v1/orders/{orderId}/initiate/pixretorna o mesmo QR code enquanto ele ainda for válido, e o QR code expira junto com o pedido. Retorna409 ORDER_NOT_PAYABLEenquanto um pagamento por cartão do mesmo pedido está sendo confirmado.
SDKs (JavaScript, Python e Go)
- Novos
billing.details()ebilling.updateDetails()(update_details()em Python,DetailseUpdateDetailsem Go) leem e atualizam seus dados de cobrança pela rota/v1/users/me/billing, com o endereço estruturado, CPF ou CNPJ e telefone opcional.orders.createfalha comBILLING_DETAILS_INCOMPLETEaté que estejam completos. - As respostas de pedido incluem
allowed_payment_methods, e cada pedido na lista incluihas_receipt. - O filtro da lista de pedidos aceita
cardcomo provedor, além depixeredeem_code. - JavaScript: os tipos de cobrança, runtime e reinício agora vêm direto de
@vertracloud/api-types0.3.2.apps.runtimes()retornaAPIApplicationRuntimes, eapps.restart()recebeRESTPostAPIApplicationRestartBody. Se você importava os nomes de tipo locais antigos, troque para estes. - Os READMEs listam pagamento com cartão, cartões salvos, renovação automática, prévia de cupom e recibos como exclusivos do dashboard, e não mencionam mais a transferência de propriedade do workspace, que foi removida.
Servidor MCP
- Novas ferramentas para ler e atualizar seus dados de cobrança.
create_appeupdate_app_configaceitam o comando de build (build).create_app,create_databaseecreate_orderexplicam o erroFREE_PLAN_SUSPENDED.
Extensão do VS Code
- Criar uma aplicação ou um banco de dados no plano Free suspenso mostra uma mensagem clara com um botão Ver planos.
- Abrir um caminho de arquivo como pasta no explorador de arquivos remoto agora mostra o erro certo, em vez de uma falha genérica.
CLI
- Nenhuma mudança necessária. A CLI recebe as atualizações do SDK Go na próxima versão.
30 de setembro de 2026
Novos projetos exigem um plano pago
O plano Free não cria mais novas aplicações ou bancos de dados. Projetos que já estão rodando no plano Free continuam online.- Criar uma aplicação ou um banco de dados no plano Free agora retorna
403 FREE_PLAN_SUSPENDED. - Quando isso acontece durante um deploy no dashboard, você pode escolher um plano e pagar com Pix direto na tela de deploy. Assim que o pagamento for confirmado, o deploy continua com os mesmos arquivos, então você não precisa enviar o projeto de novo.
27 de setembro de 2026
Transferência de propriedade do workspace removida
A transferência de propriedade de um workspace para outro membro foi removida da plataforma.POST /v1/workspaces/{id}/transfer-ownershipnão faz mais parte da API.- O dono do workspace continua sendo o único membro que pode renomear ou excluir o workspace, ou vincular e desvincular uma aplicação ou um banco de dados. Isso não muda e continua fixo na conta que criou o workspace.
Um só código de erro para subdomínio já em uso
Criar uma aplicação com um subdomínio que outra aplicação já usa agora retorna409 SUBDOMAIN_TAKEN, o mesmo código de publicar ou alterar o subdomínio. SUBDOMAIN_ALREADY_IN_USE não é mais retornado.Mudanças de plano mantêm cada hora restante
Ao trocar de plano, o tempo que resta no plano atual é convertido em dias do novo plano sem arredondar para baixo. Assim, trocar logo após uma compra não perde mais até um dia.Verificação de robô no login
Pedir um código de login por e-mail agora mostra uma verificação rápida da Cloudflare. Na maioria das vezes ela passa sozinha; quando não passa, um único clique confirma que você é humano. Entrar com Discord, GitHub ou Google continua igual.27 de setembro de 2026
Uma build com falha não perde mais sua nova aplicação
Quando a instalação de dependências ou o comando de build falhava ao criar uma aplicação, a criação falhava, o upload era descartado e o erro que explicava o motivo nunca era mostrado.Agora a aplicação é criada mesmo assim, parada (status: "down"), com a saída da instalação ou do build nos logs:- Dashboard: depois do upload, você cai na aplicação, com o erro do build no console. Corrija os arquivos no gerenciador de arquivos e inicie de novo, sem precisar enviar o projeto outra vez.
- API, SDKs e CLI:
POST /v1/appsretorna201com a aplicação emdown, em vez de um erro.BUILD_FAILED,BUILD_TIMEOUT,INSTALL_FAILED,INSTALL_TIMEOUT,INSUFFICIENT_MEMORYeINSTALL_SHIELD_BLOCKEDcontinuam sendo retornados (422) ao iniciar ou reiniciar uma aplicação existente. - A aplicação conta para o limite de aplicações do seu plano como qualquer outra aplicação parada.
Bun 1.2.23
Aplicações Bun agora rodam na 1.2.23, a versão recomendada e mais recente. As versões 1.2.2 e 1.1.0 não são mais oferecidas: as imagens oficiais delas são construídas sobre uma versão do sistema operacional que deixou de receber atualizações de segurança.- Aplicações sem
VERSION, ou comVERSION=recommended, passam para a 1.2.23 no próximo start ou restart. - Se o seu
vertracloud.configfixaVERSION=1.2.2ouVERSION=1.1.0, troque para1.2.23.
24 de setembro de 2026
Campos de reinício automático removidos da API
O reinício automático está ativo para toda aplicação, em todos os planos, desde 17 de setembro. Os campos que restavam agora foram removidos:- Respostas: as aplicações não incluem mais
auto_restart. Se a sua integração lê esse campo, trate o reinício automático como sempre ativo. - Requisições:
autorestartemPOST /v1/appseauto_restartemPATCH /v1/apps/{id}/confignão fazem mais parte da API. Clientes que ainda os enviam continuam funcionando, pois o campo é simplesmente ignorado. - SDKs e CLI: os SDKs de JavaScript, Python e Go removem o campo, e a CLI remove a flag
--autorestart. vertracloud.config: uma linhaAUTORESTARTantiga é ignorada e não bloqueia o upload.
A versão de runtime escolhida é a que roda
A versão do runtime escolhida no assistente, em Configurações → Geral, emVERSION ou pela API é agora a versão que a aplicação executa.- Escolher a versão mais recente roda a versão mais recente. Antes, escolher Node.js 24.5.0 ou Ruby 3.4 (o
latestde cada um) podia, sem aviso, fazer a aplicação ser construída na versão recomendada. - A versão que você confirma prevalece. Quando um
.ziptem umVERSIONemvertracloud.config, o assistente o preenche; se você escolher outra antes de criar, a aplicação agora roda a que você escolheu. Antes, o valor do arquivo podia sobrescrever a sua escolha. - Versões desconhecidas são recusadas. Uma versão que não existe para a linguagem da aplicação responde
400 INVALID_VERSION, em vez de cair silenciosamente em outra. Veja Listar runtimes para os valores válidos.
23 de setembro de 2026
Respostas vazias e erros de validação padronizados
Três ajustes nos formatos de resposta da API, para que todas as rotas sigam o mesmo envelope:- Uma resposta vazia é
{ "response": null }. Remover uma variável de ambiente, salvar, mover e excluir um arquivo, remover um domínio personalizado, limpar o cache, remover um webhook de deploy e excluir uma aplicação respondiam{}. Agora respondem{ "response": null }, como as rotas de workspace já faziam. - O campo inválido vai para
details.path. Um400 VALIDATION_ERRORincluíapathsolto no topo da resposta; agora vem como{ "code": "VALIDATION_ERROR", "message": "...", "details": { "path": "..." } }. - Erros de cliente do gerenciador de arquivos são
400, não500. Enviar sem arquivo (NO_FILE_UPLOADED) ou um zip ilegível (INVALID_ZIP_STRUCTURE) respondia500; agora responde com o status4xxcorreto.
GET /v1/apps/runtimesresponde apenas com{ "response": { ... } }, sem o campo extrastatus.PATCH /v1/users/meaceita apenaspt-br,en-usoues-esparalanguage.POST /v1/users/{id}/snapshots/{snapshot_id}/restorerejeita umresource_idinválido com400.POST /v1/orders/{orderId}/initiate/pixsempre retornatransaction_amountcomo número.
path no topo de um erro ou tratava {} como sucesso, atualize para os formatos acima. Os tipos de @vertracloud/api-types já descrevem o novo formato.Códigos de erro relacionados a aplicações e bancos de dados também foram padronizados.Conteúdo de arquivo sempre em base64
O conteúdo de arquivo retornado por Obter conteúdo de arquivo da aplicação e pelos SDKs agora é sempre base64 padrão. O camposize da resposta reflete o tamanho real do arquivo em bytes, e não o comprimento da string codificada. Antes, o formato variava conforme o tipo de arquivo. Se a sua integração tratava formatos diferentes de conteúdo, esse tratamento não é mais necessário.22 de setembro de 2026
Instalador da CLI para macOS, Linux e Windows
A CLI agora é um único binário, sem dependências, que se instala com um comando:- macOS e Linux:
curl -fsSL https://cli.vertracloud.app/install | sh - Windows (PowerShell):
irm https://cli.vertracloud.app/install | iex
vertra no seu PATH. Para atualizar, execute o mesmo comando de novo.Veja a página CLI para conectar sua conta e fazer o primeiro deploy.Créditos de uso e de IA removidos
Os créditos de uso e os créditos de IA não existem mais na Vertra Cloud.POST /v1/orders aceita apenas pedidos de plano, e nenhum payload traz mais use_credits ou credits_used. Pedidos de crédito anteriores a esta mudança não aparecem mais no histórico de pedidos do usuário.Resposta de domínio personalizado simplificada
As rotas que leem e vinculam um domínio personalizado (GET e POST /v1/apps/{id}/network/custom) agora retornam apenas { "domain": "example.com" }, como o tipo público já descrevia. O status de validação dos registros DNS continua na rota Registros DNS do domínio personalizado.Dois códigos de erro de domínio personalizado foram renomeados para CUSTOM_DOMAIN_REGISTRATION_FAILED e CUSTOM_DOMAIN_RECORD_NOT_FOUND.Se a sua integração compara esses códigos, atualize para os novos nomes.Atualização da documentação: primeiro deploy e configuração
A documentação foi atualizada para acompanhar o dashboard atual:- Primeiro deploy reescrito para seguir o fluxo atual de Novo Projeto: origem, build, ambiente, rede, revisão e deploy, incluindo a criação a partir de um snapshot.
- Nova página Configuração: cada chave do
vertracloud.config, o que pode mudar depois do deploy, comandos de start e build por framework, porta, variáveis de ambiente e os limites de uma aplicação. - Deploy pelo GitHub agora explica os deploys automáticos como funcionam hoje: a Vertra cria o webhook no seu repositório para você, e só pushes para
mainoumasterpublicam. - Os tutoriais agora usam o mesmo passo a passo de deploy, seja pelo dashboard, pela CLI ou pelo VS Code.
- A referência da API ganhou páginas para excluir um banco de dados, atualizar um perfil e listar todos os snapshots de uma conta, e corrigiu a rota de exclusão de variável de ambiente, o corpo de atualização de banco de dados e os códigos de erro de autenticação.
Selo “Powered by Vertra Cloud” no Pro
No plano Pro, as páginas HTML publicadas mostram um pequeno selo “Powered by Vertra Cloud” no canto inferior direito, com link de volta para a Vertra. Ele não aparece no Scale nem em planos superiores, e trocar de plano liga ou desliga o selo imediatamente, sem precisar de novo deploy.Páginas de SDKs e GitHub Actions no site
A seção de ferramentas para desenvolvedores ganhou duas novas páginas no site:- SDKs: instalação e exemplos para JavaScript, TypeScript, Python e Go, recursos disponíveis e perguntas frequentes.
- GitHub Actions: um workflow para copiar, configuração de secrets e opções para atualizar uma aplicação existente.
SDKs oficiais de JavaScript, Python e Go
SDKs
@vertracloud/sdk-api(npm),vertracloud-api(PyPI) egithub.com/vertracloud/sdk-api-gochegam como clientes oficiais da API pública. Um método por rota, autenticação pela mesma chave de API com escopos, e cobertura de aplicações, bancos de dados, snapshots, conta, workspaces e cobrança, sem cache, retentativas automáticas ou estado interno. Veja SDKs.- Os três expõem streaming de saída em tempo real de uma aplicação (
apps.realtime): um gerador assíncrono em JavaScript, um stream iterável em Python e um iterador (Next/Event) em Go. - Toda resposta de erro vira um erro estruturado, sempre com um
codeacessível: em JavaScript e Python, uma classe de exceção por status HTTP (AuthenticationError,NotFoundError,ValidationError,RateLimitError, entre outras); em Go, um único*rest.APIErrorcom métodos comoIsNotFoundError()eIsRateLimitError(). - O que continua exclusivo do dashboard (histórico de atividades, notificações, gerenciamento de chaves de API, convites de workspace, a aba Dados dos bancos de dados, downgrades de plano e exclusão ou transferência de workspace) está listado em SDKs → O que você não pode fazer com uma chave de API.
API
- O caminho de criação do webhook de deploy agora é
/deploys/webhook, no singular, igual às rotas de consulta e exclusão que já usavam essa forma. Referência atualizada em Criar webhook de deploy. - O histórico de atividades é exclusivo do dashboard e não tem equivalente na API pública nem nos SDKs.
Workspaces por chave de API e MCP
Mais ações de workspace agora estão disponíveis fora do dashboard, pelos SDKs, pela CLI, pela extensão do VS Code e pelo servidor MCP:- Excluir um workspace com o novo escopo
workspaces:delete. Só o dono do workspace pode, como no dashboard. - Convites com o novo escopo
workspaces:invites: listar e revogar os convites de um workspace, e ver, aceitar ou recusar um convite por token. A chave age como a conta que a possui, então um convite por e-mail só é aceito se combinar com o e-mail dessa conta. - Solicitações de ação:
workspaces:readlista as solicitações, eworkspaces:writecria uma para alguém com permissão de aprovação.
read e write, apenas em full ou em uma seleção personalizada, e aparecem desmarcados na tela de autorização de aplicativos conectados. As permissões de papel do workspace continuam valendo para a chave.Algumas operações de workspace continuam exclusivas do dashboard, incluindo criar convites, transferir a propriedade, aprovar ou rejeitar solicitações de ação e exportar o histórico de atividades.21 de setembro de 2026
Páginas de CLI e VS Code para desenvolvedores
As ferramentas para desenvolvedores da Vertra Cloud agora têm páginas próprias:- A página da CLI cobre instalação, diagnósticos antes do deploy e comandos de logs, aplicações, bancos de dados e automação, com saída em JSON.
- A página da extensão oficial do VS Code 1.0 cobre instalação, conexão por conta ou chave de API e os recursos de deploy, logs, métricas, arquivos remotos, bancos de dados e snapshots dentro do editor.
Nova aparência para notificações
As notificações ficaram mais compactas, com ícones baseados no contexto e transições suaves nos temas claro e escuro.- Novos estilos neutro, suave, com contorno e sólido para mensagens de sucesso, erro, informação e atualização.
- Suporte a ações, botão de fechar e barra de progresso para operações que informam o próprio progresso.
- As animações respeitam a preferência de movimento reduzido do dispositivo.
19 de setembro de 2026
Pastas e favoritos salvos por conta
Pastas e favoritos agora são salvos na conta, em vez de depender do armazenamento local do navegador ou do editor.- A organização pessoal é separada da organização de cada workspace.
- Pastas podem ser criadas, renomeadas, ter a cor alterada e ser reordenadas.
- Aplicações e bancos de dados podem ser colocados em pastas e marcados como favoritos de forma independente.
- O dashboard, os workflows, a CLI, o MCP e a extensão do VS Code usam a mesma organização persistida.
- A lista de projetos e o Flow mostram o mesmo estado de pastas e favoritos; os grupos do canvas do próprio Flow continuam locais e independentes.
- As ações são registradas no histórico de atividades, inclusive quando feitas por meio de uma chave de API.
Flags de reinício: reinstalar dependências e forçar build
Reiniciar aplicação agora aceita dois campos opcionais no corpo:reinstall_dependenciesreinstala as dependências da aplicação do zero, ignorando o cache de instalação. É o mesmo que Reinstalar Dependências no gerenciador de arquivos do dashboard.force_buildexecuta de novo o comando de build da aplicação, mesmo que nenhum arquivo de código tenha mudado desde o último build. É o mesmo que Forçar build no dashboard.
Extensão do VS Code 1.0
A extensão da Vertra Cloud para o VS Code chega à versão 1.0, disponível no VS Code Marketplace e no Open VSX, além de um arquivo.vsix para instalação manual.O arquivo vertracloud.config na pasta vinculada agora tem suporte dedicado: autocompletar de campos, descrições ao passar o mouse e avisos inline quando um valor está ausente ou malformado. Os logs em tempo real agora vão para um canal de saída do editor, em vez de um terminal integrado.As demais ações de gerenciamento de aplicações continuam disponíveis no dashboard.Veja Gerencie a Vertra Cloud pelo VS Code para a lista completa de recursos.18 de setembro de 2026
Servidor MCP e requisições guiadas por chave de API
A Vertra Cloud agora tem um servidor MCP oficial (@vertracloud/mcp), que dá às ferramentas compatíveis com MCP a capacidade de gerenciar aplicações, bancos de dados, snapshots e cobrança — sempre pela sua chave de API e dentro do que ela permite. Instale localmente com npx -y @vertracloud/mcp ou conecte-se ao endpoint MCP oficial listado na página de integração.Três novos escopos de chave de API chegam junto: billing:read (listar pedidos e consultar o status), billing:write (criar um pedido de plano e gerar um código Pix) e redeem:write (resgatar um código promocional). Fazer downgrade de plano continua sendo uma ação exclusiva do dashboard.Veja Conecte a Vertra Cloud a agentes de IA (MCP) para a lista completa de ferramentas.17 de setembro de 2026
Reinício automático em todos os planos
O que mudou
O reinício automático deixou de ser um recurso restrito a um plano — agora é o padrão para toda aplicação, em todos os planos, incluindo o Free. Não existe mais um controle no dashboard para ligá-lo ou desligá-lo; ele fica sempre ativo.- Um container que cai volta sozinho, no Free como em qualquer outro plano.
- A proteção contra loop de falhas continua a mesma: 5 quedas em 10 minutos desativam o reinício automático por 24 horas, com intervalo mínimo de 1 hora entre reinícios e mínimo de 60 segundos online para o container ser considerado estável.
- O campo
AUTORESTARTemvertracloud.configainda é aceito, mas agora é ignorado — ele não precisa mais estar no arquivo. - Na API, o campo
auto_restartcontinua nas respostas das aplicações e agora é sempretrue; o campoautorestartno corpo de criação ainda é aceito por compatibilidade, mas é ignorado.
16 de setembro de 2026
Limites de requisições por minuto e por dia na API
Chamadas feitas com uma chave de API agora respeitam duas novas janelas de limite, escalonadas pelo plano da conta, além dos limites por rota já existentes (ações de ciclo de vida, console SQL, alterações de subdomínio etc.):- Por minuto, de 30/min no Free até 480/min a partir do Enterprise-12. Ao excedê-lo, a API retorna
429 RATE_LIMIT_EXCEEDED. - Por dia, de 1.000/dia no Free até 864.000/dia no Enterprise-32, com reinício à meia-noite, no horário de Brasília. Ao excedê-lo, a API retorna
429 DAILY_QUOTA_EXCEEDED.
- A criação manual de snapshots ganhou limite próprio — 1 a cada 5 minutos no mesmo projeto e 10 por hora na conta — para não competir com o snapshot automático que a plataforma já faz antes de excluir ou redefinir um banco de dados. Ao excedê-lo, retorna
429 SNAPSHOT_RATE_LIMITED. - Correção de unidade: a cota de requisições da API era sempre diária, não mensal como a documentação dizia. Nenhum número mudou de tamanho; só a unidade estava errada.
- Correção no plano Intermediary: a cota diária publicada era 56.000; o valor correto é 115.200.
- Correção no reset de banco de dados: o limite é 1 por hora, não 1 a cada 3 horas.
15 de setembro de 2026
Nova página Sobre
A página Sobre foi reorganizada para separar melhor a apresentação da empresa dos marcos da sua história.A linha do tempo agora empilha os cards ao rolar, com datas mais fáceis de encontrar e detalhes destacados no marco atual, tanto no tema claro quanto no escuro.14 de setembro de 2026
Nova aparência para a página de aplicações
A página pública de aplicações agora abre com uma nova ilustração, mantendo espaço livre para a mensagem principal.Comando de build, vCPU por aplicação e novos limites de armazenamento
Comando de build
- Novo campo
build_command, em todos os planos. Ele roda em todo deploy (criação, upload de zip, deploy pelo GitHub, reinstalação de dependências ou troca do próprio comando), sempre depois da instalação das dependências e antes de a aplicação iniciar. Um restart simples não roda o build de novo se o anterior já tiver terminado com sucesso com o mesmo comando. - Ele roda em um ambiente isolado da aplicação: 2× a RAM dela (mínimo de 1 GB, máximo de 4 GB) e 2× a vCPU dela (mínimo de 1, máximo de 2), com timeout de 10 minutos. A instalação de dependências mantém um timeout próprio e separado, agora de até 15 minutos.
- Nova chave
BUILDemvertracloud.config, ao lado deSTART. - Criar uma aplicação a partir de um zip de Next.js, Nuxt, SvelteKit, Remix, React Router, Astro, Gatsby ou Vite agora sugere automaticamente os comandos certos de build e de start, editáveis antes de criar. O arquivo de entrada também passa a ser reconhecido nesses projetos, que não têm
index.js. - O ambiente de build tem o dobro da banda e do limite de requisições da aplicação, porque baixar dependências pesa mais do que servir tráfego. Ao excedê-lo, o deploy é interrompido, do mesmo jeito que já acontecia com uma aplicação no ar.
Armazenamento
- Aplicações: 10 GB fixos, independentemente da memória (antes, o teto crescia com a RAM).
- Bancos de dados: 6 GB + 1 GB para cada 512 MB de RAM alocada, sempre arredondado para GB inteiros. Um banco de 1 GB agora tem 8 GB; um de 2 GB tem 10 GB. Nenhum banco existente perde espaço.
vCPU por aplicação
- Uma aplicação com 2 GB ou mais de RAM agora recebe a vCPU completa do plano; abaixo disso, recebe um terço da vCPU do plano, com piso de 1 vCPU. Mais memória nunca resulta em menos vCPU.
Limite horário de deploys
- Criar uma aplicação, enviar um zip, fazer deploy pelo GitHub, reinstalar dependências e trocar o comando de build passam a contar para um teto horário por conta: 5 no Free, 10 no Economy, 20 no Pro, 40 no Scale e 60 a partir do Intermediary. Reiniciar e parar não contam, e um push no GitHub acima do limite é ignorado e registrado no histórico de atividades.
Apresentando o Vertra Flow
O Vertra Flow ganhou página própria no site. Ela apresenta o canvas interativo e explica como grupos, notas, previews e anexos ajudam a organizar aplicações e bancos de dados.A página também deixa claro o que ainda está em desenvolvimento: colaboração em tempo real, comentários no canvas e formas mais expressivas de representar redes de aplicações.O vertracloud.config não fica mais no volume
O que mudou
Overtracloud.config não é mais gravado no volume da aplicação. Até agora ele era gravado uma vez, na criação, e nunca acompanhava as mudanças feitas na aba Configurações: o usuário abria o arquivo no gerenciador de arquivos, via a memória e o comando de start antigos, editava, e nada acontecia.Agora:- Ao baixar o projeto, o zip vem com um
vertracloud.configgerado a partir da configuração atual: nome, arquivo de entrada, memória, versão, comando de start, reinício automático e subdomínio. - Ao criar um snapshot, vale o mesmo: o snapshot já levava o arquivo gerado, e continua levando.
- Ao enviar um zip, o arquivo é lido para preencher o formulário e descartado na extração; ele não aparece mais no gerenciador de arquivos.
- Aplicações existentes perdem a cópia antiga no próximo restart ou rebuild.
KEY=value, com as chaves NAME, DESCRIPTION, MAIN, MEMORY, AUTORESTART, START, VERSION e SUBDOMAIN.12 de setembro de 2026
Nova página para endereços não encontrados
URLs que não existem agora abrem uma página 404 própria da Vertra Cloud, com caminhos diretos de volta para a página inicial e para o dashboard.11 de setembro de 2026
Histórico de atividades mais completo
O histórico de atividades da conta e de cada projeto ganhou mais eventos: alterações de arquivos pelo gerenciador de arquivos (salvar, excluir, mover, enviar), deploys, restaurações de snapshot e alterações de domínio.Cada atividade agora mostra quem a disparou, com um filtro próprio para navegar pela origem.Chaves de API com escopos e IPs permitidos
Até agora, uma conta tinha uma única chave de API com acesso total. Agora você pode criar até 10 chaves, cada uma com um nome, um conjunto de permissões (aplicações, bancos de dados, snapshots, conta, workspaces, notificações — com os atalhos “somente leitura”, “leitura e escrita” e “acesso total”) e, opcionalmente, uma lista de IPs permitidos. A verificação usa o IP de origem real, não um cabeçalho que o próprio cliente envia. Uma chave usada só por um servidor de CI, por exemplo, pode ser restrita a criar deploys e não ver mais nada — e travada no IP desse servidor.O segredo de uma chave nova (vc_live_...) aparece só uma vez, na criação ou na rotação; depois disso só o início e o fim continuam visíveis. Chaves geradas antes desta mudança continuam funcionando normalmente, com acesso total.A geração antiga (o botão único de “gerar chave”) continua disponível para scripts e para a CLI.10 de setembro de 2026
Gerenciador de dados redesenhado
A aba Dados dos bancos de dados agora organiza o navegador de objetos e o conteúdo em um único espaço de trabalho, com hierarquia mais clara e melhor aproveitamento do espaço no desktop e no celular.Tabelas SQL, coleções do MongoDB e chaves do Redis ganharam ações mais fáceis de encontrar, filtros explícitos, resumos compactos e paginação simples, com intervalo, tamanho da página e posição atual. O cabeçalho repetido e os destaques de cor desnecessários também foram removidos.Correção: console silencioso ao reinstalar dependências em um reinício rápido
Ao reiniciar uma aplicação depois de trocar o runtime (ou em qualquer reinício que reinstala dependências), se a instalação terminava rápido, o console do dashboard não mostrava nada dela: nem aviso de início, nem linhas do instalador. A aplicação voltava online já pronta, sem nenhuma explicação na tela nesse meio-tempo.Agora o console detecta quando uma instalação está em andamento durante um reinício e transmite os logs ao vivo, do mesmo jeito que já fazia ao criar uma aplicação.Trocar a linguagem de uma aplicação existente
Antes, escolher a linguagem errada ao criar uma aplicação era definitivo: a única saída era recriar a aplicação do zero, o que apagava o volume e todo o histórico de deploys. Agora o runtime pode ser trocado a qualquer momento, em Geral → Ambiente.Antes de confirmar a troca, o dashboard mostra os riscos reais da mudança:- ela só vale a partir do próximo reinício: o container em execução continua no runtime antigo até lá;
- o arquivo de entrada e o comando de start não mudam automaticamente: um
index.jsescrito para Node não roda como aplicação Python, por exemplo; - a versão do runtime volta para a versão recomendada da nova linguagem, porque a versão antiga pode não existir nela;
- nenhum arquivo do projeto é apagado por essa operação.
node_modules depois de trocar para Python, por exemplo) ficavam no volume ocupando a cota do plano, sem reinstalação nem remoção automática. Agora, na janela “reiniciar agora?” que aparece depois de salvar a troca, uma caixa opcional permite apagar os diretórios de artefatos conhecidos da linguagem anterior antes de instalar os novos — nunca um arquivo de código do projeto.Snapshots mantêm o nome do projeto
Cada snapshot agora guarda o nome que o projeto tinha no momento em que foi feito. Na lista de snapshots, ao abrir um projeto, aparece, além da data, o nome que ele usava naquele dia — útil quando o projeto foi renomeado e um snapshot de duas semanas atrás pertence a um “api-staging” que hoje tem outro nome. Quando o nome não mudou, nada se repete: só a diferença aparece.Snapshots de projetos já excluídos também deixaram de aparecer como código. Antes, ao excluir o projeto, o nome sumia da lista e restava só o identificador; agora o último nome conhecido permanece, com a indicação de que o projeto não existe mais.Snapshots feitos antes desta mudança continuam sem nome próprio: o nome de hoje não foi gravado retroativamente nas datas antigas, porque isso registraria uma informação que não era verdadeira naquele dia.9 de setembro de 2026
Página de aplicações
A Vertra Cloud ganhou uma página pública sobre aplicações em/apps, em português, inglês e espanhol.Ela explica o caminho do ZIP ou do GitHub até o container, os tipos Bot e Website, os runtimes suportados, os métodos de deploy e os recursos operacionais: isolamento, logs, métricas, snapshots, variáveis de ambiente, publicação web e domínios personalizados.Também documenta o ciclo de vida e a recuperação após quedas, com perguntas frequentes publicadas como dados estruturados para os mecanismos de busca.Origem dos bancos de dados
As páginas públicas de PostgreSQL, MySQL, MongoDB e Redis agora incluem uma seção sobre como cada banco surgiu, com marcos históricos e o perfil de um autor ou colaborador central.As páginas continuam disponíveis em português, inglês e espanhol.Nova experiência Enterprise
A página Enterprise agora termina com um configurador de capacidade redesenhado: memória, processamento, limite de projetos e preço mudam juntos conforme você escolhe um nível.O SLA, o suporte premium e a escala de 4 GB a 32 GB ficaram mais claros.7 de setembro de 2026
Páginas para cada linguagem e banco de dados
Uma página por linguagem
O site agora tem/runtimes, a lista das dez linguagens que a plataforma executa, e uma página dedicada para cada uma: JavaScript, TypeScript, Python, Go, Rust, Java, Bun, PHP, Ruby e sites estáticos.Cada página responde ao que as pessoas perguntam antes de se cadastrar:- Quais versões existem, qual é a recomendada e qual é a mais recente, com o valor exato de
VERSIONpara overtracloud.config. - O que a plataforma faz automaticamente para aquele runtime: instalação de dependências durante o build, reinício automático, logs e métricas em tempo real.
- O que as pessoas rodam com ele: bots, APIs, workers, sites.
- A configuração mínima, em um bloco para copiar.
- As perguntas mais comuns, com respostas curtas, as mesmas que chegam ao suporte.
Uma página por banco de dados
Os quatro bancos de dados gerenciados ganharam páginas próprias em/databases: PostgreSQL, MySQL, MongoDB e Redis. Cada uma cobre a versão, a porta, o modo de autenticação e o formato do host, um comando de conexão pronto com TLS e o que cada operação do dashboard faz, inclusive o que um reset destrutivo apaga.A página /databases continua sendo a visão geral do serviço; as novas páginas são para quem já sabe qual motor quer.Em três idiomas
Todas as páginas existem em português, inglês e espanhol, com a URL de cada idioma declarada para os mecanismos de busca. O FAQ de cada página também é publicado como dados estruturados, para poder aparecer diretamente nos resultados de busca.Onde encontrá-las
As dez linguagens e os quatro bancos de dados aparecem no rodapé de todas as páginas, em colunas próprias, e as linguagens também aparecem no menu Recursos do topo, sem passar pelo hub.Limpeza
Páginas-protótipo que nunca foram anunciadas saíram do ar junto com alguns arquivos de imagem não usados. Nenhuma URL publicada antes foi removida.6 de setembro de 2026
Planos, limites e guias na documentação
A página Planos e limites reúne preços, recursos e limites da plataforma, junto com as versões disponíveis e os bancos de dados gerenciados. Os valores agora têm uma referência pública centralizada.- O plano Free passa a ser descrito como opção de teste, para experimentar a plataforma antes de usá-la em produção, com os limites aplicáveis ao lado.
- O SLA publicado foi padronizado em todas as páginas.
- Nova seção “Guias”, com conteúdo passo a passo sobre como hospedar bots do Discord e fazer deploy de aplicações Node.js.
- As entradas recentes do changelog foram adicionadas à navegação, para que tenham uma URL publicada.
- Títulos e descrições das páginas foram atualizados para explicar a que cada página responde.
Novo design de e-mails
Os e-mails de acesso, de plano e de alerta ganharam um layout flat, com o logo da Vertra, links de redes sociais, cantos suaves, divisórias discretas e informações melhor organizadas. Os botões agora usam fundo claro com contorno, inclusive na versão para o Outlook. O layout tem versões clara e escura; as cores finais também dependem do cliente de e-mail usado.Tutorial de primeiros passos no dashboard
Na barra lateral do dashboard, Guia de Início percorre cinco passos, com um GIF e instruções sobre o que clicar. A aplicação só entra no ar depois de Novo Projeto. O progresso é salvo naquele navegador; quando todos os passos estiverem concluídos, aparece uma confirmação e o guia desaparece. O botão de upgrade para o próximo plano aparece no mesmo lugar; ele não aparece no último passo.Termos, privacidade e uso aceitável reescritos
Os três documentos que regem o uso da Vertra Cloud foram reescritos e agora existem em português, inglês e espanhol: Termos de Uso, Política de Privacidade e a nova Política de Uso Aceitável. Os três se referenciam entre si e identificam quem presta o serviço e quem é responsável pela proteção de dados.- Você pode desistir em até 7 dias da primeira compra de um plano pago, com reembolso integral pelo mesmo meio de pagamento, como garante o Código de Defesa do Consumidor. Os termos antigos diziam “sem reembolso”, uma cláusula que não tinha validade. Renovações e upgrades continuam sem direito de desistência.
- A expiração do plano é descrita como realmente funciona: os projetos são desligados, a plataforma mantém um snapshot de cada aplicação e banco de dados por 30 dias, e renovar dentro desse prazo restaura tudo. Os termos antigos mencionavam suspensão após 1 dia e exclusão após 7, e diziam que o pagamento era somente via Pix e que nenhum plano tinha backups. Nada disso era verdade.
- A Política de Privacidade agora informa quem trata seus dados e por quê. Quando a Vertra é a controladora e quando é apenas operadora do conteúdo dos seus projetos; a base legal de cada finalidade; onde os dados são armazenados e as transferências internacionais; por quanto tempo cada tipo de dado é mantido; como exercer cada direito previsto na LGPD, com prazo de resposta de 15 dias; e o compromisso de comunicar incidentes de segurança. O encarregado de proteção de dados (DPO) é identificado, e o canal de contato é [email protected].
- A Política de Uso Aceitável agora é um documento próprio. Diz o que pode e o que não pode rodar na plataforma, o que caracteriza abuso de recursos, como denunciá-lo e quais são as penalidades. Só uma violação grave gera ação sem aviso; nos demais casos você é notificado e tem prazo para responder.
- Os Termos e a Política de Uso Aceitável agora exigem 30 dias de aviso para qualquer mudança relevante (antes, eram 7), definem a lei e o foro aplicáveis e deixam claro que consumidores podem ajuizar ação no seu domicílio.
- A janela de 30 dias do snapshot agora aparece onde importa, e não só nos Termos. O e-mail de plano expirado mostra o prazo e o caminho de recuperação (renovar, recriar o projeto, restaurar pela página de Snapshots ou baixar o .zip). Os lembretes de expiração e o cartão do plano em Faturamento avisam que, sem renovação, os projetos ficam apenas como snapshot por 30 dias.
/lgpdleva à Política de Privacidade, e o rodapé agora a chama de “Privacidade e LGPD”.- O banner de cookies agora diz o que realmente acontece: analytics e gravação de sessão apenas nas páginas públicas, com consentimento, e nunca no dashboard.
Novo projeto a partir de um snapshot
Em Novo Projeto, Restaurar de um snapshot abre uma caixa para encontrar a aplicação ou o banco de dados e escolher o backup. O resto do fluxo é igual ao de criar o recurso. Voltar ao seletor de tipo, ou o ícone de lixeira no zip, limpa o arquivo e remove o nome e a descrição até que uma nova origem seja informada. Em Projetos, o menu Mais opções leva direto a criar uma aplicação, criar um banco de dados, restaurar um snapshot ou resgatar um código.Lista de projetos em cards ou em lista
Na lista de Projetos, ao lado da busca, um alternador troca entre list (o padrão) e cards, com até três por linha. A escolha fica salva para aquela aba do navegador: se a lista recarregar, o esqueleto de carregamento já tem o mesmo layout, sem piscar o outro.O menu… de um projeto agora cabe na tela. Quando a janela é baixa demais para mostrar todas as ações, o menu rola até Excluir projeto em vez de cortar a parte de baixo.setembro de 2026
Dashboard
- A barra lateral lista Docs, Tutoriais,
llms.txte Servidor MCP acima do divisor da conta. Docs, tutoriais (YouTube@vertracloud) ellms.txtabrem em uma nova aba. O Servidor MCP está bloqueado por enquanto. - A visão geral do workspace agora responde se a frota está saudável. RAM, pico de CPU e uma pontuação de saúde ficam em cards com um medidor segmentado; recursos acima de 80% de RAM ou CPU aparecem listados antes das listas de aplicações e bancos de dados.
- Abrir uma aplicação ou um banco de dados no celular usa uma barra inferior, em vez de uma fileira de rótulos que você precisava rolar para o lado. Overview, logs, arquivos, snapshots e configurações ficam ao alcance do polegar; a atividade continua no menu.
- Dentro de um projeto, os mesmos medidores mostram CPU, RAM e rede (ou armazenamento e conexões, em um banco de dados), com iniciar, reiniciar e parar ao lado do status. Os números de requisições e conexões marcados como “preview” são placeholders até que a API os exponha.
- A página publicada de uma aplicação fica em um card grande com iframe (cerca de 44% do cabeçalho da visão geral). Clique nele para abrir o site no ar em uma nova aba. Ao lado, aparecem tópicos rotulados: ID da aplicação, domínios (subdomínio e domínio personalizado juntos), status com uptime ao lado do cluster, data de criação e origem. A prévia recarrega uma vez por minuto enquanto a página está visível. Um reinício ainda precisa fazer o build, então o card não atualiza dois segundos depois de você clicar. Sem publicação web, o mesmo card continua no lugar e leva às configurações de Rede para publicar.
- A origem de uma aplicação (zip enviado ou repositório do GitHub) aparece na visão geral imediatamente. Conectar ou desconectar o GitHub ainda acontece em Configurações; a visão geral não espera mais uma segunda requisição só para mostrar o rótulo.
- O gerenciador de arquivos abre mais rápido e funciona no celular. Pastas e arquivos compartilham uma só lista, a trilha do caminho leva a qualquer pasta ancestral, e soltar um zip prepara um commit no lugar, em vez de cobrir a página. Ao abrir um arquivo, aparece o placeholder do editor, não a lista de pastas, e navegar por uma pasta já aberta não pisca mais em vazio.
- Os consoles de log podem ser expandidos para uma visão maior. O controle de expandir fica ao lado do menu de overflow; o download fica nesse menu. Esc ou o mesmo controle devolve o console ao seu lugar na página.
- Um plano que vence em três dias corridos ou já venceu mostra um aviso acima da lista de projetos, com uma ação de renovar que leva a Faturamento. “Hoje” e “amanhã” seguem o calendário de Brasília, e o relógio é de 24 horas no horário de Fortaleza com o período do dia (“02:14 da madrugada”, não um “02:14” de 12 horas que poderia ser lido como tarde). A pequena linha “expira em N dias” ao lado do nome do plano foi removida.
- O seletor de projetos lista primeiro o projeto aberto, depois os que estão rodando e por último os parados.
- A seção Recursos no menu do site mobile agora abre com um toque. Antes, ela fechava no mesmo gesto.
- Suporte é uma página, não um card de FAQ apertado. Discord, e-mail e documentação ficam como três links; as perguntas usam o mesmo acordeão de duas colunas da página de planos; os guias abaixo levam a deploy, erros comuns, downgrade e cobrança. O texto antigo que mencionava tickets e chat ao vivo como um produto separado foi removido.
- Depois de um minuto no dashboard, um card no canto inferior esquerdo convida para a comunidade no Discord. Fechá-lo oculta o card por sete dias. O convite da landing page ainda usa o atraso de um minuto e não mantém esse adiamento tão longo.
- Criar um projeto é uma tela dividida. A coluna da esquerda traz uma dica curta para a etapa em que você está; o formulário fica em um só card à direita. Tipo e origem dividem a primeira etapa. Depois de escolher um ZIP ou um repositório do GitHub, você pode dar um nome ao projeto e adicionar uma descrição opcional antes de continuar. Uma aplicação então passa por build, variáveis de ambiente e rede como etapas separadas antes da revisão; um banco de dados passa por motor e armazenamento, e depois pela revisão. Voltar e Continuar ficam fixos na parte inferior desse card depois que você sai da primeira escolha. Se o plano não tiver RAM suficiente para a memória escolhida, a etapa de build avisa e o Continuar fica desabilitado. A importação do GitHub começa com a URL de um repositório, ou você escolhe entre os repositórios da sua conta. As variáveis de ambiente usam o mesmo painel lateral da aba Ambiente de uma aplicação.
- Nomes de projeto seguem o limite da API de 50 caracteres. Uma importação de ZIP ou do GitHub antes mantinha o nome completo do arquivo ou repositório (muitas vezes um timestamp mais um UUID) e então falhava na criação. O assistente agora corta esse nome derivado, e o campo de nome do banco de dados para em 50.
- Snapshots usam a mesma lista e os mesmos diálogos do restante do dashboard. Busca e filtro são iguais aos de Projetos e Atividade, criar um snapshot escolhe um projeto da mesma forma que você adiciona um a um workspace, e a lista de snapshots (na página Snapshots e dentro de um projeto) tem o mesmo layout de linhas. O botão de criar tem o mesmo tamanho de Novo Projeto, sem o preenchimento de destaque.
- Mudar a memória de um projeto agora aparece na lista de projetos imediatamente. A quantidade alocada antes ficava no valor antigo até a lista ser carregada de novo.
- O menu de overflow de uma linha de projeto começa com Detalhes e Configurações. Logs e terminal mantêm seu lugar embaixo, sem repetir “Abrir” em cada linha. Quando o menu não cabe na janela, ele rola para que Excluir continue acessível.
- Projetos podem ser vistos como lista (o padrão) ou como cards, por um controle ao lado da busca. A escolha vale para a aba; os placeholders de carregamento seguem o mesmo layout.
- As chaves de variáveis de ambiente mantêm a caixa que você digita. O campo antes reescrevia cada chave em maiúsculas enquanto você digitava; caixa mista é válida e não é mais forçada.
- No plano Free, abrir Projetos mostra um diálogo de upgrade com o que um plano pago acrescenta. Ele diz que você cria um projeto, não uma aplicação e um banco de dados, porque o Free não cria bancos de dados. A ação leva a Revisar pedido do Economy (mensal, Pix), não à página de planos. Dispensar o diálogo o oculta para a sessão; um aviso na superfície continua acima da lista. O cabeçalho é tingido com a cor do próximo plano (dourado para o Economy), não listrado.
- Um plano pago com 85% do teto de RAM abre o mesmo diálogo para o próximo plano. Economy → Pro (laranja), Pro → Scale (verde), Scale → Intermediary (roxo), Intermediary e superiores → Enterprise (azul). O Enterprise 32, já no topo, não recebe aviso.
- Novo projeto na lista pessoal é um botão dividido. A seta abre Resgatar código como um diálogo em Projetos (
?redeem=também funciona). Depois de um resgate bem-sucedido, o mesmo card de plano usado nos avisos de upgrade agradece e lista o que o novo plano acrescenta em relação ao anterior. O painel de navegação mobile lista Docs, Tutoriais,llms.txte Servidor MCP acima da linha da conta, como a barra lateral do desktop. Criar um projeto continua na página Projetos, não nesse menu. - Mudar a RAM de uma aplicação não trata mais a memória sobrando do plano como o orçamento total. Os 448 MB não usados do plano são o que sobra depois desta aplicação; ela ainda pode manter ou reduzir a própria alocação até 512 MB sem um upgrade. O campo descreve a RAM do container, e “Precisa de mais RAM no plano?” abre o diálogo de upgrade, sem citar o teto desta aplicação.
- Métricas ao vivo de CPU, memória, armazenamento e rede ficam na visão geral mesmo abaixo de 512 MB, inclusive os gráficos: duas amostras ao vivo bastam para traçar a linha. O piso de 512 MB só libera as métricas avançadas (o histórico de 10m / 30m / 24h), e o título do aviso diz isso. “Expandir RAM” leva às configurações do projeto quando o plano ainda tem 512 MB para dar a este projeto, ou abre o mesmo diálogo de upgrade usado em Projetos (
?upgrade=pro&upgrade_for=advancedMetrics) para o próximo plano que de fato tem 512 MB: Pro, não Economy (256 MB). A página antes substituía a seção inteira de telemetria por um card vazio de “hardware insuficiente”. - Recursos bloqueados pelo plano abrem esse mesmo diálogo de upgrade, em vez de levar à página de planos. Os cards de Configurações perderam o selo “A partir do Intermediary” no cabeçalho; o nome do plano agora aparece em um aviso dentro do card, com um link Fazer upgrade do plano. O gerenciador de arquivos e a aba de dados de banco usam o mesmo layout vazio de Snapshots. Criar um snapshot em um plano sem backups (abaixo do Scale) abre o diálogo de upgrade para o Scale, em vez de um toast de erro. O título e a descrição seguem o recurso que abriu o diálogo (snapshot, arquivos, reinício automático, deploy, métricas e assim por diante) e não reutilizam mais o texto “a memória chegou ao teto”, a menos que a própria RAM tenha sido o gatilho. O botão “Upgrade para …” da barra lateral, depois do guia de primeiros passos, usa o mesmo diálogo (
?upgrade=), não um segundo pop-up. Atualizar o dashboard não pisca mais o Economy antes do próximo plano real. - Linhas de conexão que sobem ou vão para a esquerda não dão mais a volta comprida. A curva segue os dois cards, em vez de passar por cima deles antes.
- O nome do projeto na visão geral abre um diálogo para renomeá-lo, editar a descrição e mudar a RAM. Um lápis fica ao lado do título. Salvar uma nova quantidade de memória ainda pergunta se deve reiniciar agora, como em Configurações. Depois de salvar, o cabeçalho atualiza na hora; antes, mantinha o nome antigo até você recarregar a página.
- Voltar na barra lateral de um projeto sobe um nível. Em Dados, logs, arquivos ou configurações, volta para a visão geral daquele projeto; só a partir da visão geral vai para a lista de projetos.
- O nome do plano em Projetos é uma placa colorida, com a cor desse plano e um brilho passando por ela. O link de Faturamento fica embaixo da placa.
Workspaces
- Um workspace não some mais quando o plano termina. Quando um plano pago expira, a conta volta ao Free, que não pode criar workspaces, e a página de Workspaces antes escondia os que você já tinha atrás do aviso de upgrade. Quem estava no Free e pertencia ao workspace de outra pessoa via a mesma tela vazia. A lista agora sempre aparece; só o botão de criar depende do plano.
- Um workspace cujo plano do dono expirou fica congelado, não excluído. Nada é removido: membros, projetos e o próprio workspace permanecem. O que para é a escrita. Renomear, convidar, mudar um papel e vincular um projeto são recusados enquanto o plano não existir, e a linha é marcada como Congelado. Ver, remover um membro ou projeto, sair e excluir continuam disponíveis, e tudo volta a funcionar no momento em que o plano é renovado. O plano que conta é o do dono: um membro no Free de um workspace pago não é afetado.
- Os papéis agora correspondem ao que a tabela diz. Operador pode iniciar, parar e reiniciar aplicações e bancos de dados, que é o objetivo do papel e até então era recusado com um erro de acesso. E o Desenvolvedor não pode mais excluir uma aplicação ou um banco de dados: a exclusão é irreversível, e a tabela de permissões nunca a concedeu. Excluir é só para Dono e Admin. Todo o resto continua igual; o Desenvolvedor segue fazendo deploy, editando arquivos, variáveis de ambiente, rede e configuração.
Workspaces v2
- Códigos de convite foram removidos. Traga pessoas por e-mail (um convite real enviado a um endereço, válido por 7 dias) ou por link (uma URL compartilhável, válida por 24 horas, opcionalmente limitada a um número de usos). Os dois atribuem um papel de antemão, pela aba Convites do workspace.
- Membros podem ter data de expiração. Defina uma ao convidar ou depois, e o acesso termina sozinho nessa data. Isso é útil para um prestador de serviço ou um colaborador temporário, sem que ninguém precise lembrar de removê-lo.
- Atividades e logs de auditoria agora são do workspace, e não só das suas próprias ações dentro dele. Veja tudo o que qualquer pessoa da equipe fez, com a mesma exportação CSV do faturamento.
- As configurações do workspace ficam na barra lateral, não em uma fileira de abas. Ao abrir um workspace, aparecem Geral, Notas, Membros, Papéis, Convites, Projetos, Atividade, Faturamento, Pedidos e Zona de perigo, na mesma navegação do restante do dashboard. A lista de workspaces usa a mesma busca, os mesmos filtros e o mesmo alternador lista/cards de Projetos.
- Um quadro de notas compartilhado para contexto rápido da equipe: notas adesivas em sete cores, visíveis para todos no workspace, agora na própria aba Notas em vez de misturadas em Geral.
- Links de convite continuam copiáveis depois de criados. Um convite por link mostrava a URL uma vez e depois só um botão de revogar. A ação de copiar fica nessa linha durante toda a sessão, e criar um link já o copia para você.
- A aba Projetos é a mesma lista da visão geral do dashboard, com busca, filtros, cards e abertura de projeto, e não uma lista simplificada de nomes.
- Atingir o limite de papéis abre o diálogo de upgrade para o próximo plano que de fato tenha mais papéis, em vez de um toast de erro de plano na folha de criar papel.
- Ações sensíveis podem ser solicitadas em vez de recusadas. Um membro sem permissão para excluir um projeto ou gerenciar um snapshot agora pode pedir; quem tem essa permissão aprova ou rejeita o pedido em uma nova aba Pedidos, e aprovar executa a ação de verdade.
- Um e-mail de resumo semanal resume o que aconteceu nos projetos de um workspace na última semana.
- Você pode sair de um workspace, e um dono pode transferi-lo para outro membro, ambos pelas configurações do workspace.
- Salvar uma nota em um workspace congelado abre o upgrade para o Enterprise. Você ainda pode preencher o editor; Criar nota o fecha e mostra qual plano libera notas no workspace, em vez de um toast de erro de plano.
Rede
- Criar uma aplicação dentro de um workspace não bloqueia mais a publicação web como recurso exclusivo de plano quando o plano do dono do workspace já a inclui. O assistente antes consultava o plano de uma aplicação que ainda não existia, então Enterprise (e Pro+) parecia Free nessa etapa.
- A publicação web pode ser ativada e desativada depois da criação. Uma aplicação criada sem subdomínio antes ficava privada para sempre; a única saída era recriá-la. Nas configurações de Rede da aplicação, agora dá para publicá-la e despublicá-la quando quiser. Publicar sem um plano que permita escolher o nome gera um subdomínio atribuído pela plataforma; com um plano que permite, você escolhe.
- Despublicar destaca o endereço em negrito, e você digita
EXCLUIR(ouDELETE/ELIMINAR) no lugar do nome do projeto para confirmar. Escolher um subdomínio personalizado em vertraweb.app é indicado como recurso do Scale nas configurações de Rede; o aviso de bloqueio antes dava a impressão de que o cartão inteiro de endereço estava bloqueado. - Duas coisas para saber antes de fazer isso. Ligar ou desligar a publicação recria o container, então a aplicação reinicia: espere um curto tempo fora do ar. E despublicar libera o subdomínio: ele não fica reservado para você, então outra pessoa pode registrá-lo. Qualquer domínio personalizado vinculado à aplicação é desvinculado ao mesmo tempo.
- Publicar exige 512 MB de RAM, o mesmo piso que um site criado como site tem. Se a aplicação tiver menos, a requisição avisa e mostra quanto ela tem e quanto precisa, para que você aumente e tente de novo.
- A limpeza do cache de borda voltou a funcionar. O botão nas configurações de Rede nunca chegava à CDN: a requisição era recusada antes de chegar, e a versão da CLI informava sucesso ao limpar um hostname que não existe. Agora a limpeza atinge os hosts reais da aplicação, e você ainda pode indicar hostnames ou URLs específicos para uma limpeza mais restrita.
- Trocar um domínio personalizado agora desvincula o antigo. Vincular um segundo domínio antes deixava o anterior para trás, ainda apontando para a plataforma sem nada que o possuísse. O substituto só é desvinculado depois que o novo domínio está no lugar, então uma falha nunca deixa a aplicação sem domínio.
Site e compartilhamento
- As páginas em português e espanhol agora declaram o idioma. Toda página do site se declarava em inglês para navegadores e mecanismos de busca, qualquer que fosse o idioma lido: uma página
/pt-brera servida marcada comoen-us. Tradutores, leitores de tela e buscadores recebiam a informação errada sobre o idioma. - Cada página tem de novo seu próprio endereço e prévia. Preços, Enterprise, Bancos de dados, Blob Storage, CLI e VS Code apontavam os mecanismos de busca para a página inicial como endereço canônico, então competiam com ela em vez de ranquear por conta própria.
- Links para o site mostram um card de prévia. Páginas como Sobre, Termos e Privacidade eram compartilhadas sem nenhuma imagem de prévia. As páginas que têm imagem própria, como Preços e Enterprise, geravam a imagem com a chave de texto não traduzida impressa dentro, em vez do título real.
- O Intermediary é uma faixa completa de plano em Preços, acima do Enterprise, no mesmo layout amplo da infraestrutura dedicada, e não uma nota de uma linha apontando para a comparação.
- Preços usa o mesmo card de oferta Enterprise da página Enterprise, com texto de capacidade, arte das colunas, slider e checkout, em vez de uma faixa compacta separada.
- Cada card de plano tem um controle “Mais +” que abre a lista completa de recursos, incluindo o que aquele plano não inclui.
- A página de hospedagem de Go agora conta a origem da linguagem. Depois da dobra: por que Go é um binário único, três princípios de design e um retrato do gopher. Depois, a mesma tabela de versões e a mesma configuração de antes.
- O cabeçalho começa com Preços, depois Produto, Enterprise, Desenvolvedores e Recursos. Comunidade saiu da barra superior: Discord, documentação, a referência da API e tickets de suporte ficam em Desenvolvedores, como cards maiores com ícone e uma descrição curta. Produto e CLI/VS Code usam o mesmo tamanho de card.
- Mover entre Produto, Desenvolvedores e Recursos mantém o menu aberto. Passar o mouse de um item do cabeçalho para o seguinte fechava o painel em vez de trocá-lo, então o segundo menu nunca aparecia.
- A tabela comparativa de planos em Preços é legível no celular. Abaixo de uma largura de notebook, cada recurso vira uma lista de planos e valores, em vez de seis colunas espremidas na tela. A partir de
lg, a matriz lado a lado não muda.
Gerenciador de arquivos
- Validação de caminho mais rigorosa no gerenciador de arquivos ao criar pastas e resolver caminhos.
Deploys
- As dependências agora são instaladas fora da memória do plano. A instalação e a compilação antes rodavam dentro do container da sua aplicação, sob um teto de memória dimensionado para executar seu app, não para construí-lo. Só o
npmocioso já usa 60–100 MB. Agora a instalação acontece em um container de vida curta com memória da plataforma, e sua aplicação só inicia depois que ela termina com sucesso. Quando falha, falha uma vez com um motivo, em vez de entrar em loop. - O console mostra a instalação enquanto ela acontece. Enquanto as dependências são instaladas, o container da aplicação ainda não existe; antes, o console ficava vazio e o projeto parecia parado. Agora ele transmite a saída da instalação ao vivo, então um
pipcompilando um pacote a partir do código-fonte é algo que você pode acompanhar em vez de adivinhar. - Uma instalação pode ser interrompida. Enquanto as dependências são instaladas, a única ação oferecida é Parar: ela cancela a instalação, em vez de deixar um botão “Iniciar” para algo que já está rodando.
- Salvar
requirements.txtoupackage.jsonnão trava mais o diálogo de reinstalação. Ele confirma e fecha; a pasta é limpa e o reinício reinstala em segundo plano, com o console mostrando o que acontece. A pasta limpa agora é a certa para a linguagem: o caminho pós-salvamento conhecia só Python e Node, então pedir reinstalação em um projeto Go, PHP, Ruby ou Rust não apagava nada. Editargo.mod,composer.json,GemfileouCargo.tomlagora também oferece a reinstalação, e umpackage.jsondentro de um projeto Python não a oferece mais por engano. - Reiniciar uma aplicação agora mantém o log. Os registros salvos só continham quedas: parar ou excluir uma aplicação salvava o log, e reiniciar o descartava, e reiniciar é o gesto comum. O que a aplicação disse antes de um reinício normal agora é guardado como qualquer outra execução.
- A instalação continua no log depois que termina. O container de instalação é descartado ao terminar, e a saída dele antes ia junto. Agora ela é anexada ao log da própria aplicação e reproduzida com o histórico: recarregar a página ou reabrir o console ainda mostra o que a instalação fez e por que falhou, quando falhou.
- Um projeto instalando dependências não aparece mais como “parado”. O dashboard e o cabeçalho do projeto mostram instalando dependências enquanto isso acontece, na lista e dentro do projeto.
Ciclo de vida e API
- Um projeto parado não aparece mais como quebrado. Uma aplicação ou banco de dados parado não tem container, que é como a parada funciona, e pedir o status dele respondia com erro de servidor. O dashboard tratava isso como uma requisição com falha e continuava mostrando a última leitura boa, então um projeto que você acabara de parar ficava na tela como em execução, com o uptime congelado, até você recarregar a página. Agora o status responde normalmente para um recurso parado, com tudo zerado.
- Parar algo que já está parado não é mais um erro. A ação confirma, e o estado registrado é corrigido para parado. Antes, uma aplicação cujo container tinha morrido sozinho continuava marcada como em execução para sempre: o botão Parar falhava em toda tentativa, e não havia como colocar o projeto de volta em um estado consistente.
- Duas operações ao mesmo tempo no mesmo projeto agora avisam isso. Iniciar, reiniciar, parar, excluir, instalações de dependências, deploys e restaurações de snapshot são feitos um por vez em cada projeto. Pedir uma segunda enquanto a primeira ainda roda responde outra operação está em andamento e não muda nada, em vez de uma falha genérica que parecia ter quebrado sua aplicação. Espere alguns segundos e tente de novo. Pela API, isso é HTTP
409 OPERATION_IN_PROGRESS. - Clicar em Iniciar duas vezes em uma aplicação parada (duas abas abertas, um duplo clique) não a reinicia mais em silêncio duas vezes. Se a aplicação já estiver rodando ou iniciando, Iniciar agora responde este projeto já está em execução ou iniciando em vez de repetir silenciosamente todo o boot. Pela API, isso é HTTP
409 CONTAINER_ALREADY_RUNNING. Clicar em Reiniciar duas vezes seguidas também é coberto: o segundo clique agora responde outra operação está em andamento em vez de reiniciar a aplicação uma segunda vez em silêncio. - Reduzir a memória de uma aplicação é recusado quando os arquivos não cabem mais. O espaço em disco acompanha a memória que você aloca, então reduzir a memória reduz o teto. Aplicar um teto abaixo do que o volume já guarda não apaga nada, mas faz toda gravação seguinte falhar: a aplicação quebra na hora, por um motivo que nada no painel explica. A mudança agora é recusada antecipadamente, informando quanto você precisa liberar antes.
- Os botões de ciclo de vida compartilham um orçamento por aplicação. Iniciar, reiniciar, parar e instalar dependências agora permitem dez requisições por minuto por aplicação, somadas, em vez de uma cota separada para cada um. O uso normal nunca chega perto disso; um script em loop para antes de prejudicar o projeto.
Bancos de dados
- Bancos de dados têm uma aba Dados, a partir do plano Intermediary. Navegue e edite o que está armazenado de fato, sem sair do dashboard e sem colar uma string de conexão em lugar nenhum. PostgreSQL e MySQL mostram schemas, tabelas, colunas, índices e um navegador de linhas paginado; MongoDB mostra coleções, índices e documentos; Redis mostra o keyspace, o valor de cada chave por tipo e seu TTL. O plano que conta é o do dono do banco de dados: membros do workspace usam a aba em um banco cujo dono tem o plano.
- Existe um console SQL. Ele roda no seu próprio banco de dados com o seu próprio usuário de banco, então nada é filtrado ou reescrito. O que é aplicado são limites: 10 segundos por instrução (aplicados pelo próprio motor), 200 linhas por padrão e 1.000 no máximo, 64 KB de SQL, 5 MB de resultado e uma consulta do console por vez em cada banco.
- Editar uma linha sempre passa pela chave primária (a completa, incluindo chaves compostas), nunca pela posição dela na página. O mesmo vale para documentos (
_id) e chaves (a chave nomeada na URL). - A leitura é aberta a todos os membros do workspace; a escrita e o console SQL não são. Eles exigem dono ou admin, e toda alteração é registrada no log de atividades do banco com a operação e o objeto, nunca o conteúdo.
- A API expõe a mesma superfície em
/v1/databases/{id}/data/*, com códigos de erro estáveis documentados junto. - Um banco de dados em um workspace agora mostra a RAM alocada. Abrir um banco a partir de um workspace antes travava a visão geral e deixava o campo de memória em branco, mesmo quando o banco tinha RAM atribuída, porque a lista do workspace não trazia esses campos. O detalhamento de RAM em Projetos também inclui isso.
- Excluir ou redefinir um banco de dados agora faz antes um snapshot de segurança, automaticamente. Se o backup falhar, a ação é bloqueada e o banco não é destruído nem apagado. Antes, excluir ou redefinir não deixava backup nenhum.
Checkout
- Trocar de plano no checkout é um catálogo, não um dropdown. O plano selecionado continua no formulário; ao abri-lo, aparecem Economy, Pro, Scale e Intermediary como cards (RAM, vCPU, limite de aplicações) e Enterprise como uma lista. É o mesmo catálogo da página de preços, sem sair do pagamento.
agosto de 2026
Site
- A página Enterprise agora segue o mesmo padrão da landing page. Mesmo mesh, escala tipográfica e cards; o seletor de planos usa o mesmo azul da página de planos, em vez do laranja.
- A página de planos agora segue o mesmo padrão da landing page. Economy, Pro, Scale e Enterprise ficam nos mesmos cards, Enterprise está em azul em vez de laranja, e a tabela comparativa fica fixa enquanto você rola a página — com uma caixa de busca e grupos em acordeão, no desktop e no celular.
- As telas de login e de cadastro agora seguem o mesmo padrão do restante do site. Mesmo cabeçalho e rodapé da landing page, um formulário de entrada centralizado, uma visão rápida de Economy / Pro / Scale e um FAQ compacto — com um link para a página completa de planos.
- Login e cadastro agora são a mesma tela. Digite seu e-mail e receba um código — sem formulário de cadastro separado e sem nome para digitar. Novas contas recebem um nome inicial a partir do endereço de e-mail, que você pode alterar a qualquer momento nas configurações do seu perfil.
Desempenho
- O site agora abre mais rápido. A landing page e todas as páginas institucionais — Sobre, Preços, Planos, Bancos de dados, Enterprise, CLI, VS Code, Blob Storage, Privacidade e Termos — agora são pré-renderizadas com antecedência e servidas sem nenhum processamento no servidor a cada visita.
- Bem menos para baixar e executar na landing page. O mapa global agora é uma imagem pré-gerada, em vez de ser construído no navegador a cada carregamento, e as animações da página agora rodam em CSS, em vez de JavaScript.
- As traduções agora são carregadas por página, em vez de o site inteiro baixar os textos dos três idiomas em cada tela.
- O dashboard carrega somente o que você está vendo. Painéis pesados — o editor de arquivos, o terminal e os gráficos — agora são carregados sob demanda, em vez de logo no início, e as requisições em segundo plano que antes rodavam em telas onde nem eram usadas foram removidas.
E-mails
- Todos os e-mails transacionais foram redesenhados. Códigos de confirmação, comprovantes de compra e de resgate, lembretes de renovação, avisos de vencimento de plano e de exclusão de projeto agora compartilham um só layout, com a informação principal — o código, o valor, o prazo — em primeiro lugar, em vez de escondida em um parágrafo.
- O logo da Vertra Cloud agora aparece na sua caixa de entrada. Ele era enviado como SVG, formato que o Gmail, o Outlook para desktop e o Yahoo não exibem de forma alguma, então a maioria dos destinatários via uma imagem quebrada.
- Os e-mails agora trazem uma linha de pré-visualização, seguem o tema claro ou escuro do sistema e ficam legíveis no celular e com as imagens bloqueadas.
- Corrigido o e-mail de resgate que mostrava o placeholder
{{duration}}em vez da duração do plano, e os e-mails de compra em inglês e espanhol que mostravam o valor sem a moeda.
Backups e exclusão automática
- Projetos nunca são excluídos sem um backup verificado. O vencimento do plano e o job de limpeza do plano FREE agora criam primeiro um snapshot e só excluem os recursos cujo snapshot foi concluído. Qualquer recurso cujo backup falhe é parado e mantido no lugar em vez de excluído, e fica sinalizado para revisão manual.
- O job de limpeza do plano FREE antes excluía projetos offline sem criar nenhum snapshot. Agora ele cria um antes.
- Os snapshots anteriores à exclusão ignoram a permissão de backup do plano — um projeto prestes a ser removido sempre tem backup, independentemente do nível.
- Snapshots de projetos grandes agora funcionam. O limite de tamanho que fazia os backups de projetos maiores falharem por completo foi removido.
- Os arquivos de snapshot não incluem mais conteúdo que pode ser reinstalado (
node_modules, virtualenvs,vendor, caches de build) nem o histórico do git, por isso são bem menores. - Um snapshot só é registrado depois que a existência do arquivo no armazenamento é confirmada, e o tamanho informado agora vem do próprio armazenamento — um snapshot não pode mais aparecer na sua lista sem um arquivo real por trás.
Validação e mensagens de erro
- Endpoints que recebem um ID de workspace, de aplicação, de banco de dados ou de variável de ambiente agora rejeitam um ID malformado com um
400claro, em vez de falhar com um erro interno genérico. - Atualizar uma aplicação ou um workspace com um corpo vazio agora retorna um erro de validação, em vez de falhar.
start_commandagora é limitado a 512 caracteres no momento em que você salva, em vez de falhar apenas depois, durante um rebuild.- Enviar um
.zipcorrompido ou truncado ao criar uma aplicação agora retornaINVALID_ZIP, em vez de um erro interno genérico. - Gravar um arquivo sobre um caminho que já existe como pasta agora retorna
TARGET_IS_DIRECTORY, em vez de um erro interno genérico.
julho de 2026
Prévia da landing page
A nova prévia da landing page da Vertra Cloud ganhou uma abertura mais focada no produto e uma malha visual mais consistente.- Hero responsivo refinado, mantendo o card de deploy ao vivo como uma seção própria do produto.
- Adicionada uma transição hachurada entre o hero e o conteúdo da página.
- Interseções da malha refinadas: os losangos das bordas são cortados em direção ao conteúdo, e losangos completos aparecem apenas nos cruzamentos internos reais.
- Malha do rodapé expandida, para deixar a transição até o rodapé do site mais clara.
- Menu de navegação do produto aprimorado, com estados de abertura e fechamento animados e acessíveis.
Dashboard v2
- O dashboard real foi movido para a nova estrutura responsiva, incluindo a navegação de workspaces, a busca na paleta de comandos e o fluxo de navegação no celular.
- As listas de visão geral, de aplicações e de bancos de dados agora atualizam o status automaticamente.
- Upload, snapshots, logs, configurações, cobrança, suporte e workspaces foram atualizados para a nova estrutura do dashboard.
- A navegação de Arquivos da aplicação foi substituída por uma árvore de arquivos do projeto expansível, na barra lateral do desktop e na folha de navegação do celular.
- As listas de aplicações e de bancos de dados foram unificadas em linhas pesquisáveis e paginadas, com ações rápidas mais seguras, e os estados vazios, restritos, de notificação e de modal do dashboard foram padronizados.
- As ações de início rápido, reinício e parada agora mostram um indicador de transição e aguardam o status atualizado da visão geral antes de aceitar outro comando.
Novo projeto e templates
- A tela de Novo Projeto foi redesenhada como um fluxo dedicado de tela cheia, sem a barra lateral, focado exclusivamente na criação do projeto.
- O upload de
.zipvirou a forma principal de começar, com importação do GitHub e um atalho para banco de dados como opções secundárias. - Adicionada uma seção de Templates, marcada como “em breve” enquanto o catálogo pronto para deploy é construído.
- Toda ação “Novo” do dashboard agora abre diretamente a tela de criação, onde você escolhe o que construir.
- O antigo assistente passo a passo foi substituído por um fluxo único com rolagem: cada etapa (origem, configuração, revisão e deploy) aparece em ordem conforme você conclui a anterior, em vez de alternar entre telas inteiras com botões de voltar e avançar.
- A etapa separada de nome e descrição do projeto foi removida: o nome agora é derivado automaticamente do nome do arquivo
.zipenviado ou do repositório conectado, e pode ser editado depois nas configurações do projeto. A seleção de workspace passou para a etapa de configuração, em vez de ter uma tela própria. - Runtime e engine de banco de dados agora são escolhidos em cards selecionáveis, em vez de um dropdown simples ou de uma grade manual.
- Adicionada uma opção de importação de arquivo na etapa de variáveis de ambiente, que aceita arquivos
.envou.txt, em vez de digitar cada variável à mão.
Detecção de dependências ausentes
- Os deploys agora analisam o projeto enviado em busca de imports que não estão declarados no manifesto de dependências (
requirements.txt,package.json,go.mod,Gemfile,composer.json,Cargo.toml,pom.xml), mesmo quando o manifesto não existe, em todas as linguagens suportadas. - Quando dependências ausentes são detectadas antes do deploy, o fluxo de criação oferece adicioná-las ao manifesto e fazer o deploy uma vez com a correção aplicada, em vez de exigir um rebuild depois.
- Se dependências ausentes forem encontradas no deploy ou no upload de arquivos de uma aplicação existente, uma notificação é enviada com um link de volta para a aplicação, e há um endpoint disponível para instalar as dependências ausentes e disparar um rebuild.
Logs em tempo real
- O terminal de logs da aplicação foi reconstruído sobre um engine de terminal real, então os logs ao vivo fluem com suavidade e não congelam mais a página quando uma aplicação ou um bot inicia e gera muita saída.
- A transmissão ao vivo agora sobrevive a reinícios: o terminal mantém a conexão aberta durante um reinício, em vez de desconectar.
- Eventos da plataforma agora aparecem na transmissão de logs, destacados, incluindo os reinícios de aplicações.
- Os logs das aplicações, tanto de execuções normais quanto de falhas, são mantidos em disco com rotação automática.
Navegação
- A página de não encontrado foi reformulada, com um status de rota mais claro e links diretos para a página inicial ou para o dashboard.
Templates de e-mail
- Todos os seis templates de e-mail transacionais (magic link, confirmação de compra, sucesso de resgate, vencimento de plano, lembrete de plano e exclusão de projeto) foram redesenhados para um sistema visual unificado.
- O antigo layout com cabeçalho laranja foi substituído por um logo centralizado sobre o fundo de papel quente, um card de conteúdo branco com borda de 1px e tipografia Inter consistente.
- A paleta de cores foi padronizada em todos os templates, com a cor de destaque reservada para os botões.
Correções de bugs
- Corrigidas as cores dos toasts, para que as confirmações de sucesso e de deploy sigam o tema claro ou escuro ativo.
- Corrigido o espaçamento dos diálogos de erro do terminal, para que os detalhes e as ações dos logs usem o corpo e o rodapé padrão dos diálogos.
- O raio da prévia de logs do terminal foi ajustado à escala dos controles do dashboard.
- O campo Account ID foi padronizado com o mesmo estilo de input usado nas configurações de localização e de e-mail.
- Corrigido um bug de recorte de imagem na landing page.
SEO e prévias em redes sociais
- Corrigidas as prévias de link (Discord, WhatsApp, Slack, X): links compartilhados da Vertra Cloud agora mostram um card de marca adequado, em vez de uma imagem quebrada ou genérica.
- Adicionados cards de prévia dedicados para as páginas de Preços, Enterprise, Bancos de dados, Blob Storage, CLI e da extensão do VS Code, cada um exibindo o título próprio da página.
- Adicionados título e descrição adequados para as páginas Sobre, Política de Privacidade, Termos de Serviço, Login e Cadastro — elas não mostram mais o título da página inicial quando compartilhadas ou encontradas na busca.
- Corrigido o link canônico das páginas em português e espanhol, que antes sempre apontava para a versão em inglês.
- Publicado o
llms.txt, um resumo curto e legível por máquina do produto para assistentes de IA e ferramentas de busca.
21 de março de 2026
Visão geral
A versão 26.0 é a maior atualização da Vertra Cloud desde o lançamento. Ela introduz workspaces colaborativos, vários provedores de autenticação e um dashboard redesenhado.Novas funcionalidades
Workspaces
Espaços de equipe colaborativos com controle de acesso baseado em funções.- Criar, editar e excluir workspaces
- 5 funções: Dono, Administrador, Desenvolvedor, Operador e Visualizador
- Gerenciamento de membros com links de convite
- Atribuir aplicações e bancos de dados aos workspaces
- Disponível a partir do plano Enterprise (de 5 a 24 membros)
Autenticação
Várias opções de login e gerenciamento de conta.- Magic Link — Autenticação por e-mail sem senha
- GitHub OAuth — Login e vinculação de conta
- Google OAuth — Login e vinculação de conta
- Discord OAuth — Provedor que já existia, agora com vinculação e desvinculação de conta
- Troca de conta — Até 5 contas salvas no mesmo navegador
- Gerenciamento de sessões — Ver sessões ativas, revogar todas as sessões
- Geração de chave de API — Para acesso programático
Notificações
Sistema de notificações da plataforma integrado ao dashboard.- Notificações pela API com status de lida e não lida
- Marcar notificações individuais ou todas como lidas
- Exibição em tempo real no cabeçalho do dashboard
- Templates de e-mail localizados em 3 idiomas (EN, PT-BR, ES)
- Templates para: vencimento do plano, aviso de exclusão e confirmação de compra
Downgrade de plano
Os usuários agora podem fazer o downgrade do plano diretamente pelo dashboard ou pela API.- Downgrade para o plano Free via
POST /v1/users/me/downgrade - Limite de requisições para evitar abuso
- Avisos sobre o impacto nos recursos existentes
Snapshots
Substituiu o sistema anterior de backup e commit por snapshots unificados.- Criar snapshots manuais de aplicações e bancos de dados
- Restaurar a partir de qualquer snapshot anterior (com cooldown)
- Baixar o conteúdo do snapshot
- Injeção automática de
vertracloud.configdurante a criação do snapshot - Visualização de snapshots agrupados no dashboard
Limpeza do plano Free
Gerenciamento automático dos recursos inativos do plano Free.- Projetos offline há 30 dias ou mais são excluídos automaticamente
- Notificações por e-mail nos dias 7, 23 e 27
- Link de reativação incluído nos avisos
Versões dinâmicas de runtime
A seleção de runtime agora busca as versões disponíveis dinamicamente.- Seletor de versão no assistente de criação de projeto
- Tags
recommendedelatest - Novas linguagens suportadas: Ruby, Rust e Java
Dashboard
Redesenho completo
O dashboard foi reconstruído do zero.- Assistente de novo projeto — Criação em várias etapas, com layout vertical animado
- Gerenciador de arquivos — Reescrito com o Monaco Editor (arrastar e soltar, upload de ZIP, validação de caminhos proibidos)
- Terminal embutido — Transmissão de logs em tempo real via SSE, com cores ANSI e rolagem automática
- Configurações da conta — Conexões de autenticação, gerenciamento de sessões, geração de chaves de API e códigos de resgate
- Cabeçalho responsivo — Modo compacto, prevenção de overflow e menus que fecham ao clicar fora
Internacionalização
Suporte completo a i18n em todo o dashboard.- 3 idiomas: inglês, português (BR) e espanhol
- Mensagens de erro, mensagens de sucesso e templates de e-mail localizados
- Arquivos de mensagens granulares, organizados por funcionalidade
Integração com o GitHub
Suporte aprimorado ao GitHub no fluxo de criação de projetos.- Seleção de repositório, incluindo repositórios privados
- Seleção de branch
- Alternativa com ZIP quando o GitHub está indisponível
- Configuração de webhook para deploys automáticos
Mudanças na API
Novos endpoints
POST /v1/users/me/downgrade— Downgrade de planoGET /v1/users/me/sessions— Listar sessões ativasDELETE /v1/users/me/sessions— Revogar todas as sessõesPOST /v1/users/me/generate-api-key— Gerar chave de APIGET /v1/notifications— Listar notificaçõesPOST /v1/notifications/:id/read— Marcar como lidaPOST /v1/notifications/read-all— Marcar todas como lidasPOST /v1/workspaces— Criar workspaceGET /v1/workspaces— Listar workspacesGET/PUT/DELETE /v1/workspaces/:id— CRUD de workspacePOST/DELETE /v1/workspaces/:id/members— Gerenciamento de membrosPOST/DELETE /v1/workspaces/:id/apps/:appId— Associação de aplicaçãoPOST/DELETE /v1/workspaces/:id/databases/:dbId— Associação de banco de dadosGET /v1/apps/runtimes— Versões de runtime disponíveisPOST /v1/orders— Criar pedidoGET /v1/orders— Listar pedidosPOST /v1/orders/:id/initiate/pix— Pagamento PIXPOST /v1/redeem/:code— Resgatar código
Formato de resposta
Formato de resposta da API padronizado em todos os endpoints:- Sucesso:
{ "status": "success", "response": { ... } } - Erro:
{ "code": "ERROR_CODE", "message": "..." }
Tipagem
- Publicado o pacote
@vertracloud/api-types, com definições completas em TypeScript - Todos os tipos de resposta dos endpoints REST documentados, com links
@seepara a documentação - Cobertura completa de tipos: aplicações, bancos de dados, workspaces, pedidos, snapshots e notificações
Melhorias
Detecção de loop de falhas
Auto-restart inteligente com prevenção de abuso.- 5 falhas em 10 minutos desativam o auto-restart por 24 horas
- Filtragem por código de saída (o código de saída normal 0 não é contado)
- Intervalo de 1 hora entre reinícios
- Mínimo de 60 segundos de execução para ser considerado estável
Logs em tempo real
Transmissão de logs aprimorada, com mais confiabilidade e entrega em tempo real.Gerenciamento de subdomínio personalizado
- Selecionar um subdomínio personalizado durante a criação do projeto
- Alterar o subdomínio pela API (
PATCH /v1/apps/:id/network/subdomain) - Validação de disponibilidade
Gerenciador de arquivos
- Upload por arrastar e soltar, com suporte a ZIP
- Validação de diretórios e arquivos proibidos
- Ordenação inteligente da árvore de arquivos
- Mensagens de erro localizadas
Correções de bugs
- Corrigidas inconsistências no monitoramento de status dos bancos de dados
- Corrigida a entrega de notificações durante a migração de dados
- Corrigido o overflow horizontal no cabeçalho responsivo do dashboard
- Corrigidos diversos bugs no fluxo do assistente de criação de projeto
- Corrigida a detecção de loop de falhas em containers com erros de sintaxe
- Corrigida a verificação de registros DNS do domínio personalizado
Mudanças que quebram compatibilidade
- Sistema de snapshots — Substituiu o sistema anterior de backup e commit. Os endpoints antigos de backup estão obsoletos.
- Autenticação — Nova autenticação baseada em sessão. As chaves de API existentes continuam funcionando.
- Endpoints de workspace —
/v1/organizations/*renomeado para/v1/workspaces/* - Comportamento do auto-restart — Agora inclui detecção de loop de falhas com desativação automática
- Limpeza do plano Free — Projetos inativos são excluídos após 30 dias (com avisos por e-mail)
v26.1 — 25 e 26 de março de 2026
Correções de bugs
- Exclusão de arquivos no deploy do GitHub — Corrigido o caso em que os deploys removiam agressivamente o
.enve os arquivos de configuração não rastreados - Preservação de arquivos no deploy da aplicação — Atualizações da aplicação agora preservam os arquivos locais existentes, em vez de apagar o conteúdo não rastreado
- Coleta de métricas — Corrigido o caso em que as métricas não eram coletadas para algumas aplicações em execução
- Exibição de métricas — Corrigidos campos de rede ausentes, falhas com valores nulos e rótulos de tempo duplicados nos gráficos
- Validação de UUID — Os parâmetros de rota da API para IDs de aplicação e de banco de dados agora validam o formato UUID, retornando 400 para valores inválidos
- Exclusão de variável de ambiente — Corrigida a chamada do endpoint de exclusão a partir do dashboard (faltava o ID da variável no caminho da URL)
- Edição da chave de variável de ambiente — Corrigido o campo de chave, que não era atualizado ao editar uma variável existente
- Cor do texto da sobreposição de upload — Corrigido o texto de descrição com baixo contraste no diálogo de progresso do upload de commit
Melhorias
- Persistência do vertracloud.config — O arquivo de configuração agora é gravado no diretório da aplicação na criação, garantindo que os uploads futuros herdem a configuração
fevereiro de 2026
Visão geral
Fevereiro de 2026 trouxe recursos essenciais de gerenciamento de bancos de dados e ferramentas de desenvolvimento integradas. A extensão oficial para VSCode, o suporte a bancos de dados gerenciados e os recursos de segurança aprimorados tornam a Vertra Cloud uma plataforma completa para desenvolvimento full-stack.Novas funcionalidades
Extensão para VSCode
Extensão oficial da Vertra Cloud para o VS Code.- Deploy direto pelo editor
- Gerenciamento de aplicações a partir do VS Code
- Visualização de logs em tempo real na barra lateral
- Exibição rápida de status e métricas
- Criação de projetos integrada
- Disponível no VS Code Marketplace
Bancos de dados gerenciados
Hospedagem de bancos de dados pronta para produção, com gerenciamento automático.- PostgreSQL 17
- MongoDB 8.0
Certificados TLS automáticos
Conexões com bancos de dados criptografadas desde o início.- Geração automática de certificados TLS
- Gerenciamento da renovação de certificados
- Suporte a certificados de cliente
- Exigência de conexões seguras
Suporte ao MySQL
Hospedagem de bancos de dados MySQL 8.0.- MySQL 8.0 com os recursos mais recentes
- Autenticação X509 obrigatória por segurança
Melhorias
Entrega de e-mails
Desempenho do sistema de e-mails otimizado.- Velocidade de entrega aprimorada dos magic links por e-mail
- Melhor roteamento de e-mails
- Latência de entrega reduzida
- Mais confiabilidade
Correções de domínio personalizado
Problemas de configuração de DNS resolvidos.- Corrigidos erros 404 em algumas configurações de domínio personalizado
- Tratamento aprimorado da propagação de DNS
- Melhor provisionamento de certificados para domínios personalizados
Gerenciamento de bancos de dados
Tratamento aprimorado de certificados e credenciais.- Corrigidos casos extremos na geração de certificados
- Melhor exibição e gerenciamento de credenciais
- Teste de conexão com o banco de dados aprimorado
Correções de bugs
- Corrigidos problemas de tempo na entrega de e-mails
- Corrigida a geração de certificados em casos extremos
- Corrigida a configuração de DNS do domínio personalizado
- Resiliência da conexão com o banco de dados aprimorada
Mudanças que quebram compatibilidade
janeiro de 2026
Visão geral
Janeiro de 2026 marcou o lançamento oficial da beta pública da Vertra Cloud, com uma API REST completa e documentação abrangente. A plataforma se abriu para a comunidade com recursos de colaboração em equipe.Funcionalidades
API v1
A primeira versão pública da API REST da Vertra Cloud.- API REST abrangente para todas as operações da plataforma
- Documentação completa da referência da API
- Exemplos de requisição e resposta
- Autenticação por chave de API
- Limites de requisições e gerenciamento de cotas
Workspaces
Colaboração em equipe com controle de acesso baseado em funções.- Criar e gerenciar workspaces para equipes
- 5 funções predefinidas: Dono, Administrador, Desenvolvedor, Operador e Visualizador
- Gerenciamento de permissões por função
- Convite e gerenciamento de membros
- Isolamento e segurança entre workspaces
Beta pública
Lançamento oficial do período de beta aberta.- Plataforma aberta para o cadastro público de usuários
- Testes beta e coleta de feedback
- Suporte à comunidade de usuários
- Melhorias de estabilidade e desempenho com base no feedback
Documentação
Documentação completa da API e da plataforma.- Site da documentação em docs.vertracloud.app
- Referência da API com todos os endpoints
- Exemplos de código e tutoriais
- Guias de primeiros passos
- Perguntas frequentes e solução de problemas
Infraestrutura
Suporte a SSL/TLS
Certificados SSL/TLS automáticos, provisionados e renovados para todas as aplicações e domínios personalizados.Melhorias
- Base sólida de API para integrações
- Hierarquia de funções clara para equipes
- Documentação abrangente para desenvolvedores
Correções de bugs
- Consistência das respostas da API
- Precisão da documentação
Mudanças que quebram compatibilidade
dezembro de 2025
Visão geral
Dezembro trouxe suporte a novos runtimes de linguagem e aprimorou o sistema promocional com o cupom de fim de ano VERTRA30. As melhorias na entrega de e-mails garantem uma comunicação melhor com os usuários em toda a plataforma.Novas funcionalidades
Suporte à linguagem Go
Adicionado o runtime Go para aplicações de alta performance.- Suporte à linguagem Go para deploy
- Compilação automática em Go
- Gerenciamento de dependências de módulos Go
- Tempos de build rápidos
- Ideal para microsserviços e ferramentas de linha de comando
Suporte à linguagem PHP
Adicionado o runtime PHP 8.x para aplicações web.- Suporte ao runtime PHP 8.x
- Compatibilidade com os principais frameworks web em PHP
- Suporte a configuração de Apache/Nginx
- Gerenciamento de pacotes PHP via Composer
- Hospedagem de aplicações web
Sistema de cupons
Suporte a códigos promocionais com desconto nos pedidos.Melhorias
- Entrega de e-mails e renderização de templates mais confiáveis
Correções de bugs
- Corrigidas falhas na entrega de e-mails
- Corrigidos os cálculos de datas e de duração
- Tratamento de fuso horário aprimorado
Mudanças que quebram compatibilidade
novembro de 2025
Visão geral
Novembro trouxe melhorias críticas de infraestrutura e um grande redesenho do modelo de preços. O novo sistema de auto-restart evita loops de falha, o novo plano Intermediary amplia o acesso, e a hospedagem de sites estáticos possibilita deploys apenas de frontend.Novas funcionalidades
Auto-restart
Reinício inteligente do container com detecção de falhas, para evitar loops de falha.- Monitora o status do container continuamente
- Reinicia somente em falhas reais de execução (crashes), e não em erros de configuração ou de sintaxe
- Evita loops infinitos de reinício que desperdiçariam recursos
- Estabilização automática para problemas transitórios
Arquivo .vertraignore
Controle de quais arquivos e pastas são excluídos do deploy automático.- Funciona de forma semelhante ao
.gitignore, para o deploy - Evita o envio de arquivos desnecessários
- Otimiza a velocidade do deploy e reduz o tamanho do pacote
Commits aprimorados
Fluxo de commits aprimorado, para mais estabilidade e confiabilidade.- Processo de deploy simplificado
- Melhor rastreamento de commits e opções de rollback
- Maior confiabilidade dos deploys
Hospedagem de sites estáticos
Nova opção de linguagem para hospedar aplicações puramente de frontend.- Deploy direto de sites em HTML, CSS e JavaScript
- Opção de linguagem
staticna criação de projetos - Ideal para sites estáticos, SPAs e documentação
- Servir os arquivos automaticamente com os tipos MIME corretos
Nova estrutura de planos
Níveis de preço redesenhados, com alocações de recursos claras.- Plano Intermediary — R$ 18,99/mês com suporte a domínio personalizado
- Plano PRO — Domínio personalizado incluído, hospedagem de até 2 APIs por R$ 5,99/mês
- vCPU alocadas atualizadas por nível de plano
- Proposta de valor mais clara em cada nível
Pagamentos com cartão de crédito
Interface inicial para o método de pagamento com cartão de crédito.- Base para o processamento de cartões de crédito
- Preparação para opções de pagamento mais completas
- Checkout mais agradável
Baixar .env
Exporta as variáveis de ambiente do projeto como um arquivo.- Baixa todas as variáveis de ambiente de uma vez
- Prático para configurar o desenvolvimento local
- Acesso offline seguro à configuração
Melhorias de interface e desempenho
Melhorias visuais
- Botão de download adicionado à aba de arquivos
- Carregamento do dashboard mais rápido
- Melhorias de responsividade para celulares e tablets
- Detecção automática ao colar variáveis de ambiente
- Nova grade de projetos com opções de visualização em lista e em cards
- Melhorias nas interações do cabeçalho e do menu de perfil
Desempenho
- Uploads de arquivos mais rápidos
- Operações de commit mais ágeis
- Tempos de reinício, parada e início reduzidos
Nova página de pagamento
Fluxo de pagamento completamente redesenhado.- Opções de pagamento mais claras
- Experiência do usuário aprimorada durante o checkout
- Suporte a vários métodos de pagamento
- Histórico de transações e acesso às faturas
Melhorias
- Bloqueio de funcionalidades por plano aprimorado
- Mensagens de erro aprimoradas em toda a plataforma
- Responsividade para celulares aprimorada em todas as páginas
- Navegação mais intuitiva entre os níveis de plano
Mudanças que quebram compatibilidade
setembro de 2025
Visão geral
Setembro trouxe ferramentas essenciais para desenvolvedores e um sistema de logs unificado. O runtime Bun adiciona uma alternativa moderna de JavaScript, as métricas inteligentes oferecem insights sobre o comportamento das aplicações, e a extensão do VSCode leva os deploys da Vertra Cloud diretamente para o seu editor.Novas funcionalidades
Sistema de logs unificado
Rastreamento centralizado de erros e falhas de todas as aplicações.- Erros e falhas agora armazenados em uma aba LOGS dedicada
- Interface unificada para visualizar todos os logs das aplicações
- Filtragem e busca fáceis no histórico de logs
- Melhor depuração e investigação de problemas
Suporte ao Bun
Runtime rápido de JavaScript e TypeScript agora disponível.- Deploy de aplicações com Bun 1.2.2 ou superior
- Alternativa ao Node.js com desempenho mais rápido
- Suporte completo a TypeScript desde o início
- Compatível com os pacotes npm existentes
Métricas inteligentes
Monitoramento automatizado de desempenho em intervalos regulares.- Métricas coletadas a cada 5 minutos
- Acompanhamento de uso de CPU, consumo de memória e número de requisições
- Dados históricos para análise de desempenho
- Base para recursos de auto-scaling
Aba de logs da aplicação
Nova interface dedicada de logs para as aplicações.- Transmissão de logs em tempo real
- Recuperação de logs históricos
- Recursos de filtragem e busca nos logs
- Integração com o rastreamento de erros
Extensão do VSCode
Extensão oficial da Vertra Cloud publicada para testes beta.- Deploy diretamente pelo VS Code
- Gerenciamento de aplicações a partir do editor
- Visualização de logs e métricas na barra lateral
- Versão alpha disponível no marketplace do VS Code
Atualizações de runtime
Versões do Node.js
Várias versões do Node.js agora suportadas.- Node.js 22.18.0
- Node.js 24.5.0
- Seleção automática de versão durante o deploy
Versão do Python
Suporte ao Python 3.13, a versão mais recente, disponível.Runtime Bun
- Bun 1.2.2
Melhorias
Navegação e experiência de uso
- Navegação da barra lateral aprimorada
- Melhor organização dos recursos de gerenciamento de aplicações
- Interface de logs mais limpa
- Visualização de métricas aprimorada
Correções de bugs
- Corrigidos problemas de conexão no streaming de logs
- Clareza das mensagens de erro na aba de logs aprimorada
- Corrigidos casos extremos no cálculo de métricas
- Corrigidos problemas de navegação na extensão do VSCode
Mudanças que quebram compatibilidade
agosto de 2025
Visão geral
Agosto trouxe um redesenho completo da plataforma, com um gerenciador de arquivos modernizado, documentação completa da API e um tratamento simplificado das credenciais de banco de dados. A atualização visual e as melhorias de funcionalidades tornam a plataforma mais intuitiva e amigável para desenvolvedores.Novas funcionalidades
Modernização do gerenciador de arquivos
Reformulação visual e funcional completa do sistema de gerenciamento de arquivos.- Nova interface moderna, com mais usabilidade
- Botão de commit para os usuários do gerenciador de arquivos fazerem deploy das alterações diretamente
- Botão de reinstalar dependências para usuários do plano Free
- Visualização em árvore de arquivos aprimorada
- Suporte a arrastar e soltar
- Recursos de extração de arquivos ZIP
Certificados de banco de dados
Gerenciamento simplificado de certificados para conexões seguras com bancos de dados.- Fluxo unificado de cópia de certificados para Redis, MongoDB e PostgreSQL
- Nova aba de certificados nas configurações do banco de dados
- Cópia de certificados para a área de transferência com um clique
- Exibição clara das informações do certificado
- Melhor organização dos certificados
Referência da API
Documentação completa da API REST publicada.- Documentação completa do endpoint de Aplicações
- Referência do endpoint de Bancos de dados
- Documentação do endpoint de Organizações
- Referência do endpoint de Usuários
- Documentação do endpoint de Serviços
- Exemplos interativos da API e amostras de requisição e resposta
Suporte a TSX
Adicionado suporte a arquivos TypeScript JSX no gerenciador de arquivos.- Arquivos
.tsxagora são reconhecidos e editáveis - Realce de sintaxe completo para TSX
- Tratamento adequado dos arquivos nos commits
Link da aplicação nos cards
Cards de projetos do dashboard aprimorados.- Para sites e APIs, a URL do deploy agora aparece diretamente nos cards de projeto
- Acesso rápido para visualizar as aplicações no ar
- Navegação com um clique até a aplicação em execução
Abrir aplicação
Comportamento aprimorado ao abrir uma aplicação.- Agora abre na mesma aba, em vez de uma nova aba
- Melhor experiência do usuário
- Melhor gerenciamento das abas do navegador
Redesenho da plataforma
Modernização visual completa do site inteiro.- Esquema de cores e design system atualizados
- Tipografia e espaçamento aprimorados
- Melhor hierarquia visual
- Componentes de interface modernos em todo o site
- Melhorias de design responsivo
Melhorias de gerenciamento
CRUD de organizações
Rotas aprimoradas para o gerenciamento de organizações e projetos.- Fluxo de criação de organizações aprimorado
- Melhor adição e remoção de projetos das organizações
- Interface de gerenciamento de membros mais intuitiva
Descrições detalhadas
Descrições completas adicionadas em vários recursos.- A seção de organizações tem explicações detalhadas
- Descrições da página Explorar para facilitar a descoberta
- Seção de backups com contexto útil
- Páginas de configurações com instruções mais claras
Aumento do limite de pedidos
Limite de pedidos simultâneos de planos aumentado.- Agora é possível ter até 3 pedidos de plano simultâneos
- Melhor suporte a mudanças de plano em lote
- Fluxo de checkout aprimorado
Terminal e logs
Terminal aprimorado
Experiência de visualização do terminal melhorada.- Ver os últimos logs mesmo quando a aplicação está offline
- Melhor preservação dos logs
- Corrigido o bug de requisição duplicada
- Rolagem dos logs aprimorada
Suporte a linguagens e runtimes
Correção no upload de Python
Corrigidos problemas de deploy em projetos Python.- Melhor tratamento de projetos Python com diferentes estruturas de diretórios
- Detecção de pacotes aprimorada
- Processo de deploy mais confiável
Versões do Python
Versões recomendada e mais recente agora disponíveis.- Python 3.11 (recomendada para estabilidade)
- Python 3.12 (versão mais recente)
Recursos adicionais
Página de privacidade
Adicionada uma página dedicada à política de privacidade.- Endpoint
/privacydisponível - Declaração de privacidade clara para os usuários
- Informações de conformidade e tratamento de dados
Melhorias de desempenho
Instalação de pacotes
Instalação de dependências significativamente mais rápida.- Velocidade de instalação de pacotes 1,5x maior
- Deploys mais rápidos
- Tempos de build reduzidos
Responsividade do cabeçalho
Desempenho e responsividade do cabeçalho aprimorados.- Corrigidos problemas de responsividade em telas menores
- Melhor tratamento de overflow
- Interações mais fluidas
Correções de bugs
- Corrigidas diversas inconsistências da interface
- Tratamento de erros aprimorado em toda a plataforma
- Corrigidos casos extremos na geração de certificados
- Corrigidos problemas de ordenação no gerenciador de arquivos
- Estabilidade da conexão com bancos de dados aprimorada
Mudanças que quebram compatibilidade
julho de 2025
Visão geral
Julho marcou um grande marco com o lançamento do sistema de pagamento, do gerenciamento de organizações e das configurações completas de aplicações. A plataforma evoluiu de um serviço básico de hospedagem para um sistema completo de gerenciamento de aplicações, com colaboração em equipe e recursos de cobrança.Novas funcionalidades
Abas de configurações da aplicação
Gerenciamento organizado das aplicações em abas dedicadas.- General — Configurações e informações básicas da aplicação
- Environment Variables — Gerenciamento de segredos e configurações
- Deploys — Histórico de deploys e configuração de deploy automático
- Network — Domínio personalizado e opções de rede
- Danger Zone — Operações destrutivas, como a exclusão da aplicação
Variáveis de ambiente
Sistema completo de gerenciamento de segredos e configurações.- Operações CRUD completas para variáveis de ambiente
- Seção dedicada a segredos para dados sensíveis
- Suporte a colagem em massa para configuração rápida
- Injeção de variáveis de ambiente em tempo real
- Criptografia de variáveis em repouso
Domínios personalizados
Gerenciamento de DNS e subdomínios das aplicações.- Configurar um domínio personalizado para qualquer aplicação
- Orientação e validação das configurações de DNS
- Personalização de subdomínio
- Provisionamento de certificados SSL/TLS
Deploys automáticos
Deploy automático a partir de webhooks do GitHub.- Integração com webhooks do GitHub
- Deploy automático a cada push na branch especificada
- Configuração e gerenciamento de webhooks
- Logs e histórico de deploys
Organizações
Gerenciamento completo de equipes com controle de acesso baseado em funções.- Criar e gerenciar organizações
- Gerenciamento de membros com atribuição de funções
- Permissões de commit por função
- Controle de acesso aos backups por função
- Exclusão de organizações
Página de preços
Estrutura completa de preços com comparação de planos.- Tabela comparativa dos níveis
- Lista de funcionalidades por plano
- Preços dos planos de banco de dados
- Opções de preço anual
- Diferenciação clara entre os planos
Sistema de pagamento
Integração com o Mercado Pago para cobrança.- Integração com PIX — Método de pagamento instantâneo brasileiro
- Página de faturas com o histórico de transações
- Página de pagamento para compras de planos
- Gerenciamento de renovação de planos
- Suporte a múltiplas opções de pagamento
Códigos de resgate
Resgate de códigos promocionais.- Resgatar códigos promocionais
- Validação e verificação de códigos
- Registro de uso e histórico
Gerenciamento de planos
Interface amigável para gerenciar planos.- Upgrade para um nível superior
- Downgrade para um nível inferior
- Renovação de plano
- Histórico de mudanças de plano
Notificações de vencimento do plano
Alertas sobre o vencimento próximo do plano.- E-mail de aviso antes do vencimento
- Indicadores de aviso no dashboard
- Informação sobre o tempo restante para renovar
- Aviso de renovação nas configurações
Chave de API
Solicitar e gerenciar chaves de API a partir do dashboard.- Gerar chaves de API
- Revogar chaves
- Interface de gerenciamento de chaves
- Uso da chave de API nas aplicações
Atividades e logs de auditoria
Rastreamento completo de atividades para responsabilização.- Rastreamento de atividades das aplicações
- Logs de atividade dos bancos de dados
- Histórico de ações do usuário
- Data e detalhes de cada ação
- Exportação
Recursos de banco de dados
Redesenho das configurações do banco de dados
Interface de gerenciamento de bancos de dados aprimorada.- Seção de reset para operações de reinicialização do banco de dados
- Gerenciamento e exibição de credenciais
- Aba de visão geral com as informações do banco de dados
- Opções de backup e restauração
Recursos de deploy
Integração com o GitHub
Configuração simplificada de projetos a partir de repositórios existentes.- Seleção de repositório do GitHub no fluxo de novo projeto
- Suporte a repositórios privados
- Seleção de branch
- Configuração automática de webhook
Controle de acesso
Permissões por plano
Disponibilidade de funcionalidades de acordo com o plano selecionado.- Auto-restart limitado aos planos pagos
- Gerenciador de arquivos restrito a determinados níveis
- Disponibilidade de domínio personalizado por plano
- Visibilidade das métricas por plano
- Funcionalidade de backup por plano
- Disponibilidade de deploy automático
- Bloqueio de funcionalidades baseado no plano
Melhorias no terminal
Terminal em tempo real
Transmissão de logs ao vivo aprimorada, com mais estabilidade e confiabilidade.Melhorias
- Diferenciação mais clara entre os planos
- Melhores recursos de colaboração em equipe
- Fluxo de pagamento aprimorado
- Organização das aplicações aprimorada
- Melhor gerenciamento de variáveis de ambiente
Correções de bugs
- Corrigidos problemas na geração de chaves de API
- Entrega de webhooks mais confiável
- Corrigidos casos extremos na exclusão de organizações
- Corrigida a verificação de permissões do plano
Mudanças que quebram compatibilidade
junho de 2025
Visão geral
Junho trouxe recursos fundamentais que transformaram a Vertra Cloud de um serviço básico de deploy em uma plataforma completa de gerenciamento de aplicações. A reconstrução completa do dashboard, a implementação do gerenciador de arquivos e o sistema de logs em tempo real formaram a base de todo o desenvolvimento futuro.Novas funcionalidades
Reconstrução do dashboard
Redesenho completo da interface principal de aplicações.- Nova navegação em layout com barra lateral
- Organização mais limpa e intuitiva
- Design responsivo para todos os tamanhos de tela
- Indicadores de status em tempo real
- Gerenciamento de aplicações simplificado
Gerenciador de arquivos
Sistema completo de gerenciamento de arquivos para aplicações.- Navegar e editar os arquivos da aplicação diretamente
- Exclusão em massa
- Suporte à edição de arquivos de configuração
- Upload e download de arquivos
- Navegação em árvore de diretórios
- Criação e edição de arquivos
Organizações
Estrutura de colaboração e gestão de equipes.- Criar e gerenciar organizações
- Adicionar membros às organizações
- Controle de acesso baseado em funções
- Configurações no nível da organização
- Convites para membros
- Gerenciamento de permissões
Logs em tempo real
Transmissão de logs das aplicações ao vivo.- Atualização de logs em tempo real enquanto as aplicações rodam
- Filtragem e busca nos logs
- Recuperação de logs históricos
Suporte ao idioma espanhol
Internacionalização para usuários de língua espanhola.- Traduções completas para espanhol (ES)
- Seleção de idioma nas configurações do usuário
- Todo o texto da interface traduzido
- Modelos de e-mail em espanhol
Sistema de commits
Versionamento de aplicações e rastreamento de deploys.- Criar commits de aplicações
- Reverter para commits anteriores
- Visualização do histórico de commits
- Rastreamento de deploys
- Gerenciamento de versões
Backups
Funcionalidade de backup e restauração de aplicações.- Criar backups manuais
- Ver o histórico de backups
- Restaurar a partir de um backup
- Agendamento de backups
- Integração com a API
Nova landing page
Página inicial completamente redesenhada.- Design e layout modernos
- Proposta de valor clara
- Destaques de funcionalidades
- Botões de chamada para ação
- Navegação melhorada
Página de preços
Estrutura inicial de preços e planos.- Comparação de planos
- Lista de funcionalidades por nível
- Transparência de preços
- Diferenciação entre os níveis
Páginas adicionais
Novas páginas informativas da plataforma.- Página de Termos de Serviço
- Página Sobre
- Página de suporte e contato
- Documentação de ajuda
Componentes e visualização
Gráficos
Componentes de visualização de métricas.- Gráficos de uso de recursos
- Exibição de métricas de desempenho
- Visualização de dados históricos
- Interações com os gráficos
- Vários tipos de gráfico
Atividades
Rastreamento e exibição de atividades.- Logs de atividade das aplicações
- Logs de atividade dos bancos de dados
- Rastreamento de ações do usuário
- Detalhes completos das atividades
- Filtragem de atividades
Suporte a Markdown
Cards de logs e atividades
Formatação de texto aprimorada.- Renderização de Markdown nos logs
- Markdown nos cards de atividades
- Melhor legibilidade do conteúdo
- Suporte a blocos de código nos logs
- Renderização de links
Melhorias
- Interface do usuário mais limpa em todo o sistema
- Melhor organização dos recursos
- Fluxo de navegação aprimorado
- Gerenciamento de aplicações mais intuitivo
- Visibilidade melhorada do status das aplicações
- Exibição mais clara da utilização de recursos
Correções de bugs
- Corrigidos problemas de renderização do dashboard
- Entrega de logs em tempo real aprimorada
- Corrigidos casos extremos do gerenciador de arquivos
- Corrigidos bugs de navegação
- Tratamento de erros aprimorado
Mudanças que quebram compatibilidade
maio de 2025
Visão geral
Maio marca o início da Vertra Cloud com o lançamento do dashboard inicial. Esta versão fundamental traz o gerenciamento básico de aplicações, a conexão com bancos de dados e a base para todos os recursos seguintes.Novidades
Dashboard
Página inicial do dashboard para gerenciamento de aplicações e bancos de dados.- Ver todas as aplicações implantadas
- Ver todos os bancos de dados conectados
- Visão geral rápida do status
- Listagem e filtragem de projetos
- Gerenciamento básico de recursos
Detalhes do banco de dados
Interface de gerenciamento dos bancos de dados conectados.- Ver as informações do banco de dados
- Exibição das credenciais de conexão
- Estatísticas de uso do banco de dados
- Gerenciamento de configuração
- Integração com a API
Detalhes da aplicação
Gerenciamento de aplicações e visualização de arquivos.- Visão geral da aplicação
- Integração com o gerenciador de arquivos
- Navegação por abas a partir de parâmetros da URL
- Logs da aplicação
- Status do deploy
Páginas de aplicações e bancos de dados
Páginas de listagem dedicadas para organização.- Página de aplicações com todas as aplicações
- Página de bancos de dados com todos os bancos de dados
- Filtragem e ordenação
- Ações rápidas por recurso
Campo de domínio personalizado
Suporte inicial a domínio personalizado no modelo de aplicação.- Configuração de domínio personalizado nas aplicações
- Validação de domínio
- Orientação para configuração de DNS
- Base para os recursos de domínio personalizado
Configuração de desenvolvimento
Ferramentas de qualidade de código
Padrões profissionais de desenvolvimento.- Configuração do ESLint para análise de código
- Configuração do Prettier para formatação de código
- Verificações automatizadas de qualidade de código
- Aplicação consistente do estilo de código
Design system
Configuração personalizada do Tailwind.- Tailwind CSS para estilização
- Sistema de cores personalizado com as cores da marca
- Design tokens e utilitários
- Framework de design responsivo
Melhorias
- Interface limpa e funcional
- Gerenciamento de aplicações intuitivo
- Base para os recursos futuros
- Base arquitetural sólida
- Pronta para a expansão da plataforma
Infraestrutura
Plataforma inicial
Infraestrutura básica de hospedagem e deploy.- Sistema de deploy em containers
- Suporte a DNS e SSL
- Roteamento básico
- Isolamento de aplicações