Разработка доски объявлений (Classifieds)
Допустим, вы запускаете классифайд для продажи подержанных авто. Через месяц вы обнаруживаете: поиск по марке и модели не фильтрует детально (нет года выпуска, пробега), модераторы вручную проверяют каждое объявление, а покупатели жалуются, что не видят объявления рядом с собой. Знакомая ситуация? Мы строим классифайды, в которых геопоиск работает за миллисекунды, модерация отсекает 90% мусора автоматически, а монетизация окупает разработку за полгода. Наши заказчики — от нишевых барахолок до федеральных досок объявлений с миллионами листингов. Разработка доски объявлений — комплексная задача, требующая сбалансированных решений. В этой статье разберём, как построить классифайд, который не тормозит при миллионе объявлений, модернируется сам и приносит прибыль. Рассмотрим ключевые технические решения: динамические атрибуты, геопоиск, мессенджер, модерацию и эскроу.
Что важно при разработке доски объявлений?
Начнём с архитектуры. Каждое объявление содержит минимум: тип сделки, заголовок, описание, категорию, цену, фото, контакты, локацию и срок активности. Но главная фишка — динамические атрибуты. Для авто — марка, модель, год; для недвижимости — площадь, этаж, материал стен. Атрибуты хранятся гибко:
CREATE TABLE category_attributes ( id INT PRIMARY KEY, category_id INT, name VARCHAR(255), type ENUM('text','number','select','boolean'), options JSONB, required BOOLEAN, searchable BOOLEAN ); CREATE TABLE listing_attributes ( listing_id INT, attribute_id INT, value_text TEXT, value_number NUMERIC, value_boolean BOOLEAN ); Форма объявления строится динамически — подгрузка атрибутов категории через AJAX. Пользователь заполняет только релевантные поля, что повышает конверсию.
Почему геолокационный поиск — ключевая фича?
«Объявления рядом со мной» — главный сценарий на досках объявлений. Реализуем через PostGIS с пространственным индексом:
SELECT l.*, ST_Distance(l.location::geography, $1::geography) AS dist FROM listings l WHERE ST_DWithin(l.location::geography, $1::geography, 10000) AND l.category_id = $2 AND l.status = 'active' ORDER BY dist; Для ускорения добавляем кэш Redis на популярные запросы. Типичное время ответа — <50 мс на 100 000 объявлений. Геопоиск на PostGIS даёт прирост скорости в 10 раз по сравнению с обычным LIKE-поиском по координатам. Это особенно важно для досок объявлений в сфере недвижимости и авто.
Как мы организуем общение: встроенный мессенджер?
Покупатель пишет продавцу прямо в объявлении — контакты скрыты до готовности к сделке. Чат привязан к листингу (например, «Ваше объявление "iPhone 14"»). Стек: WebSocket (Laravel Reverb) + PostgreSQL для истории + Redis для статусов «онлайн». Сообщения хранятся в партиционированной таблице — не тормозит при росте.
Как выбрать модерацию: pre vs post?
| Критерий | Pre-moderation | Post-moderation |
|---|---|---|
| Время публикации | От часов до суток | Мгновенно |
| Качество | Высокое | Низкое без автоматики |
| Риск мошенничества | Низкий | Высокий |
| Нагрузка на модераторов | Постоянная | По жалобам |
Мы комбинируем: pre-moderation для дорогих категорий (авто, недвижимость), post-moderation — для дешёвых. Автоматика детектирует дубли (одинаковый title + телефон за 7 дней), спам-паттерны и запрещённые товары через ML-модель. Автоматическая модерация снижает нагрузку на операторов до 70%, что экономит до 60% бюджета на модерацию.
Что входит в работу
- Аналитика: аудит конкурентов, прототип, user flow.
- Дизайн: адаптивный UI под ключ, 5 экранов.
- Фронтенд: React/Next.js или Vue/Nuxt (выбор за вами).
- Бэкенд: Laravel или Node.js, админ-панель.
- Модерация: автоматический фильтр + кабинет модератора.
- Монетизация: платёжный шлюз, пакеты продвижения.
- Документация: API (OpenAPI), инструкция администратора.
- Обучение: 2 часа для команды заказчика.
- Гарантия: 6 месяцев бесплатных фиксов багов.
Процесс работы
- Аналитика и прототип (1-2 недели). Определяем MVP, рисуем User Story Mapping.
- Проектирование архитектуры (1 неделя). ER-модель, API-спецификация.
- Реализация (6-20 недель). Итерации по 2 недели, каждый спринт — демо.
- Тестирование (2 недели). Нагрузочные тесты (k6), e2e (Cypress), безопасность.
- Деплой и запуск (1 неделя). CI/CD, мониторинг (Sentry, Grafana).
Сроки ориентировочно
| Этап | Срок |
|---|---|
| MVP (размещение, поиск, фильтры, фото, контакты) | 6-8 недель |
| + мессенджер + геопоиск | +4-6 недель |
| + модерация + монетизация | +4-6 недель |
| Полный функционал с escrow-сделками | 5-6 месяцев |
Стоимость рассчитывается индивидуально после брифинга. Закажите консультацию — мы оценим ваш проект за 1-2 дня.
Безопасность сделок: эскроу-счёт
Для дорогих категорий (авто, техника) внедряем «Безопасную сделку»: покупатель платит на эскроу-счёт платформы, продавец отправляет товар, после подтверждения получения деньги перечисляются. Интеграция с ЮKassa или Stripe; средства хранятся на отдельном счёте, не смешиваясь с оборотами.
Технологии, которые мы используем
PostGIS, Laravel, Vue, Nuxt, Redis, Docker, Nginx, WebSockets. Все версии актуальны на момент разработки.Наши инженеры имеют опыт в классифайдах — 20+ запущенных проектов. Работаем под ключ с гарантией результата. Получите бесплатную консультацию по разработке доски объявлений прямо сейчас.







