lobsite! Entrar Criar conta

Documentação

Início rápido

Num projeto já gerado, rode um comando. Não precisa de conta: o site dura 6 horas, a menos que você entre e o resgate.

npx lobsite

A pasta é o argumento, dir no lobsite.toml, ou a primeira que existir entre dist/, build/, out/, _site/, public/. Só os arquivos alterados são enviados.

Agentes de IA

Agentes de programação (Claude Code, Cursor, Codex e outros) publicam com o mesmo comando. Sob um agente, a CLI nunca faz perguntas, e a saída termina com uma linha "Tell the user:" com a URL e, para um site sem conta, o link de resgate que o mantém.

npx -y lobsite --yes

Há também um servidor MCP para agentes de programação, um remoto para ChatGPT e Claude.ai, e um comando curl para sandboxes sem Node. Configure seu agente.

Arrastar e soltar

Entre e solte uma pasta ou um zip em qualquer lugar do painel. As mesmas verificações rodam antes de qualquer envio; arquivos secretos sempre ficam de fora.

lobsite.toml

site = "quiet-fox-4821"
dir  = "dist"
spa  = false            # true: paths that aren't files open index.html

[[redirects]]
from   = "/blog/:slug"
to     = "/posts/:slug"
status = 301            # 301 | 302 | 307 | 308

[[headers]]
for = "/assets/*"
[headers.values]
Cache-Control = "public, max-age=31536000, immutable"

[forms.contact]
required = ["email", "message"]
redirect = "/thanks"

Chaves desconhecidas são erro, com a sugestão da chave válida mais próxima. A configuração vai junto com cada deploy, então um rollback a restaura.

Aplicações de página única

Apps com roteamento no cliente, como React Router, Vue Router ou TanStack Router, têm um único index.html e desenham cada página no navegador. Abrir /dashboard/settings diretamente, ou recarregar, pede ao servidor um arquivo que não existe. O modo de página única responde a esses caminhos com o seu index.html, e o roteador do app assume. Há três jeitos de ativá-lo:

  • spa = true no lobsite.toml. Vai junto com cada deploy, então um rollback o restaura. Exige lobsite 0.1.8 ou mais recente; versões antigas param com "Unknown key".
  • Aplicação de página única nas configurações do site, no painel. É o caminho para sites enviados arrastando, já que uma pasta solta não envia lobsite.toml. É uma configuração do site, então continua igual entre deploys e rollbacks.
  • Um 200.html na raiz do site. Ele é servido no lugar do index.html e funciona com qualquer versão da CLI e com arrastar e soltar. É assim que o Surge faz.

Com o Vite (React, Vue, Svelte ou Solid), adicione a configuração e publique dist/ como sempre:

npm run build
npx lobsite

Só pedidos de página recebem o app: um caminho cuja última parte não tem extensão (/dashboard, /users/42), ou qualquer pedido de um navegador que quer HTML (/users/jane.doe). Um arquivo ausente como /assets/index-3f9a.js recebe um 404 de verdade. Isso importa logo depois de um deploy: um visitante que ainda está com a versão antiga aberta recebe um erro claro para o script antigo, não o seu HTML no lugar dele.

O site tem Uma página ausente (/dashboard) Um arquivo ausente (/old.js)
nada "Not found" do Lobsite, 404 "Not found" do Lobsite, 404
404.html 404.html, 404 404.html, 404
modo de página única index.html, 200 "Not found" do Lobsite, 404
modo de página única e 404.html index.html, 200 404.html, 404
200.html (com ou sem a configuração) 200.html, 200 404.html se existir; senão "Not found", 404

Vindo do Netlify, a regra de _redirects /* /index.html 200 equivale a spa = true; vindo do Vercel, um rewrite de /(.*) para /index.html é a mesma coisa.

.lobsiteignore

Arquivos que correspondem a um padrão no .lobsiteignore não são publicados. A sintaxe é a mesma do .gitignore:

drafts/
*.psd
/notes.txt
!keep.psd

O arquivo é lido da pasta publicada e da raiz do projeto (ao lado do lobsite.toml); padrões no arquivo da raiz são relativos à raiz. .git, node_modules, .DS_Store e o próprio .lobsiteignore sempre ficam de fora.

Arquivos secretos (.env*, chaves privadas como *.pem e id_rsa, .npmrc, .netrc e afins) interrompem um deploy até serem removidos ou ignorados. Num terminal, a CLI oferece adicioná-los ao .lobsiteignore e publicar sem eles.

Formulários

<form action="/_lobsite/forms/contact" method="POST">
  <input name="email" type="email" required>
  <textarea name="message" required></textarea>
  <button>Send</button>
</form>

Os formulários são encontrados no deploy. A proteção contra spam (um campo-armadilha, checagem de tempo e limites de frequência) é adicionada para você. Os envios chegam à página Envios do seu painel e ao seu e-mail. Mais sobre formulários: exemplos, envio com JavaScript, frameworks e configurações.

No plano gratuito, os formulários rodam em modo limitado: uma cota mensal por site, notificações só para o e-mail da conta e sem webhooks. O plano Standard adiciona webhooks, qualquer endereço de notificação verificado e uma cota maior.

Domínios próprios

Domínios próprios vêm com toda conta, inclusive a gratuita. lobsite domain add www.example.com imprime o registro a adicionar: um CNAME para cname.lobsite.app. Os certificados são emitidos e renovados para você. Se outra conta também adicionou o domínio, um registro TXT prova que ele é seu.

Prévias e rollback

Cada deploy tem a própria URL, <id>--<site>.lobsite.app. lobsite deploy --preview não mexe na produção; lobsite rollback e lobsite promote trocam o deploy no ar sem enviar nada.

CLI

lobsite [dir]Fazer deploy de uma pasta (o comando padrão)
lobsite deploy --previewEnviar sem alterar a produção
lobsite deploysListar os deploys guardados
lobsite rollback [id]Colocar no ar um deploy anterior
lobsite promote <id>Colocar qualquer deploy no ar
lobsite login / logout / whoamiSua conta
lobsite claim [site]Manter um site anônimo
lobsite account [use <email>|me]Trocar para uma conta da qual você é membro
lobsite token create|ls|revokeTokens de CI para LOBSITE_TOKEN (Standard)
lobsite ls / open / rmSeus sites
lobsite domain add|status|rmDomínios próprios
lobsite forms ls / export <name> --csvEnvios de formulários
lobsite mcpUm servidor MCP para agentes de IA

Limites

AnônimoFreeStandard
SitesSem teto15
Arquivos por site10010010.000
Por arquivo5 MB5 MB100 MB
Tamanho do site50 MB50 MB2 GB
Armazenamento—1 GB20 GB
Deploys por hora1030100
Deploys por dia por site3Sem tetoSem teto
Histórico de deploysLive deploy only7 days30 days
Domínios próprios por conta—15
Domínios próprios por site—11
Banda1 GB10 GBUnlimited, fair use
Envios de formulários por mês—25Unlimited
Análises——Yes
Automações (Zapier, n8n)——Yes
Selo “Powered by lobsite!”YesYesNo

Bandwidth is per month per account (per site lifetime for anonymous sites). At the limit, free and anonymous sites stop serving until the next month; on Standard there's no cap and sites keep serving: past 1 TB a month, we contact you.