Наш стек — нам нечего скрывать
Вот точная инфраструктура, на которой работает этот сайт. Каждый выбор обоснован, каждый инструмент проверен на практике. Одни и те же технические стандарты для всех наших клиентов.
Фронтенд-фреймворк
Зрелая экосистема, конкурентный рендеринг для плавных переходов.
Надёжность на этапе компиляции, спокойный рефакторинг, самодокументируемый код.
Мгновенный HMR в разработке. Начиная с v8 бандл собирает rolldown, а минифицирует oxc — esbuild ушёл из дерева зависимостей.
Декларативный API, маршруты загружаются по требованию, совместимость с Suspense.
Стили и дизайн-система
Ноль рантайма, автоматическая очистка, визуальная согласованность за счёт токенов.
- shadcn/ui (в новой вкладке)Базовые компоненты
Скопированы в репозиторий — никакой хрупкой зависимости от библиотеки, код под полным контролем.
- Radix UI (в новой вкладке)Доступные примитивы
Корректный ARIA из коробки, навигация с клавиатуры, ловушка фокуса.
Декларативный API, учёт prefers-reduced-motion, композиция на GPU.
Tree-shaking, единый стиль, более 1500 поддерживаемых иконок.
Производительность
- Пререндеринг — headless Chromiumv149.0Полный HTML с сервера
Все маршруты сайта — страницы услуг, локальные страницы и 37 кейсов из портфолио — рендерятся при сборке в headless Chromium. Раньше сервер отдавал один и тот же пустой index.html для всех: роботы, не выполняющие JavaScript, видели только метаданные главной страницы.
- web-vitalsv6.1RUM-мониторинг
LCP, INP, CLS измеряются у реальных пользователей и отправляются в GA4.
- WOFF2 variable fontsШрифты
Outfit + Plus Jakarta Sans на собственном хостинге, латинское подмножество, font-display: optional.
- Ручное разбиение на чанкиCode splitting
Отдельные вендорные чанки (react, motion, radix, pdf) → оптимальное долгосрочное кеширование.
SEO и структурированные данные
- @dr.pogodin/react-helmetv3.2Мета-теги для каждого маршрута
Собственные title, description и Open Graph для каждой страницы.
- Schema.org JSON-LDСтруктурированные данные
Organization, LocalBusiness, Service, FAQPage, HowTo, BreadcrumbList, Article.
- llms.txtGEO-оптимизация
Отдельный файл для индексации в ChatGPT, Claude, Perplexity, Gemini.
- Sitemap XMLСканируемость
Генерируется при сборке из маршрутов, объявленных в App.tsx, — он не может отстать от сайта.
Бэкенд и данные
Управляемый Postgres, Auth, Storage, Edge Functions — open source.
- Brevo (в новой вкладке)Форма обратной связи
Принимает сообщения из формы обратной связи через serverless-функцию Vercel.
- Resend (в новой вкладке)Транзакционные письма
Доставляет PDF-расчёты из конфигуратора через функцию Supabase. Без фильтрации по IP на стороне API.
- Zodv4.4Валидация во время выполнения
Типизированные схемы, общие для клиента и сервера, сообщения об ошибках на французском.
Инфраструктура и CI/CD
- Vercel (в новой вкладке)Edge-хостинг
Деплой по git push, глобальный CDN, HTTP/3, ветки предпросмотра.
- IONOS (в новой вкладке)Регистратор и DNS
Домены kayzen-lyon.com и .fr, DNS-зона и почта.
- GitHubКонтроль версий
Код-ревью и полная история — именно она питает публичный журнал изменений.
- Service WorkerOffline-first
Стратегическое кеширование ресурсов, резервная страница /offline.html.
- Vitestv4.1Модульные тесты
Использует конфигурацию Vite, а значит те же алиасы и тот же конвейер, что и в продакшене.
- Playwrightv1.62E2E-тесты
Критические сценарии прогоняются в Chromium (десктоп) и в мобильном профиле Pixel 7.
Безопасность и соответствие требованиям
- Content-Security-PolicyЗащита от XSS
script-src без 'unsafe-inline': каждый встроенный скрипт разрешён по своему хешу SHA-256, который проверяется при сборке.
- HSTS preloadЗащита от даунгрейда
max-age 2 года, includeSubDomains, preload-список Chrome.
- Permissions-PolicyМинимальные привилегии
Камера, микрофон, USB, геолокация по умолчанию отключены.
- GDPR by designКонфиденциальность
Consent Mode v2, отказ по умолчанию, GA4 загружается только после явного согласия (без GTM), субподрядчики названы поимённо.
Внутренние инструменты
- ESLintv10.8Линтинг
Строгие правила, проверка хуков, блокирует CI при ошибках.
- rollup-plugin-visualizerv7.0Анализ бандла
Графический анализ чанков, выявление тяжёлых импортов.
- PostCSSv8.5Сборка CSS
Autoprefixer, совместимость с современными браузерами (целевой уровень es2020+).
- npmМенеджер пакетов
Источник истины — package-lock.json, именно его Vercel устанавливает при деплое.
Эта страница живёт
Мы обновляем этот список при каждом крупном изменении. Полную историю итераций смотрите в нашем публичном журнале изменений, а токены и компоненты — в нашей дизайн-системе.
Обсудить вашу инфраструктуру