Простые ответы о zip-файлах, публикации, ваших данных и доменах.

Начало работы

Что такое zip-файл?

Zip-файл упаковывает папку и всё её содержимое в один файл. Ваш проект состоит из десятков файлов; архивирование позволяет загрузить их все сразу. Ничего не изменяется, только упаковывается.

Как создать zip-файл?

В Windows щёлкните правой кнопкой мыши по папке проекта; в Windows 11 выберите «Сжать в › ZIP-файл», в Windows 10 — «Отправить › Сжатая ZIP-папка». На Mac щёлкните правой кнопкой мыши по папке и выберите «Сжать». Вы также можете написать своему ИИ-ассистенту: «Сделайте zip-файл из этого проекта, чтобы я мог его загрузить».

Какую папку нужно архивировать?

Всю папку проекта, в которой вы работали с вашим AI-ассистентом. Обычно она содержит такие файлы, как package.json или index.html. Если вы не уверены, спросите своего ассистента: «Какая папка в этом проекте главная?»

Нужно ли уметь программировать?

Нет. Если возникнет проблема, мы объясним её простыми словами. Вставьте этот текст в чат с ИИ-ассистентом: он всё исправит, а вы загрузите новый zip-файл.

Я не знаю, на чём был создан мой проект. Это проблема?

Нет. Когда вы загрузите zip-файл, мы сами определим тип проекта и покажем его вам.

Проекты на каких технологиях можно опубликовать?

Обычные HTML-сайты, собираемые сайты вроде React и Vite, а также приложения на Node.js, Next.js, Python и .NET публикуются напрямую. Для других языков, например Go, в проекте нужен Dockerfile. docker-compose не поддерживается.

Загрузка

Мой zip больше 50 МБ. Что мне делать?

Удалите папку node_modules внутри папки вашего проекта и заархивируйте её снова. Эта папка содержит только загруженные библиотеки, и мы переустанавливаем её при публикации, так что в вашем проекте ничего не пропадёт.

Нужно ли мне что-то удалять перед архивированием?

Нет. Когда вы загружаете, мы удаляем папки, которые не нужны серверу (такие как node_modules и .git). Если удалите их сами, загрузка пройдёт быстрее.

Что происходит с моим .env файлом?

.env — это файл, в котором лежат пароли и ключи. Он удаляется из загрузки и никогда не сохраняется. Вы вводите значения в своей панели управления, где они хранятся в зашифрованном виде и больше никогда не показываются. В сборку передаются только публичные значения с префиксами VITE_, NEXT_PUBLIC_, PUBLIC_, REACT_APP_.

Запускается ли мой проект при загрузке?

Нет. Загрузки только читаются и проверяются. Приложения, которые сохраняют информацию, запускаются только после нажатия кнопки Опубликовать, в своем собственном закрытом пространстве, отдельно от других проектов.

Публикация

Что будет, если при загрузке возникнет проблема?

Если проблема блокирует публикацию, проект не выйдет в сеть, пока она не будет исправлена, а её суть мы объясним простыми словами. Вставьте этот текст в чат с ИИ-ассистентом, заново создайте zip-файл и загрузите новую версию. Предупреждения публикации не мешают.

Удалит ли обновление мои данные?

Нет. База данных настраивается при первой публикации и сохраняется при каждом последующем обновлении. Загрузка новой версии изменяет только само приложение; она не затрагивает вашу сохраненную информацию.

Что если публикация не удастся?

Текущая версия продолжит работать. Раздел журнала на карточке приложения покажет, где всё остановилось.

Где должны сохраняться файлы, загруженные пользователями?

В постоянной папке: /data, предоставленной вашему приложению в переменной окружения DATA_DIR . Файлы, сохранённые в другом месте, при обновлении будут потеряны.

Могу ли я вернуться к более старой версии?

Да: загрузите zip этой версии ещё раз. Когда новая версия опубликована, старая удаляется, поэтому сохраняйте свои zip-файлы.

Как обновить проект?

Загрузите новый zip-файл с карточки того же приложения на странице «Мои приложения». Адрес останется прежним, данные в базе сохранятся.

Какие базы данных поддерживаются?

PostgreSQL, MySQL, MongoDB, Redis и SQLite устанавливаем мы и автоматически передаём приложению данные для подключения. SQL Server мы не предоставляем, но вы можете указать адрес своего сервера в переменной окружения.

Сайт будет открываться по HTTPS?

Да. Все адреса открываются по зашифрованному соединению, с сертификатами ничего делать не нужно.

Домены и тарифы

Какой адрес будет у моего сайта?

Имя, которое вы выберете, на your-project.aitoapp.com.

Могу ли я использовать свой собственный домен?

Да, на тарифах «Стандарт» и «Корпоративный». Достаточно добавить две записи в панели компании, у которой вы купили домен.

Есть ли бесплатный тариф?

Да. Бесплатный тариф публикует сайты и небольшие приложения по адресу на aitoapp.com, с небольшим значком «Пожаловаться» на странице. Это не пробная версия, и срок не ограничен.

Сколько стоят платные тарифы?

«Стандарт» стоит 12 $ в месяц, «Корпоративный» — 39 $ в месяц, с НДС; при оплате за год 2 месяца бесплатно. Лимиты каждого тарифа указаны на странице Тарифы.

Что произойдет, если кто-то пожалуется на мой сайт?

Жалобы рассматриваются. Сайт, на который в течение 72 часов пожаловались как на мошеннический или вредоносный более одного человека, автоматически приостанавливается. Если вы считаете, что это ошибка, напишите нам.

Что будет, если я превышу лимиты тарифа?

Если достигнут лимит приложений, новое создать нельзя. Если общий объём заполнен, загрузка тоже недоступна. Если превышение достигает 20 %, самое большое приложение переходит в спящий режим; данные не удаляются. Если трафик за месяц превышает лимит на 20 %, приложения спят до начала следующего месяца или до смены тарифа. Дополнительная плата не взимается. Использование показано на странице «Мои приложения».

Как удалить приложение или аккаунт?

Нажмите «Удалить» на карточке приложения на странице «Мои приложения»: файлы, настройки и базы данных будут удалены в течение нескольких минут. Чтобы закрыть аккаунт, напишите нам.

Вы делаете резервные копии моих данных?

Мы не гарантируем наличие резервных копий. Храните собственную копию исходного кода и регулярно выгружайте важные данные из приложения.

Кому принадлежат мой код и контент?

Вам. Все права на загруженные код и контент остаются у вас; мы храним, проверяем, собираем и отдаём их только для работы сервиса.