Кейс — Недвижимость / Казахстан

Корпоративный сайт и
единая цифровая платформа
для застройщика

Разработали с нуля масштабную трёхкомпонентную систему для Atamura Group — одного из крупнейших застройщиков Алматы. Публичный трёхъязычный SSR-портал, административная панель и высокопроизводительный Go-бэкенд объединили восемь жилых комплексов в единой инфраструктуре.

Клиент
Atamura Group
Отрасль
Жилая недвижимость
Рынок
Алматы, Казахстан
Стек
Go · Nuxt · Vue 3 · Redis · PostgreSQL
Статус
Продакшен · Поддержка
Ключевые возможности

Что умеет платформа

Каталог всех ЖК в одной системе
Восемь жилых комплексов и таунхаусов разной стадии готовности — от давно сданных до анонсированных стартов 2025–2026 годов. Каждый ЖК — отдельная сущность со своими планировками, галереями, видеоотчётами и индивидуальной страницей.
Каталог ЖК Планировки Галерея
Мгновенная индексация Google
При публикации новости или вакансии бэкенд асинхронно отправляет POST-запрос на Google Indexing API с типом URL_UPDATED. Страница появляется в поиске за минуты, а не за дни. При удалении — URL_DELETED убирает страницу из выдачи немедленно.
Google Indexing API SEO
Мгновенные Telegram-уведомления
Каждая новая заявка немедленно приходит менеджеру в корпоративный Telegram-чат с полным контекстом: тип заявки, ЖК, имя и телефон клиента, выбранный язык, интересующая планировка, банк-партнёр и ответы квиза.
Telegram Bot API Go goroutine
Квалификационный квиз
Пятишаговый квиз собирает тип квартиры, цель покупки, способ оплаты, интересующий ЖК и готовность к решению. Ответы хранятся в PostgreSQL (JSONB) и приходят менеджеру до звонка — квалификация клиента без лишних вопросов.
Pinia composable JSONB
Ход строительства и медиа
Загрузка фото с хода строительства с указанием этапа и даты съёмки. Видеогалерея с поддержкой YouTube-embed и прямых ссылок. Lightbox-просмотр с корректной блокировкой скролла и восстановлением позиции.
Галерея Lightbox YouTube
Административная панель
Полный CRUD по всем сущностям: заявки, новости, отзывы, видео, документы, вакансии, менеджеры. JWT + Redis авторизация с автообновлением токенов через Axios interceptor. Интерфейс переведён на несколько языков.
Vue 3 SPA JWT CRUD
atamura.qbix.kz
Главная страница публичного сайта — единый портал для всех жилых комплексов
О клиенте

Atamura Group — застройщик нового поколения

Казахстанский застройщик из Алматы с 2011 года. Портфолио включает жилые комплексы класса ECO-комфорт — «Атмосфера», Arlan, Aura, Keruen, Bravo — и таунхаусы бизнес-класса Monarch, Aqsai Resort, Dulati Residence. Концепция «город в городе», итальянская архитектура, сейсмостойкость 9 баллов и дворы без машин выделяют проекты Atamura на рынке. Более 35 000 подписчиков в Instagram — высокий показатель для застройщика в Казахстане.

8
жилых комплексов
и таунхаусов
2011
год выхода
на рынок
35K+
подписчиков
в Instagram
3
новых ЖК
запуск в 2026
Задача

Что не устраивало в прежнем решении

До нашего проекта сайт Atamura Group существовал на конструкторе Tilda. На старте это оправдано: быстро, дёшево, без разработчика. Но с ростом портфолио ограничения Tilda стали жёсткими и болезненными.

Отдельный сайт на каждый ЖК
Каждый новый жилой комплекс требовал отдельной страницы или целого лендинга. Новый домен, новая разработка, отдельный бюджет — и всё это при каждом запуске.
Фрагментация SEO
Несвязанные домены делили органический трафик. Авторитет каждого домена накапливался с нуля, SEO-бюджет распылялся между независимыми площадками без синергии.
Нет многоязычности с SEO-полями
Казахский, русский, английский. Tilda не поддерживает полноценную трёхъязычную структуру с раздельными SEO-метатегами и slug-URL для каждого языка.
Заявки без контекста
Лиды с сайта падали в общую почту. Менеджер не видел, с какой страницы пришёл клиент, какой ЖК его интересовал и какой банк-партнёр он выбрал.
Медленная индексация
Новый контент попадал в поиск через дни или недели. На рынке недвижимости с высокой конкуренцией — упущенный трафик в момент запуска каждого ЖК.
Расхождение визуального стиля
Разные подрядчики — разные шаблоны. Каждый ЖК выглядел по-своему, единый брендинг Atamura Group не считывался покупателем.
Решение

Единая платформа для всего портфолио

Мы решили задачу через единую трёхкомпонентную систему. Все восемь ЖК живут в одной кодовой базе, под одним доменом и в одном SEO-ядре. Каждый ЖК — отдельная сущность внутри одной системы: свои планировки, галереи, документы и SEO-поля на трёх языках, но единый домен, единый брендинг и единая воронка лидов.

