Аптечка вайб-кода

Проект на Next.js не собирается

Next.js в режиме разработки прощает многое, а next build проверяет типы и линтер, пререндерит страницы на сервере и требует корректного разделения серверных и клиентских компонентов. Поэтому ошибки всплывают только при сборке. Чинить нужно саму причину, а не отключать проверки флагами ignoreBuildErrors.

Цена: от 90 000 ₸Срок: диагностика за 1 день, исправление от 1 дня
Спросить в WhatsApp
NUMETEKAIVA GROUPSAFIAHECTONEWTONEAsar SuJAILYSalt DasturMatras FactoryEcolosKvadrumNUMETEKAIVA GROUPSAFIAHECTONEWTONEAsar SuJAILYSalt DasturMatras FactoryEcolosKvadrum

Первая помощь и как чиним

  1. 1
    Воспроизвести сборку

    Запускаем next build локально с той же версией Node и теми же переменными, что на хостинге.

  2. 2
    Разобрать ошибки по типам

    Типы и линтер, серверные и клиентские компоненты, пререндер, импорты.

  3. 3
    Исправить причины

    Правим типы, границы use client, обращения к браузерным API и данным при сборке.

  4. 4
    Проверить рендер

    Решаем, какие страницы статические, а какие динамические, и проверяем их на проде.

  5. 5
    Закрепить

    Сборка запускается автоматически при каждом пуше, чтобы ошибки не копились.

Честно

Чинить самому или отдать в «аптечку»

СамостоятельноС Emaya
ДиагностикаСпрашиваете ИИ — он чинит одно и ломает другоеНаходим корень проблемы за 1 день
БезопасностьНе знаете, утекли ли ключи и данныеАудит, ротация ключей, закрытые доступы
ДеплойЛокально работает, на хостинге — белый экранСервер, домен, HTTPS, мониторинг
КодНикто, кроме ИИ, не понимает, как это устроеноПорядок в коде и документация
БудущееКаждая новая функция — лотереяПроект можно спокойно развивать
ВремяНочи в консолиВы занимаетесь бизнесом, мы — кодом
Где спотыкаются чаще всего

Мы уже наступили на эти грабли — вам не придётся

⚠ Утечка ключей в git⚠ RLS в Supabase⚠ Белый экран после сборки⚠ Зависимости и версии⚠ Нет логов и мониторинга⚠ Хаос в структуре кода

Аптечка: что с проектом?

3 вопроса — и мы скажем, сколько стоит починка. Чек-лист безопасности проекта в подарок.

Как работаем
01Разбор

Интервью с собственником и РОПом, аудит текущей CRM и источников заявок.

1–3 дня
02Карта процессов

Воронки, роли, точки контроля. Согласуем до того, как что-то настраивать.

3–5 дней
03Сборка

Настраиваем Битрикс24 и дописываем недостающие инструменты. Демо каждую неделю.

1–4 недели
04Запуск и рост

Обучение, база знаний, поддержка. Дорабатываем, пока цифры не поедут вверх.

дальше — с вами
Подробнееразвёрнутое описание, этапы и нюансы

Next.js — любимый фреймворк Cursor, v0 и Claude Code. Ловушка в том, что npm run dev показывает работающий сайт, а next build, который выполняет хостинг, падает с длинной ошибкой. Вот самые частые причины в проектах, написанных с ИИ, и что с ними делать.

Почему так происходит

  • Ошибки типов. В dev-режиме они лишь подсвечиваются, а сборка по умолчанию на них останавливается (в версиях до 16 — ещё и на ошибках линтера): Type error: Property 'x' does not exist.
  • Браузерные API на сервере. window is not defined, localStorage is not defined — код выполняется при серверном рендере, где браузера нет.
  • Пропущенный "use client". В App Router компоненты по умолчанию серверные, и useState, useEffect или обработчики событий в них выдают ошибку.
  • Пререндер страниц. При сборке Next.js рендерит статические страницы заранее. Если страница обращается к базе или API, недоступным в среде сборки, или читает куки без пометки динамической, сборка падает.
  • useSearchParams без Suspense. Требует обернуть компонент в границу Suspense, иначе ошибка при сборке статической страницы.
  • Регистр в импортах. На macOS работает, на Linux-сервере сборки — Module not found.
  • Смешение версий. ИИ пишет код для Pages Router в проекте на App Router или использует API из другой мажорной версии Next.js.

