lobsite! Увійти Створити обліковий запис

Документація

Швидкий старт

У зібраному проєкті виконайте одну команду. Обліковий запис не потрібен: сайт існуватиме 6 годин, якщо ви не увійдете та не закріпите його за собою.

npx lobsite

Папка визначається аргументом, значенням dir у lobsite.toml або першою знайденою серед dist/, build/, out/, _site/, public/. Завантажуються лише змінені файли.

Агенти ШІ

Агенти для програмування (Claude Code, Cursor, Codex та інші) розгортають сайт тією самою командою. Під керуванням агента CLI ніколи не ставить запитань, а його вивід закінчується рядком "Tell the user:" з URL-адресою та, для сайту без облікового запису, посиланням, за яким його можна зберегти.

npx -y lobsite --yes

Також є MCP-сервер для агентів програмування, віддалений сервер для ChatGPT і Claude.ai та команда curl для ізольованих середовищ без Node. Налаштуйте свого агента.

Перетягування

Увійдіть і перетягніть папку або zip-архів у будь-яке місце панелі керування. Перед завантаженням виконуються ті самі перевірки; файли із секретами завжди виключаються.

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"

Невідомі ключі спричиняють помилку з підказкою найближчого правильного ключа. Конфігурація зберігається з кожним розгортанням, тож відкат також відновлює її.

Односторінкові застосунки

Застосунки з маршрутизацією на боці клієнта, як-от React Router, Vue Router чи TanStack Router, мають один index.html і відображають кожну сторінку в браузері. Пряме відкриття /dashboard/settings або перезавантаження цієї сторінки запитує в сервера файл, якого не існує. В односторінковому режимі ці шляхи повертають ваш index.html, і подальшу обробку бере на себе маршрутизатор застосунку. Увімкнути цей режим можна трьома способами:

  • spa = true у lobsite.toml. Налаштування зберігається з кожним розгортанням, тож відкат також відновлює його. Потрібен lobsite 0.1.8 або новіший; старіші версії зупиняються з повідомленням "Unknown key".
  • «Односторінковий застосунок» у налаштуваннях сайту на панелі керування. Цей спосіб підходить для сайтів, які ви завантажуєте перетягуванням, оскільки перетягнута папка не передає lobsite.toml. Це налаштування сайту, тому розгортання й відкати його не змінюють.
  • Файл 200.html у корені сайту. Він повертається замість index.html і працює з будь-якою версією CLI та з перетягуванням. Саме так це робить Surge.

Для Vite (React, Vue, Svelte або Solid) додайте налаштування й розгорніть dist/ як зазвичай:

npm run build
npx lobsite

Застосунок повертається лише на запити сторінок: для шляху, остання частина якого не має розширення (/dashboard, /users/42), або для будь-якого запиту браузера, що очікує HTML (/users/jane.doe). Відсутній файл, наприклад /assets/index-3f9a.js, повертає справжню помилку 404. Це важливо відразу після розгортання: відвідувач, у якого ще відкрита стара версія, отримує зрозумілу помилку для старого скрипту, а не ваш HTML замість нього.

На сайті є Відсутня сторінка (/dashboard) Відсутній файл (/old.js)
нічого "Not found" від Lobsite, 404 "Not found" від Lobsite, 404
404.html 404.html, 404 404.html, 404
односторінковий режим index.html, 200 "Not found" від Lobsite, 404
односторінковий режим і 404.html index.html, 200 404.html, 404
200.html (з налаштуванням або без нього) 200.html, 200 404.html, якщо є, інакше "Not found", 404

Якщо ви переходите з Netlify, правило _redirects /* /index.html 200 відповідає spa = true; для Vercel переписування /(.*) на /index.html означає те саме.

.lobsiteignore

Файли, що відповідають шаблону в .lobsiteignore, не розгортаються. Синтаксис такий самий, як у .gitignore:

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

Файл читається з папки, яку ви розгортаєте, і з кореня проєкту (поруч із lobsite.toml); шаблони в кореневому файлі відраховуються від кореня. .git, node_modules, .DS_Store і сам .lobsiteignore завжди виключаються.

Файли із секретами (.env*, приватні ключі на зразок *.pem та id_rsa, .npmrc, .netrc тощо) зупиняють розгортання, доки їх не буде видалено або виключено. У терміналі CLI пропонує додати їх до .lobsiteignore і розгорнути сайт без них.

Форми

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

Форми виявляються під час розгортання. Захист від спаму (поле-пастка, перевірка часу та обмеження частоти) додається автоматично. Надіслані дані потрапляють на сторінку «Відповіді» панелі керування та на вашу електронну пошту. Докладніше про форми: приклади, надсилання через JavaScript, фреймворки й налаштування.

На безкоштовному плані форми працюють з обмеженнями: місячна квота для кожного сайту, сповіщення лише на адресу вашого облікового запису й без вебхуків. План Standard додає вебхуки, будь-яку підтверджену адресу для сповіщень і вищу квоту.

Власні домени

Власні домени доступні для кожного облікового запису, зокрема на безкоштовному плані. lobsite domain add www.example.com виводить запис, який потрібно додати: CNAME на cname.lobsite.app. Сертифікати видаються й поновлюються автоматично. Якщо домен також додано до іншого облікового запису, запис TXT підтверджує, що він належить вам.

Попередній перегляд і відкат

Кожне розгортання має власну URL-адресу: <id>--<site>.lobsite.app. lobsite deploy --preview не змінює робочий сайт; lobsite rollback і lobsite promote перемикають активне розгортання без завантаження файлів.

CLI

lobsite [dir]Розгорнути папку (типова команда)
lobsite deploy --previewЗавантажити без зміни опублікованої версії
lobsite deploysПерелічити збережені розгортання
lobsite rollback [id]Опублікувати попереднє розгортання
lobsite promote <id>Опублікувати будь-яке розгортання
lobsite login / logout / whoamiВаш обліковий запис
lobsite claim [site]Зберегти анонімний сайт
lobsite account [use <email>|me]Перемкнутися на обліковий запис, учасником якого ви є
lobsite token create|ls|revokeТокени CI для LOBSITE_TOKEN (Standard)
lobsite ls / open / rmВаші сайти
lobsite domain add|status|rmВласні домени
lobsite forms ls / export <name> --csvВідповіді форм
lobsite mcpMCP-сервер для ШІ-агентів

Обмеження

АнонімноFreeStandard
СайтиБез обмеження15
Файлів на сайт10010010 000
На файл5 MB5 MB100 MB
Розмір сайту50 MB50 MB2 GB
Сховище—1 GB20 GB
Розгортань на годину1030100
Розгортань на день на сайт3Без обмеженняБез обмеження
Історія розгортаньLive deploy only7 days30 days
Власних доменів на обліковий запис—15
Власних доменів на сайт—11
Трафік1 GB10 GBUnlimited, fair use
Відповідей форм на місяць—25Unlimited
Аналітика——Yes
Автоматизація (Zapier, n8n)——Yes
Значок "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.