NetrunНа главную

Код от нейросети

Куда выложить сайт, сделанный в Lovable

· 5 мин чтения

Коротко

Сайт, сделанный в Lovable, можно выложить где угодно: код проекта, как правило, забирается через связанный репозиторий на GitHub, реже — выгрузкой архивом. Загрузите этот код в Netrun: платформа увидит, что перед ней фронтенд-проект, соберёт его и выдаст публичную ссылку с HTTPS, без покупки домена и настройки сертификата. Перед переносом проверьте одну вещь: ключи от внешних сервисов, вписанные прямо в код страницы, видны любому посетителю, поэтому их нужно перевыпустить и убрать на серверную сторону или ограничить правами доступа.

Вопрос «куда выложить сайт, сделанный в Lovable» обычно возникает не от того, что встроенный хостинг плохой, а от того, что проект перестал быть черновиком. Хочется держать его рядом с остальными своими проектами, отвязаться от чужого адреса, самому решать, когда выходит новая версия. Lovable — ИИ-конструктор веб-приложений, и код собранного в нём проекта, как правило, можно забрать себе: обычно через связанный репозиторий на GitHub, реже выгрузкой архивом.

Обычно дальше начинается знакомое: поставить сборщик, собрать проект, залить файлы на сервер, настроить прокси и сертификат, следить, чтобы маршруты не отдавали ошибку при обновлении страницы. В Netrun этой части нет — вы приносите исходный код, платформа сама понимает, что это фронтенд-проект, собирает его и выдаёт ссылку с HTTPS. Сложность переноса обычно не в этом, а в том, что конструктор успел вписать прямо в код: ниже разберём, что именно стоит проверить перед публикацией.

  1. Заберите код проекта из конструктора#

    Вам нужна вся папка с кодом целиком — вместе с файлом package.json и настройками сборки, а не только страницы. Как правило, забрать её можно двумя путями: через связанный репозиторий на GitHub или выгрузкой архивом. Собирать проект у себя не нужно, достаточно исходников: сборка произойдёт при публикации.

  2. Найдите в коде ключи от внешних сервисов#

    Фронтенд целиком уезжает в браузер посетителя, поэтому всё, что вписано в код страницы, видно любому, кто откроет исходники. Если там оказались ключи от платного API, почтовой рассылки или платёжного сервиса, считайте их раскрытыми — независимо от того, где вы разместите сайт. Такие ключи нужно перевыпустить и убрать на серверную сторону либо ограничить правами доступа так, чтобы публичным ключом нельзя было сделать ничего лишнего.

  3. Оставьте базу и вход там, где они уже работают#

    Если приложение опирается на внешнюю базу данных и вход по учётной записи, эта часть живёт не в вашем коде, а на стороне того сервиса, и после переноса продолжает работать по ключам из его настроек. Ваш проект остаётся фронтендом, который к сервису обращается. Единственное, что обычно приходится поправить, — добавить новый адрес сайта в список разрешённых в настройках сервиса, иначе вход и запросы к данным будут отклоняться.

  4. Не считайте переменные сборки секретом#

    Значения, которые фронтенд читает при сборке (обычно с публичным префиксом вроде VITE_), попадают прямо в собранные файлы — спрятать их нельзя, это свойство любого фронтенда, а не конкретной платформы. Настоящий секрет — токен, ключ на запись, доступ к платному сервису — должен жить только на серверной стороне. Netrun спрашивает переменные окружения при настройке проекта и хранит их зашифрованными, но публичной сборке секретности это не добавит: туда кладите только то, что не жалко показать.

  5. Решите, где будут храниться данные#

    Чистый фронтенд ничего не хранит: всё, что ввёл посетитель, живёт в его браузере и пропадает вместе с вкладкой. Если в приложении должны оставаться история, заявки или загруженные файлы, нужна база данных или постоянная папка /data — то, что записано просто рядом с кодом, создаётся заново при следующей публикации. Базу можно взять внешнюю или поднять рядом в том же проекте, если у вас есть свой docker-compose.

  6. Загрузите проект и заберите ссылку#

    Подключите репозиторий на GitHub, в том числе приватный, или загрузите папку архивом. Netrun определит фронтенд-проект, поставит зависимости, соберёт его и выдаст публичный адрес с HTTPS — покупать домен и возиться с сертификатом не нужно. Логи сборки видны в кабинете в реальном времени, поэтому если сборка не проходит, причина видна сразу, а не по белой странице.

