Аудит демо-стенда: 5 дефектов и 10 калькуляторов
Проверил 122 страницы demo.justudio.ru, починил 5 системных дефектов и добавил раздел /calc/ с 10 живыми калькуляторами.
24.09.2026 я прошёл по демо-стенду demo.justudio.ru: 122 страницы, проверка доступности, битых ресурсов, вёрстки и индексации. Нашёл и починил 5 системных дефектов. Отдельно собрал раздел /calc/ — 10 живых калькуляторов.
Процедура проверки
Список страниц собирал через find по html-файлам, исключая бэкапы и оригиналы. Доступность — curl по каждой странице. Битые ресурсы искал python-скриптом: собирал все src и href с расширениями картинок, css и js и проверял существование файлов. Вёрстку гонял через accept.py с флагом --render.
find . -name "*.html" ! -name "*.bak*" ! -name "*.orig*"
curl -sL -o /dev/null -w "%{http_code}"Без -L curl даёт ложные 308 — редирект на слэш. Битые ресурсы: 0. Индексацию проверял отдельно по meta robots и по заголовку X-Robots-Tag: meta не действует на картинки и PDF.
Что было сломано
- showcase (12 демо) и lms (42 экрана) отсутствовали в навигации главной — 54 страницы были недостижимы, счётчик «34 прототипа» неверен.
- Кнопки a.open были 40px вместо 44 — на 5 разделах.
- Фейковый счётчик Яндекс.Метрики с чужим номером 98765432 стоял на 12 страницах и стучался наружу.
- noindex стоял только на 5 разделах из 7, robots.txt отсутствовал.
- 50 пустых alt.
Что починено
На главной теперь 9 карточек вместо 5 — добавлены showcase, calc, lms, b2b, счётчики показывают 47 прототипов. Кнопки .open получили padding 9px 16px → 12px 18px, что даёт 44px, в разделах showcase, quality, kariera, portfolio. Кнопки .back с padding 11px 0 правились в 27 файлах — была высота 22px. Пустые alt заменил на осмысленные из ближайшего h2: 35 штук на индексных страницах.
Фейковый счётчик Метрики 98765432 удалён вместе с JS-блоком и noscript — 14 файлов. Добавлен robots.txt с Disallow / и заголовок X-Robots-Tag «noindex, nofollow» на весь домен через Caddy. SEO-минимум (description, canonical, og, JSON-LD WebPage) проставлен на 12 демо showcase.
Калькуляторы
Раздел /calc/ собран из каркаса base.py: CSS-система и head() с JSON-LD. Десять калькуляторов собирают скрипты make_a..make_e.py. Проверка test_calc.py через playwright: итог не пуст, пример меняет значение, ползунок пересчитывает, нет JS-ошибок, нет перелива на 375px.
Грабли: accept.py не понимает -q, только --quiet; в sh не работает ls dir/*.{jpg,png}; кнопка #demo есть не во всех калькуляторах — в c03 только #copy.
Читайте дальше
Новые замеры и статьи
Одно письмо, когда выходит новая статья или замер: разборы поломок, цифры цены и задержки, инструменты. Без рассылок «о нас» и без продаж. Отписаться можно ответом на любое письмо.