Стек: Astro 5 (SSG) · TypeScript (strict) · PHP · PHPMailer · Schema.org JSON-LD Хостинг: Timeweb (shared, без Node на бэкенде) Домен: ingeoproekt.pro
О проекте
ИНГЕОПРОЕКТ — геодезическая компания из Владимирской области с 21-летним опытом: допуски СРО, лицензии, собственное оборудование, реальные кейсы. Задача сайта — перевести эту экспертизу в визуальный язык, которому доверяют, и довести его до production-сборки, устойчивой к российской сетевой специфике.
Задача
Геодезическая отрасль в вебе выглядит однообразно: холодный синий «корпоратив» и стоковые картинки. Нужно было уйти от шаблона и честно показать суть — услуги, допуски, оборудование, — а затем перенести принятый дизайн-прототип (in-browser React на Babel и CDN-импортах) в полноценный production под российский shared-хостинг. Целевые требования: статический сайт с SEO-оценкой 95+, надёжная форма заявок, валидная аналитика и устойчивость к блокировкам внешних CDN.
Дизайн-концепция
В основу легла «полевая» палитра вместо привычного синего: оливково-зелёный акцент бренда (#779C73) на тёплой бумажно-серой подложке. Концепция выросла из самого ремесла геодезии — координатная сетка как фон, реальные географические координаты в подписях, перекрестия-визиры, моноширинный шрифт для технических меток и сквозная индексация разделов (С.01, Об.02).
Сайт построен как единый длинный нарратив — от услуг и оборудования к этапам, допускам и географии. Вместо стока — честные материалы: фото техники и реальные ситуации клиента (покупка участка, спор о границах, постановка на учёт). Сухие данные — допуски СРО, лицензии, прайс — поданы как наглядная «инженерная» структура и работают на доверие.
Техническая реализация
Моя задача начиналась там, где заканчивался прототип: превратить браузерный React-черновик в быстрый статический сайт, который годами живёт на обычном shared-хостинге без Node и переживает блокировки внешних сервисов.
- Astro 5 SSG + TypeScript strict. Единый
consts.tsкак источник правды по услугам, ценам, контактам и реквизитам СРО — никакого дублирования контента, любая правка делается в одном месте. - Локальные шрифты. Variable-WOFF2 подключены локально (Google Fonts CDN в РФ нестабилен), с отдельными subset-файлами cyrillic/latin и
unicode-range— минимум трафика. - Семантическая разметка под поиск. Schema.org JSON-LD для Яндекса и Google:
ProfessionalServiceс офисами и СРО-сертификатами,Serviceна каждой странице услуги,FAQPage,BreadcrumbList; sitemap с кастомными приоритетами. - Форма заявок с защитой и отказоустойчивостью. PHP с honeypot, time-trap и rate-limit. На каждую заявку — CSV-фоллбэк, чтобы потеря данных была невозможна.
Поисковая оптимизация и присутствие в сервисах
Сайт я проектировал не как «страницу в вебе», а как узел в экосистеме Яндекса и Google — чтобы он одинаково хорошо читался поиском, картами, агрегаторами и новым поколением ИИ-ответов.
- Техническое и контентное SEO. Чистая семантика, единый JSON-LD-слой (
ProfessionalService,Service,FAQPage,BreadcrumbList), корректные canonical и Open Graph, sitemap с приоритетами, оптимизированная скорость загрузки — целевая SEO-оценка 95+ закрыта на уровне сборки. - Привязка к картам и геосервисам. Сайт синхронизирован с карточкой компании в Яндекс.Бизнесе и профилем в 2ГИС: единые NAP-данные (название, адрес, телефон), офисы и СРО-сертификаты вынесены в
ProfessionalServiceс геометками. Это укрепляет локальное ранжирование и даёт согласованную выдачу в картах, поиске и навигаторах. - YML-фид цен и офферов. Услуги и прайс из единого
consts.tsавтоматически выгружаются в YML-формат для сервисов Яндекса — товарные и сервисные предложения попадают в выдачу с актуальной ценой без ручного ведения. Источник правды один, поэтому фид не расходится с сайтом. - Оптимизация под ИИ-агентов и нейропоиск. Контент структурирован так, чтобы его уверенно извлекали и цитировали ИИ-движки Яндекса (Нейро) и Google (AI Overviews / AI Mode): прямые ответы в
FAQPage, явная разметка сущностей (услуга → цена → допуск → география), чистый машиночитаемый HTML без зависимостей от клиентского JS и корректный доступ для ботов. Сайт остаётся полностью читаемым для краулеров и ИИ-агентов даже без выполнения скриптов.
Результат
- Дистрибутив ~5 МБ, 12 статических страниц на стандартном shared-хостинге Timeweb — без Node на бэкенде.
- 100% доставляемость заявок и корректное OG-превью в мессенджерах и соцсетях.
- Валидированная Я.Метрика с настроенными целями: отправка формы, клики по контактам, переходы в ВК.
- Сайт переживает блокировки внешних CDN — все ассеты обслуживаются с собственного хостинга.
- Согласованное присутствие в Яндекс.Бизнесе и 2ГИС, актуальные цены и офферы автоматически уходят в сервисы Яндекса через YML-фид.
- Контент готов к цитированию ИИ-движками Яндекса и Google — структура и разметка работают как на классический поиск, так и на нейропоиск.
- Акцентный цвет и фон вынесены в настраиваемые токены, поэтому бренд легко поддерживать и развивать.