lobsite! Anmelden Registrieren

Doku

Schnellstart

Führe in einem gebauten Projekt einen Befehl aus. Kein Konto nötig: Die Website hält 6 Stunden, außer du meldest dich an und übernimmst sie.

npx lobsite

Der Ordner ist das Argument, dir in lobsite.toml oder der erste vorhandene von dist/, build/, out/, _site/, public/. Nur geänderte Dateien werden hochgeladen.

KI-Agenten

Coding-Agenten (Claude Code, Cursor, Codex und andere) deployen mit demselben Befehl. Unter einem Agenten stellt die CLI nie eine Frage, und ihre Ausgabe endet mit einer Zeile „Tell the user:“ mit der URL und, bei einer Website ohne Konto, dem Übernahme-Link, mit dem sie erhalten bleibt.

npx -y lobsite --yes

Es gibt außerdem einen MCP-Server für Coding-Agenten, einen Remote-Server für ChatGPT und Claude.ai und einen curl-Befehl für Sandboxen ohne Node. Richte deinen Agenten ein.

Drag & Drop

Melde dich an und zieh einen Ordner oder eine ZIP-Datei irgendwo ins Dashboard. Bevor etwas hochgeladen wird, laufen dieselben Prüfungen; geheime Dateien werden immer ausgelassen.

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"

Unbekannte Schlüssel sind ein Fehler, mit einem Vorschlag für den nächstliegenden gültigen Schlüssel. Die Konfiguration geht mit jedem Deploy mit, ein Rollback stellt sie also wieder her.

Single-Page-Apps

Apps mit clientseitigem Routing wie React Router, Vue Router oder TanStack Router haben eine einzige index.html und zeichnen jede Seite im Browser. Wer /dashboard/settings direkt öffnet oder neu lädt, fragt den Server nach einer Datei, die es nicht gibt. Der Single-Page-Modus beantwortet diese Pfade mit deiner index.html, und der Router der App übernimmt. Es gibt drei Wege, ihn einzuschalten:

  • spa = true in lobsite.toml. Es geht mit jedem Deploy mit, ein Rollback stellt es also wieder her. Braucht lobsite 0.1.8 oder neuer; ältere Versionen brechen mit „Unknown key“ ab.
  • Single-Page-App in den Einstellungen der Website im Dashboard. Das ist der Weg für Websites, die du per Drag & Drop hochlädst, denn ein abgelegter Ordner sendet keine lobsite.toml. Es ist eine Einstellung der Website und bleibt daher über Deploys und Rollbacks hinweg, wie sie ist.
  • Eine 200.html ganz oben in der Website. Sie wird statt index.html ausgeliefert und funktioniert mit jeder CLI-Version und mit Drag & Drop. So macht es Surge.

Mit Vite (React, Vue, Svelte oder Solid) füg die Einstellung hinzu und deploye dist/ wie gewohnt:

npm run build
npx lobsite

Nur Seitenanfragen bekommen die App: ein Pfad, dessen letzter Teil keine Endung hat (/dashboard, /users/42), oder jede Anfrage eines Browsers, der HTML will (/users/jane.doe). Eine fehlende Datei wie /assets/index-3f9a.js bekommt eine echte 404. Das zählt direkt nach einem Deploy: Wer die alte Version noch offen hat, bekommt für das alte Skript einen klaren Fehler statt deines HTML.

Die Website hat Eine fehlende Seite (/dashboard) Eine fehlende Datei (/old.js)
nichts „Not found“ von Lobsite, 404 „Not found“ von Lobsite, 404
404.html 404.html, 404 404.html, 404
Single-Page-Modus index.html, 200 „Not found“ von Lobsite, 404
Single-Page-Modus und 404.html index.html, 200 404.html, 404
200.html (mit oder ohne Einstellung) 200.html, 200 404.html, falls vorhanden, sonst „Not found“, 404

