Синергия Групп — сайт студии строительства и дизайна в Сочи
Отрасль: строительство, проектирование и дизайн интерьера. Роль Synapster: разработка сайта и инфраструктуры приёма заявок под ключ — статический фронтенд и отдельный бэкенд.
Задача
Студии полного цикла ООО «СИНЕРГИЯ ГРУПП» нужен был не «лендинг-визитка», а продающий сайт под поисковый трафик в Сочи: отдельные посадочные страницы под каждую услугу (подбор участка, разрешение на строительство, проектирование, строительство домов и вилл, дизайн-проект, перепланировка, ремонт, приёмка у застройщика и др.) с FAQ и разметкой, быстрая статика, надёжный приём заявок без спама и потерь и соответствие требованиям по обработке персональных данных.
Решение
Фронтенд — статический экспорт Next.js 14 (App Router, TypeScript): главная и 10 страниц услуг с уникальными мета-тегами, FAQ, хлебными крошками и JSON-LD, плюс sitemap и robots. Контент вынесен в типизированные модули (контакты/меню и каталог услуг), что упрощает поддержку и масштабирование семантики.
Приём заявок реализован отдельным бэкендом на FastAPI: форма уходит cross-origin на API, проходит rate-limit, honeypot и контроль времени заполнения (антибот), дедуплицируется по заголовку Idempotency-Key, сохраняется в PostgreSQL, после чего best-effort уходит уведомление в Telegram. Без токена бота заявка всё равно сохраняется; при недоступной БД форма отвечает 503, а процесс не падает.
Что сделано
- Главная и 10 SEO-страниц услуг с уникальными title/description, FAQ и разметкой Schema.org.
- Статический экспорт (output: "export") — быстрая выдача и простой хостинг на статике.
- Форма заявки с антиспамом: rate-limit (429), honeypot и контроль тайминга, идемпотентность по Idempotency-Key.
- Бэкенд: INSERT в PostgreSQL (идемпотентная миграция при старте) + фоновое уведомление в Telegram.
- Комплаенс 152-ФЗ: страницы политики конфиденциальности и согласий, проверка согласия на обработку ПДн (422 без согласия).
- Healthcheck бэкенда (/healthz) с индикацией состояния БД.
Технологии
| Frontend | Next.js 14 (App Router), React 18, TypeScript, статический экспорт |
|---|---|
| Backend | Python, FastAPI, rate-limit, антибот-проверки, идемпотентность |
| Данные | PostgreSQL (managed), идемпотентные миграции |
| Интеграции | Telegram-уведомления о заявках |
| Инфраструктура | Docker, Timeweb Apps (два приложения) + managed PostgreSQL |
Результат
Студия получила быстрый SEO-сайт с отдельной посадочной под каждую услугу и устойчивым приёмом лидов: заявки не теряются даже при недоступной БД или Telegram, спам отсекается на бэкенде, а согласие на обработку персональных данных собирается по 152-ФЗ. Разделение на статический фронт и независимый API упрощает развитие семантики и масштабирование без переписывания продукта.