Что проверить самому

  1. Запустите сборку локально и сохраните полный вывод:
rm -rf .next && npm run build 2>&1 | tee build.log
  1. Найдите первую ошибку, а не последнюю — остальные часто её следствие.
  2. Для window is not defined перенесите код в useEffect или в клиентский компонент.
  3. Проверьте версию Next.js в package.json и сверяйте советы ИИ с документацией этой версии.
  4. Сравните версию Node локально и на хостинге.
  5. Проверьте, заданы ли на хостинге переменные, нужные при сборке.

Когда звать разработчика. Одну-две ошибки типов или пропущенный "use client" можно исправить самому, дав ИИ полный текст ошибки и попросив объяснить причину. Помощь нужна, если ошибок десятки, если они появляются только на хостинге, если сборка падает на пререндере страниц с данными, если проект смешивает Pages Router и App Router или если ИИ предлагает обновить или откатить Next.js — смена мажорной версии в рабочем проекте часто ломает больше, чем чинит. Такие случаи лучше разбирать целиком.

Как чиним мы

Воспроизводим сборку в среде, идентичной вашему хостингу, разбираем ошибки по причинам и исправляем их в коде: типы, границы клиентских и серверных компонентов, стратегию рендера страниц, импорты. Если проект застрял между версиями Next.js, приводим его к одной. Настраиваем автоматическую сборку при каждом пуше, чтобы новая правка ИИ, ломающая сборку, была видна сразу. Подробнее — на странице «Аптечка вайб-кода», а правила профилактики — в статье «Почему вайб-код ломается».

Сколько стоит

Диагностика — 50 000 ₸, запуск и сборка проекта — 40 000 ₸, итого от 90 000 ₸ для небольшого проекта. Если вместе со сборкой нужен деплой на сервер, добавляется 50 000 ₸. Рассчитайте в калькуляторе.

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

Можно просто включить ignoreBuildErrors?

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

Сборка падает из-за нехватки памяти. Что делать?

Временно можно поднять лимит через NODE_OPTIONS=--max-old-space-size=4096. Если сборка не помещается в память сервера, лучше собирать проект в CI и выкладывать готовый результат.

Почему ошибка про базу данных во время сборки?

Next.js пытается заранее отрендерить страницы и обращается к базе, недоступной из среды сборки. Нужно сделать страницу динамической или дать сборке доступ к данным.

Сделаем так же у вас

Короткий созвон — и вы знаете срок и цену. Или посчитайте сами за 2 минуты.

WhatsApp
Другие проблемы, которые чиним
CORS-ошибка в проекте, написанном с ИИ →Аудит безопасности проекта на вайб-коде →Как настроить git и не терять рабочие версии проекта →Белый экран и ошибки в консоли →ИИ ломает код при каждой правке →Как добавить оплату в проект, сделанный с ИИ →Как настроить бэкапы базы данных →Как передать проект на вайб-коде программисту →Как подключить домен и HTTPS к своему проекту →Как задеплоить проект из Cursor на свой сервер →Проект из Lovable не работает после экспорта →Перенос проекта с Bolt или Replit на свой сервер →Перенос проекта с Firebase или Supabase на свой сервер →Приложение тормозит после роста пользователей →Рефакторинг после вайб-кода: как сделать код поддерживаемым →Сайт работает локально, но не на хостинге →Ошибки Supabase RLS: база пустая или запись не проходит →Утёк API-ключ OpenAI или Supabase: что делать →Нет авторизации: любой видит чужие данные →
Напишите нам
Заявка

Обсудим задачу?

Ответим в течение часа в рабочее время. Или сразу напишите в WhatsApp.

Нажимая «Отправить», вы соглашаетесь на обработку контактных данных для ответа на заявку.

Пройти →