Кейс Маркетинговий сайт

Сайт, який ви читаєте, переїхав з Next.js на Rust, не втративши жодного URL

envixo.com опублікований 99 мовами. Ми переписали його з Next.js на Rust, порівняли кожен URL зі старим сайтом перед перемиканням і виправили те, що старий сайт робив не так для пошукових систем, мов із письмом справа наліво та AI-асистентів.

Клієнт
Envixo
Платформа
Веб
Галузь
Маркетинговий сайт
Запуск
2026

Завдання

Сайт на Next.js працював, але потребував сервера Node.js із зарезервованими 512 MB пам'яті, віддавав близько 150 KB HTML на сторінку й мав прогалини: не було верстки справа наліво, а структуровані дані додавав лише JavaScript.

До: Сервер Node.js із зарезервованими 512 MB пам'яті
Після: Бінарний файл на Rust у контейнері близько 33 MB, що використовує близько 46 MB пам'яті
До: Близько 150 KB HTML на сторінку, включно з даними React
Після: HTML, згенерований на сервері, зі звичайним JavaScript лише там, де він потрібен
До: Структуровані дані, які JavaScript додавав після завантаження сторінки
Після: Перекладений JSON-LD у HTML, який віддає сервер
До: Арабська, іврит, персидська та ще чотири мови з версткою зліва направо
Після: Верстка справа наліво для всіх семи мов із письмом справа наліво
До: www.envixo.com відповідав помилкою, а llms.txt не було
Після: www переадресовує на envixo.com, а /llms.txt описує компанію для AI-асистентів

Що ми створили

Сервер на Rust з axum і Askama, який віддає ті самі URL, ті самі 99 файлів локалізації й той самий дизайн, зібраний на Tailwind CSS і звичайному JavaScript.

Ті самі URL і переадресації

Визначення мови, префікси локалі, слеш у кінці та мовний cookie працюють як на старому сайті, тому не втрачено жодного посилання чи позиції в пошуку.

Паритет SEO, а далі краще

Метадані, hreflang, JSON-LD і карта сайту збігаються зі старим сайтом, з виправленими тегами для соцмереж і новим llms.txt.

Перевірка з нульовою розбіжністю

Інструмент порівняв кожен URL старого й нового сайтів. Для перемикання потрібно було нуль розбіжностей, а також знімки екрана в трьох ширинах англійською, арабською та японською.

Дослідити в 3D

Екскурсія по всій лендінг-сторінці на three.js, із простим списком, коли 3D недоступне.

Форма зв'язку без SDK

Перевірка на спам через Cloudflare Turnstile і листи через Amazon SES, із запитами, підписаними вручну, приманкою для ботів і обмеженням на відвідувача.

Помилки під контролем, ключі в безпеці

Помилки сервера й браузера надходять у Honeybadger, а ключ API ніколи не потрапляє на сторінку.

Інженерні результати

Пам'ять виміряна в продакшені у жовтні 2026 року; розмір образу — зі збірки. Кількість URL у карті сайту перевіряє автоматичний тест.

~33 MB
Образ контейнера для всього сайту
~46 MB
Використана пам'ять
99
Мов із тих самих файлів локалізації
594
URL у карті сайту, усі збережені
  • Відкат через DNS, зі збереженням старого сайту на сім днів
  • Оновлення залежностей зливаються автоматично, щойно проходять тести та збірка образу
  • Тести й збірки виконуються на власних CI-раннерах Envixo
  • Опублікований 99 мовами з тих самих файлів локалізації, що й раніше

Технології

  • Rust
  • axum
  • Askama
  • Tailwind CSS
  • three.js
  • Amazon SES
  • Cloudflare Turnstile
  • Kubernetes

Потрібне ПЗ, створене під ваш бізнес?

Інтеграції, внутрішні інструменти, застосунки та платформи, створені на замовлення досвідченими інженерами, які керують AI-агентами. Розкажіть, що вам потрібно, і ми покажемо, як би ми це побудували.