Коротко. Фронтенд наших сайтов — чистый JavaScript (vanilla JS), без React и Vue. На нём работают квизы, калькуляторы стоимости, живой поиск и формы с отправкой в CRM. Результат: страницы легче мегабайта и PageSpeed 90+ — против типичных 3–5 МБ и 40–60 баллов у сайтов на фреймворках. Сам фреймворк мы берём только там, где он оправдан: личные кабинеты и сложные веб-приложения.
Во что обходится фреймворк на обычном сайте
Фреймворк — это библиотека, которая рисует интерфейс в браузере посетителя. Прежде чем человек увидит страницу, телефон должен скачать и выполнить этот код: React с обвязкой — ориентир 150–300 КБ сжатого JavaScript ещё до вашего контента.
Для онлайн-банка это разумная плата. Для сайта производственной компании — балласт: страница показывает текст, фото продукции и форму заявки, фреймворк тут не нужен. Платит за балласт не разработчик, а ваш клиент:
- На среднем смартфоне в мобильной сети первый экран появляется на 1,5–3 секунды позже.
- Часть посетителей уходит, не дождавшись загрузки, — бюджет рекламы на них уже потрачен.
- Яндекс и Google ранжируют медленный сайт ниже быстрых конкурентов.
Что мы строим на чистом JavaScript
Vanilla JS — это не «сайт без интерактива». Современный браузер из коробки умеет почти всё, ради чего десять лет назад брали фреймворк. На чистом JavaScript у нас в продакшене работают:
- Квизы — пошаговые опросы с ветвлением и передачей ответов менеджеру вместе с заявкой.
- Калькуляторы стоимости — расчёт цены по параметрам изделия без перезагрузки страницы.
- Живой поиск — подсказки по каталогу с первых букв.
- Формы — валидация, защита от спама, отправка в CRM и цели в Метрику.
Весь этот интерактив весит десятки килобайт, а не мегабайты, и не требует сборщиков и ежегодных «миграций на новую версию»: код, написанный сегодня, будет работать в браузерах и через десять лет.
PageSpeed 90+ — следствие, а не подвиг
«Оптимизация до зелёной зоны» у большинства студий — борьба с последствиями: сжать, отложить, закешировать тяжёлый фреймворк. Мы не грузим лишнее с самого начала, поэтому PageSpeed 90+ на мобильных — не услуга, а свойство архитектуры: рукописная WordPress-тема, чистый JS, страницы легче мегабайта.
Скорость конвертируется в деньги сразу по трём каналам: меньше отказов из рекламы, выше позиции в органике, лучше поведенческие факторы. Связь баллов PageSpeed с позициями и конверсией мы разобрали в материале об оптимизации PageSpeed.
На этой базе растут SEO-результаты: у завода металлоконструкций — 2 566 запросов в ТОП-10 Яндекса, у поставщика бетона — трафик ×6,3 за месяц. Быстрый сайт — не единственная причина, но обязательное условие.
Два подхода в цифрах
| Критерий | Чистый JavaScript | Сайт на фреймворке (SPA) |
|---|---|---|
| Вес JavaScript на странице | 10–50 КБ | 200 КБ – 1 МБ и больше |
| Вес страницы целиком | меньше 1 МБ | ориентир: 3–5 МБ |
| PageSpeed на мобильных | 90+ | чаще 40–70 |
| Индексация Яндексом и Google | обычный HTML, индексируется сразу | нужен серверный рендеринг, иначе проблемы |
| Зависимость от экосистемы | только браузер | сборщик, зависимости, регулярные обновления |
| Поддержка через 5 лет | справится любой веб-разработчик | нужен специалист по конкретному фреймворку |
Цифры по фреймворкам — рыночные ориентиры, не приговор технологии. Аккуратно приготовленное SPA бывает быстрым, но это дороже и дольше, чем просто не создавать проблему.
Когда фреймворк оправдан — и когда наш подход не нужен
Мы не «против React» — мы против инструмента не по задаче. Фреймворк оправдан, когда интерфейс по сути программа:
- личные кабинеты с десятками экранов и правами доступа;
- дашборды с данными в реальном времени;
- SaaS-продукты и системы со сложным состоянием: конструкторы, редакторы.
Мы сами строим такие системы: отчётность продаж для завода металлоконструкций с интеграцией Битрикс24 и PostgreSQL, SEO-мониторинг девяти сайтов, SaaS-платформу мониторинга брендов в нейросетях. Поэтому понимаем, где фреймворк экономит месяцы, а где просто добавляет мегабайты.
И честно о втором ограничении: если ваш сайт уже собран на React и стабильно приносит заявки — переписывать его ради красивой цифры в PageSpeed не нужно. Переделка оправдана, когда медленный фронтенд режет конверсию рекламы или мешает SEO, и это видно в метриках, а не в ощущениях.
Что это значит для вашего проекта
- Сроки и бюджет. Без слоя фреймворка меньше работы: лендинг — от 80 000 ₽ с запуском за 5–10 дней, корпоративный сайт — от 200 000 ₽. Полные вилки — на странице цен.
- Отдача от продвижения. Быстрый сайт усиливает и SEO, и Директ: тот же бюджет даёт больше заявок, потому что трафик не разбивается о загрузку. Примеры — в кейсах.
- Независимость. Код открыт, стандартен и понятен любому веб-разработчику — вы не привязаны к нам.
FAQ
Vanilla JS — это устаревшая технология?
Нет. Vanilla JS — это и есть современный JavaScript, язык, на котором написаны сами фреймворки. Браузеры давно умеют нативно почти всё, ради чего раньше брали React. Мы просто используем платформу напрямую, без посредника.
Сможет ли другой подрядчик поддерживать такой сайт?
Да, и проще, чем сайт на фреймворке: чистый JavaScript читается любым веб-разработчиком без изучения чужой экосистемы и сборщиков. С React наоборот: проект трёхлетней давности часто требует сначала обновить зависимости.
А если бизнес вырастет и понадобится личный кабинет?
Кабинет подключим отдельным приложением на поддомене — там фреймворк уместен и не утяжелит публичные страницы, которые ранжируются и принимают рекламу. Как связываем сайт с CRM и внешними системами — см. API-интеграции.
Почему другие студии предлагают React даже для лендинга?
Так удобно разработчику: один привычный стек, готовые шаблоны. Интересы бизнеса — скорость, индексация, стоимость владения — в этой логике вторичны. Мы выбираем стек от задачи: сайту — лёгкий фронтенд, приложению — фреймворк.