После переноса сайт открывается по обычной ссылке, а новая версия выходит тогда, когда вы сами загрузите обновлённый код — адрес при этом не меняется. На бесплатном тарифе сайт засыпает при простое и просыпается сам, когда кто-то откроет ссылку: первый заход после паузы чуть медленнее. Свой домен подключается на тарифе Pro. Можно сначала прогнать папку с кодом через бесплатную проверку проекта без регистрации, а потом попробовать Netrun.

Частые вопросы

Можно ли забрать код из Lovable и разместить его в другом месте?

Как правило, да: код проекта доступен через связанный репозиторий на GitHub либо выгрузкой папки с кодом. Дальше это обычный фронтенд-проект, который собирается и публикуется где угодно. Нужен весь проект целиком, а не отдельные страницы: файл package.json и настройки сборки тоже входят.

Что будет со ссылкой, которую выдал конструктор?

Это две независимые копии: каждый адрес отдаёт свою сборку, и они не синхронизируются между собой автоматически. Какое-то время их можно держать параллельно, но правки в конструкторе на вашу копию сами не приедут — код придётся забрать заново и опубликовать. Когда переезд завершён, обычно проще оставить один адрес.

Почему ключ от внешнего сервиса видно в браузере?

Потому что фронтенд целиком отдаётся посетителю: браузер должен получить весь код, чтобы его выполнить. Спрятать значение внутри страницы невозможно ни на одном хостинге. Единственный рабочий путь — держать чувствительные ключи на серверной стороне, а публичным давать ровно те права, которых не жалко.

Будет ли работать вход по учётной записи после переноса?

Как правило, да: вход обслуживает внешний сервис, а не сам сайт, и он продолжает работать по своим ключам. Обычно нужно добавить новый адрес сайта в список разрешённых в настройках этого сервиса. Пока адрес не добавлен, вход выглядит как молчаливая ошибка при попытке войти.

Нужен ли GitHub, чтобы выложить проект из Lovable?

Нет. Если репозиторий уже есть, его удобно подключить, в том числе приватный. Если нет, достаточно загрузить папку с кодом архивом — git и терминал не понадобятся. Папку node_modules и готовую сборку класть в архив не нужно: зависимости ставятся при публикации.

А React, Vue, Next.js, Nuxt, Svelte или Astro?

Да, все они работают. Загрузите исходный код с package.json — собирать проект у себя и класть готовую сборку в архив не нужно, сборка идёт у нас. Если фреймворк умеет и в готовые страницы, и в серверный режим, подойдут оба варианта: в серверном приложение должно слушать порт из переменной окружения. Одна важная деталь: значения, которые попадают в собранный фронтенд, видны любому посетителю — настоящие ключи держите на стороне сервера.

Где указать токены и другие секретные значения?

В проекте есть вкладка «Секреты» — там задаются значения из кода, например токен от BotFather. Мы храним их в зашифрованном виде: названия переменных вы видите, сами значения не показываем никому, включая вас.

Обновляется ли проект сам при изменениях в GitHub?

Нет, публикация новой версии — ваше решение: откройте проект и обновите его из GitHub или загрузите новый архив. Так случайный коммит не уезжает сразу к пользователям. Ссылка при обновлении остаётся прежней, а данные из постоянного хранилища сохраняются.

Запустите свой проект

Загрузите код, ответьте на пару вопросов — и получите рабочую ссылку. Есть бесплатный тариф

Попробовать Netrun
Все статьи блога