Финансовый эффект: при каждом новом запуске ЖК больше не нужен отдельный сайт. SEO-эффект: авторитет домена накапливается целым, новые страницы стартуют с уже окрепшего домена. Маркетинговый эффект: покупатель видит всю линейку Atamura в одном месте и остаётся в едином пользовательском опыте.

Nuxt 3 SSRVue 3Go + FiberPostgreSQLRedisDockerGoogle Indexing APITelegram BotNginx
01Публичный SSR-портал
Трёхъязычный сайт на Nuxt 3 с серверным рендерингом. Мгновенная индексация поисковиками, высокие позиции в органической выдаче. Все ЖК в едином каталоге.
02Административная панель
Отдельное Vue 3 SPA-приложение для команды маркетинга и продаж. Полный CRUD по всем сущностям с удобным интерфейсом.
03Высокопроизводительный API
Go-бэкенд на Fiber обрабатывает десятки тысяч запросов в секунду. Бинарный файл менее 10 МБ благодаря multi-stage Docker-сборке.
04Квалификация лидов и Telegram-уведомления
Пятишаговый квиз собирает тип квартиры, цель покупки, способ оплаты и готовность к решению — менеджер видит полный профиль клиента ещё до звонка. Каждая заявка мгновенно приходит в Telegram-чат отдела продаж.
Многоязычность

Трёхъязычная архитектура как фундамент

Для казахстанского рынка многоязычность — не настройка, а фундамент. Казахский язык имеет статус государственного, 69% казахстанцев предпочитают его в повседневной коммуникации. Русский — язык межнационального общения. Английский важен для иностранных инвесторов и экспатов, составляющих значимую долю покупателей квартир в Алматы.

KK
Казахский язык — /kz
Государственный язык Республики Казахстан. Доля казахскоязычной аудитории растёт год от года. Сайт на казахском — не опция, а необходимость для охвата основной части рынка.
RU
Русский язык — /ru
Язык межнационального общения, официально употребляется наравне с государственным. 31% казахстанцев предпочитают русский в повседневной коммуникации.
EN
Английский язык — /en
Для иностранных инвесторов и экспатов, составляющих значимую долю покупателей квартир бизнес-класса в Алматы. Обязателен для премиального сегмента.
01
Маршрутизация по URL-пути
Определение локали происходит на уровне composable useLocale(), который анализирует текущий маршрут и возвращает константу ('kk' | 'ru' | 'en'). Все компоненты — шапка, подвал, формы, кнопки, тексты валидации — имеют полный перевод на три языка.
02
Умный переключатель языков
Переключатель языков в хедере интеллектуально сохраняет текущую страницу при смене языка. Если пользователь читает новость на русском и переключается на казахский — он остаётся на той же новости, но в казахскоязычной версии.
03
Отдельные SEO-поля на каждый язык
Модуль новостей бэкенда поддерживает отдельные поля lang, slug, seo_title и seo_description для каждого языка. Менеджер создаёт три независимые версии одной новости, каждая публикуется со своим SEO-заголовком и описанием.
SEO

Поисковая оптимизация как конкурентное преимущество

В большинстве проектов на недвижимость новый контент попадает в поиск спустя дни. Здесь — за несколько минут после нажатия кнопки «Опубликовать». Для рынка с высокой конкуренцией за органический трафик по запросам «купить квартиру в Алматы» это ощутимое конкурентное преимущество, особенно при запуске новых ЖК.

Google Indexing API
При публикации контента Go-бэкенд асинхронно отправляет POST на indexing.googleapis.com/v3/urlNotifications:publish с типом URL_UPDATED. Google получает сигнал и обходит страницу немедленно, минуя стандартную задержку.
Единое SEO-ядро на одном домене
Все восемь ЖК работают под одним доменом с общим SEO-ядром. Авторитет домена накапливается целым. Новые страницы при запуске получают индексацию быстрее благодаря внутренней перелинковке и общему траст-уровню.
SSR и полный HTML для роботов
Nuxt 3 с серверным рендерингом отдаёт полностью сгенерированный HTML для каждой страницы. Поисковые роботы без JavaScript получают весь контент — заголовки, описания, планировки, новости — без необходимости исполнять скрипты.
Slug-based URL и sitemap
Читаемые URL по slug'ам (/zhk/atmosfera, /news/article-slug). robots.txt генерируется Nuxt server route и указывает на sitemap.xml, закрывая /admin и /api от индексации.
atamura.qbix.kz/admin
Административная панель — управление заявками, контентом и командой в едином интерфейсе
Архитектура бэкенда

Чистая архитектура с разделением на слои

Бэкенд построен по принципам чистой архитектуры с разделением ответственности. Каждый слой решает свою задачу, зависимости направлены от внешних слоёв к внутренним.

