Как сделан этот сайт

Как мы сделали этот сайт

Свой сайт мы делали так же, как делаем проекты клиентам: несколько вариантов, независимая оценка и приёмка, на которой часть работы вернули на переделку. Ниже — как это было, по порядку, вместе с тем, что не получилось.

Зачем конкурс

Нас четверо. Сайт был нужен как пример того, как мы работаем: с агентами, с оценкой по коду, с честным статусом у каждой части. Один дизайнер, один макет и три круга правок ничего из этого не показали бы. Поэтому мы написали один бриф, отдали его 20 агентным командам и попросили независимого агента-судью выбрать лучшее по сданному коду.

В регламенте главным была честность: в примерах только обезличенные данные, «подготовить» не значит «применить», никаких обещаний роста. Работа, которая это нарушала, до оценки не доходила.

Первый раунд

Июнь 2026

Двадцать команд, по пять в четырёх треках: строго по ТЗ, свободная трактовка, полная свобода и отдельный продакшен-трек со своей рубрикой. Каждая сдала отдельное приложение, которое можно запустить у себя.

Судья работал вслепую: без презентаций и скриншотов, только по коду. Он пересобирал каждую работу, проверял обязательный минимум — честность, адаптив, рабочую сборку — и заполнял скоркарту по рубрике. Балл считался в коде, у каждой команды осталась своя скоркарта со ссылками на файлы и строки.

Варианты получились по-настоящему разными: живая карта-меш, журнал, пульт оператора, лифт по слоям масштаба, моно-терминал. Гран-при взял «Пульт оператора» из трека B с 86,2 балла — на две десятых впереди «Спуска по слоям масштаба» из трека A. В продакшен-треке лучшая работа набрала 93,3, но по другой рубрике, с остальными её не сравнить.

Были и провалы. Там, где команды перерисовывали наш знак руками или оставляли на внутренних страницах старую сине-зелёную палитру, судья снимал баллы. А самое обидное выяснилось позже: у победителя трека A первый экран был пустым и чёрным. Судья проверял код и сборку, но в браузер не смотрел — в той среде headless-браузер плохо переживал WebGL, и пиксельную проверку двадцати сайтов мы решили не делать. Решение оказалось плохим.

Второй раунд

24.06.2026

Во второй раунд мы пошли с двумя выводами. Проверка кода не ловит пустой экран — значит, нужно новое жёсткое требование: видимый первый экран, иначе работа не рассматривается. И настоящей айдентики не вышло ни у кого, потому что командам было не из чего её делать: знак они перерисовывали по картинке. Мы вырезали меш из логотипа и отдали его файлом.

Дальше шли два потока. 5 новых команд, группа E, получили одну задачу: айдентика вокруг этого меша, чёрно-белая editorial-вёрстка с зерном, синего не больше десяти процентов. Параллельно четырёх чемпионов треков доводили: к работе-победителю прививали лучшие идеи остальных четырёх из того же трека. Получилось 9 финалистов, и все девять прошли проверку, включая первый экран.

В группе E победил «Зум по масштабам сквозь меш» с 84,5 балла: прокрутка приближает один и тот же знак через четыре уровня, от скопления до отдельного узла. Это первая работа, где айдентика выглядела нашей. Пятое место занял «Журнал-номер»: сильная главная и внутренние страницы в чужом фиолетовом интерфейсе, та же болезнь, что в первом раунде. Среди доведённых чемпионов главное — у трека A наконец починили первый экран: вместо WebGL постер из 130 узлов, который рисуется на сервере. Победившие команды группы E от WebGL отказались сами. Мы тоже: на этом сайте его нет.

Что взяли