Von Netlify kommend entspricht die _redirects-Regel /* /index.html 200 dem spa = true; von Vercel kommend ist ein Rewrite von /(.*) auf /index.html dasselbe.

.lobsiteignore

Dateien, die auf ein Muster in .lobsiteignore passen, werden nicht deployt. Die Syntax ist dieselbe wie bei .gitignore:

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

Die Datei wird aus dem deployten Ordner und aus der Projektwurzel (neben lobsite.toml) gelesen; Muster in der Datei der Wurzel gelten relativ zur Wurzel. .git, node_modules, .DS_Store und .lobsiteignore selbst werden immer ausgelassen.

Geheime Dateien (.env*, private Schlüssel wie *.pem und id_rsa, .npmrc, .netrc und Ähnliches) stoppen ein Deploy, bis sie entfernt oder ignoriert werden. In einem Terminal bietet die CLI an, sie zu .lobsiteignore hinzuzufügen und ohne sie zu deployen.

Formulare

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

Formulare werden beim Deploy erkannt. Spamschutz (ein Honeypot, Zeitprüfung und Ratenlimits) wird für dich hinzugefügt. Einsendungen landen auf der Seite „Einsendungen“ in deinem Dashboard und in deinem Postfach. Mehr zu Formularen: Beispiele, Senden mit JavaScript, Frameworks und Einstellungen.

Im kostenlosen Tarif laufen Formulare im eingeschränkten Modus: ein monatliches Kontingent pro Website, Benachrichtigungen nur an die E-Mail deines Kontos und keine Webhooks. Der Standard-Tarif bringt Webhooks, jede bestätigte Benachrichtigungsadresse und ein höheres Kontingent.

Eigene Domains

Eigene Domains gibt es mit jedem Konto, der kostenlose Tarif eingeschlossen. lobsite domain add www.example.com gibt den Eintrag aus, den du anlegen musst: einen CNAME auf cname.lobsite.app. Zertifikate werden für dich ausgestellt und erneuert. Hat ein anderes Konto die Domain ebenfalls hinzugefügt, beweist ein TXT-Eintrag, dass sie dir gehört.

Vorschauen und Rollback

Jedes Deploy hat eine eigene URL, <id>--<site>.lobsite.app. lobsite deploy --preview lässt die Produktion in Ruhe; lobsite rollback und lobsite promote wechseln das Live-Deploy, ohne etwas hochzuladen.

CLI

lobsite [dir]Einen Ordner deployen (der Standardbefehl)
lobsite deploy --previewHochladen, ohne die Produktion zu ändern
lobsite deploysAufbewahrte Deploys auflisten
lobsite rollback [id]Einen früheren Deploy live schalten
lobsite promote <id>Beliebigen Deploy live schalten
lobsite login / logout / whoamiDein Konto
lobsite claim [site]Eine anonyme Website behalten
lobsite account [use <email>|me]Zu einem Konto wechseln, in dem du Mitglied bist
lobsite token create|ls|revokeCI-Tokens für LOBSITE_TOKEN (Standard)
lobsite ls / open / rmDeine Websites
lobsite domain add|status|rmEigene Domains
lobsite forms ls / export <name> --csvFormulareinsendungen
lobsite mcpEin MCP-Server für KI-Agenten

Limits

AnonymFreeStandard
WebsitesKeine Grenze15
Dateien pro Website10010010.000
Pro Datei5 MB5 MB100 MB
Größe der Website50 MB50 MB2 GB
Speicher—1 GB20 GB
Deploys pro Stunde1030100
Deploys pro Tag und Website3Keine GrenzeKeine Grenze
Deploy-VerlaufLive deploy only7 days30 days
Eigene Domains pro Konto—15
Eigene Domains pro Website—11
Bandbreite1 GB10 GBUnlimited, fair use
Formulareinsendungen pro Monat—25Unlimited
Analytics——Yes
Automatisierungen (Zapier, n8n)——Yes
„Powered by lobsite!“-BadgeYesYesNo

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.