Handlers
Fiber v2
HTTP-обработчики — разбор запросов и формирование ответов. Маршрутизация, middleware (rate limit, CORS, gzip, JWT), валидация входящих данных. Публичные endpoints: 60 запросов в минуту.
Services
Go (чистая логика)
Бизнес-логика — авторизация, управление токенами, отправка Telegram-уведомлений в отдельной горутине, вызов Google Indexing API при публикации контента. Изолирована от транспортного слоя.
Repositories
PostgreSQL + Redis
Слой доступа к данным через pgx/v5 connection pool. Redis хранит refresh-токены с автоматическим истечением TTL. Составные индексы ускоряют частые выборки по статусу, языку, slug и дате публикации.
Domain
Модели и DTO
Доменные модели и DTO — внутреннее ядро без внешних зависимостей. Определяет сущности: Manager, Application, News, Review, Video, ProgressPhoto, Document, Job.
Безопасность
JWT + Redis
Access Token (15 мин) + Refresh Token (7 дней). При logout refresh-токен немедленно отзывается из Redis — повторное использование невозможно.
Bcrypt + Rate Limiting
Хеширование паролей с дефолтным cost-фактором. Rate limiting: 60 запросов в минуту на публичные endpoints через Fiber limiter.
UUID + Валидация файлов
UUID-генерация имён загружаемых файлов исключает path traversal атаки. Валидация расширений (.jpg, .png, .webp, .pdf, .docx). Лимит тела запроса: 25 МБ.
CORS Whitelist
CORS middleware с явным whitelist разрешённых origins. Gzip-компрессия ответов экономит 60–80% трафика для JSON-ответов.
Multi-stage Docker
Двухэтапная сборка: golang:alpine компилирует бинарник с флагами -ldflags="-s -w", финальный образ alpine:3.19 с ca-certificates. Размер образа менее 10 МБ.
ENV-конфигурация
Полная конфигурация через переменные окружения: PostgreSQL, Redis, JWT-секреты, Telegram-токен, Google Service Account JSON. Никаких секретов в коде.
Результат

Проект в цифрах

3
Полноценных продукта
SSR-портал, административная панель и API-бэкенд — спроектированы и запущены с нуля в рамках одного проекта.
8
ЖК в единой системе
Все жилые комплексы и таунхаусы под одним доменом, в одном SEO-ядре, с единым брендингом и стилем.
3
Языка с полным SEO
Казахский, русский, английский — каждый с отдельными SEO-заголовками, slug'ами и мета-описаниями.
Минуты
до индексации в Google
Вместо стандартных дней и недель. Конкурентное преимущество при каждом запуске нового ЖК.
<10 МБ
размер Go-образа
Благодаря multi-stage Docker сборке с alpine. Быстрый деплой, минимальная attack surface.
Часы
на запуск нового ЖК
Общая инфраструктура, брендинг и SEO-ядро уже готовы — каждый следующий ЖК встаёт в систему быстрее предыдущего.
Итоги проекта

Что было сдано

Продукт 1
Публичный SSR-сайт на Nuxt 3
  • Три языка с URL-маршрутизацией
  • SEO с Google Indexing API
  • Интерактивные галереи и карты
  • Конверсионные формы и квиз
  • Scroll-анимации без библиотек
  • Маска телефона +7 (KZ)
Продукт 2
Go-бэкенд на Fiber
  • Чистая архитектура 4 слоя
  • JWT + Redis авторизация
  • Telegram Bot уведомления
  • Google Indexing API
  • 9 миграций PostgreSQL
  • Docker образ <10 МБ
Продукт 3
Административная панель Vue 3
  • Управление заявками и воронкой
  • Многоязычные новости с SEO
  • Медиа, документы, вакансии
  • Axios interceptor (401 → refresh)
  • Роли: admin / manager / super_admin
  • Интерфейс переведён на 3 языка
Похожий проект?

Нужна единая платформа
для вашего бизнеса?

Разработаем масштабируемую систему под ключ — от архитектуры до деплоя. Кастомный стек, полный контроль над производительностью и безопасностью.

Технологии

Технологический стек

Выбор стека обусловлен требованиями к скорости, SEO и масштабируемости. Кастомный код даёт полный контроль там, где конструктор упирается в потолок.

Публичный сайт
  • Nuxt 3 (SSR)
  • Vue 3 Composition API
  • TypeScript
  • Pinia
  • VueUse
  • Intersection Observer API
Административная панель
  • Vue 3 + Vite
  • TypeScript
  • Pinia
  • Vue Router
  • Axios (interceptors)
  • Встроенный i18n-модуль
Бэкенд
  • Go 1.22
  • Fiber v2 (fasthttp)
  • PostgreSQL + pgx/v5
  • Redis (tokens)
  • Google Indexing API
  • Telegram Bot API
Инфраструктура
  • Docker multi-stage
  • Nginx (HTTPS, gzip)
  • Отдельные контейнеры
  • Persistent volumes
  • ENV-конфигурация
  • Alpine Linux образы