Основа сайта — победитель группы E. К нему мы добавили куски ещё четырёх работ, и у каждого куска есть причина, которую можно назвать. Баллы — оценки судьи во втором раунде.

  • 84,5

    E/team-03

    Зум по масштабам сквозь меш

    Взяли: основа сайта — цвета и шрифты, знак, шапка, которая сама подстраивается под тёмные и светлые секции, зум меша к узлу компетенции, карточки-реплики.

    Почему: единственная работа группы E, где айдентика действительно новая: настоящий меш, чёрно-белая editorial-вёрстка и первый экран, который виден без WebGL.

  • 80,6

    E/team-04

    Граф-инспектор узлов

    Взяли: доступность меша — по узлам можно ходить с клавиатуры, зона нажатия не меньше 44 px, у узлов есть подписи, «дыхание» узлов не больше половины пикселя.

    Почему: у основы меш был картинкой, а здесь это граф, с которым можно работать без мыши.

  • 76,4

    E/team-01

    Звёздная карта-операционка

    Взяли: меш, который рисуется на сервере как SVG, крупные числа над тонкой линией и карточка-реплика со стрелкой.

    Почему: меш без JavaScript нужен на внутренних страницах и в картинке для соцсетей, а числа здесь были самыми чистыми.

  • 79,2

    v2/C

    Доведённый чемпион трека C

    Взяли: анимация — построчное появление текста, кнопка-магнит, прелоадер с предохранителем по времени и ветка для тех, кто отключил анимацию в системе.

    Почему: единственный набор, где текст виден уже в серверном HTML и не ждёт скрипта.

  • 79,0

    v2/B

    Доведённый чемпион трека B

    Взяли: прокрутка — один движок на весь сайт вместо разрозненных приёмов и полоса прочитанного в материалах.

    Почему: аккуратная работа с GSAP: контекст создаётся и сбрасывается, нативная прокрутка не перехватывается.

Ещё две работы дали по одному приёму: у доведённого чемпиона трека A взяли моношрифт для чисел, который лежит на нашем сервере, а у продакшен-работы — правило не передавать персональные данные в параметры аналитики. Остальные работы лежат в архиве конкурса.

Как собирали дальше

Август 2026

Конкурс дал основу и набор приёмов, но не сайт. В августе мы сначала описали сайт целиком, от разделов до правил для визуала, и только потом завели репозиторий. Собирали в три захода: сначала база — цвета и шрифты, факты о компании, главная и контакт; потом разделы — компетенции, продукты, кейсы, радар, заметки, команда и эта страница; потом доводка — форма, которая подставляет задачу из ссылки, данные конкурса, README.

Правила, к которым пришли за два раунда, закрепили в репозитории так, чтобы их нельзя было нарушить случайно: один вес фирменного шрифта, синий — один объект на экран, метки статусов отличаются начертанием, число попадает на страницу только вместе с источником. Меш рисуется на сервере как SVG. Тексты лежат отдельно от страниц, чтобы потом перенести их в базу, не переписывая страницы.

После сборки мы сняли скриншоты всех маршрутов и прошли по ним руками — тот шаг, которого не хватило в первом раунде. Нашлось то, чего в коде не видно: шапка терялась на прозрачных секциях, логотип стоял не в той пропорции.

Что пошло не так

22 августа 2026

Первую приёмку тексты не прошли. Тот из нас, кто принимает работу, прочитал страницы и сказал, что они написаны как промпт: объяснения, по каким правилам собран сайт, вместо того, что мы делаем и как это устроено. Он был прав. Мы переписали вводные абзацы всех разделов и страницу продукта — теперь она идёт от возможностей к устройству и к тому, кто за это отвечает. Слова из внутренней кухни занесли в список запрещённых в правилах репозитория, чтобы они не вернулись. Эта страница — вторая попытка: первую, с карточками и выводами по пунктам, тоже вернули.

Мешали и инструменты. Агенты, запущенные в фоне, перезапускались при каждом новом сообщении в чате: в первой попытке 57 запусков и ни одного завершённого. Помогло запускать их блокирующе, по несколько в одном сообщении — медленнее, зато доходят до конца.

Что осталось

На сегодня

Часть работы ещё впереди. Логотип перевели из EPS в вектор: разобрали файл на 47 путей, собрали из них меш, надпись и их сочетание, а для иконки сайта сделали компактный знак из шести узлов. Дизайнеру ещё предстоит утвердить этот знак, охранное поле и минимальные размеры. Заявки с формы уже приходят команде в мессенджер и сохраняются в журнал на сервере. Выкладку на сервер делает отдельный специалист, для него написана инструкция.

А в радаре технологий у конкурса с агентом-судьёй пока осторожный статус: это был один прогон, и метод не формализован. Второй покажет, что из него повторяется.

Мультиагентные конкурсы с агентом-судьёй

19.08.2026

пилот
Для заказчика

Что это значит для вас

Проекты клиентам мы ведём тем же способом. Несколько вариантов делаются параллельно, выбирает их независимая оценка по сданному коду, и после неё мы всё равно смотрим результат руками. По каждой части проекта вы получаете честный статус: готово, в пилоте или отложено. Если хотите разобрать свою задачу так же — напишите нам.

Обсудить задачу

Хотите такой же процесс для своей задачи?

Ответим в течение 1 рабочего дня. Дальше — 30-минутный разбор задачи.