# Placeo.ru — доска объявлений, собранная правильно: разбор от разработчика

Я участвовал в разработке Placeo и хочу рассказать о сервисе честно — не языком пресс-релиза, а так, как объясняют коллеге: что внутри, какие решения мы приняли и почему. Если коротко, Placeo — это полнофункциональная доска объявлений в духе привычных площадок, но с упором на три вещи: удобство, безопасность и возможность «забрать» объявления к себе — на свой сайт или в Telegram-группу.

Девиз у проекта простой: **«Покупайте и продавайте что угодно рядом с домом. Доска объявлений для всех.»** Дальше — что за этим стоит.

## Каталог и поиск: найти быстро

В основе — большое дерево категорий: **1133 раздела** (11 корневых, которые ветвятся через подкатегории до более чем тысячи конечных «листьев»). Это не абстрактная цифра ради красоты: структура построена так, чтобы товар попадал в правильное место, а покупатель доходил до нужного раздела за пару кликов.

Что есть для тех, кто ищет:

- **Три режима выдачи** — плиткой, списком и **на карте**. Карта — на Leaflet с тайлами 2ГИС/OpenStreetMap, так что видно, что продаётся рядом.
- **Фильтры по характеристикам и цене.** У каждой категории — свой набор параметров (например, у одежды одни, у авто другие), и по ним можно фильтровать.
- **Полнотекстовый поиск** по заголовку и описанию прямо из шапки.
- **Бесконечная лента** — подгрузка по мере прокрутки, без перезагрузок.

Отдельно — **персонализация**. Для авторизованного пользователя главная превращается в «Рекомендации для вас»: лента мягко поднимает наверх разделы, которые человек чаще всего смотрит. Похожий блок рекомендаций есть и на карточке объявления — рядом с «Другими объявлениями продавца». Это не навязчивый ИИ-подбор, а спокойная подстройка под интересы.

## Города: своё — первым

Один из недавних апгрейдов, которым я доволен, — города. Можно выбрать свой город, и тогда объявления из него идут первыми. Но мы пошли дальше «галочки в фильтре»: у городов есть **собственные адреса страниц** — `placeo.ru/krasnodar`, `placeo.ru/krasnodar/c/transport` и так далее.

Зачем отдельные URL? Две причины. Во-первых, удобство: зашёл на «свой» город — сразу видишь местные предложения. Во-вторых, это полноценные посадочные страницы под запросы вида «{категория} в {городе}» — то, что реально ищут в поиске. Мы сознательно выбрали путь-в-адресе (а не поддомены), чтобы не дробить поисковый авторитет домена, и аккуратно закрыли от индексации «пустые» города, где объявлений ещё мало, — чтобы в выдаче не было мусорных страниц. Это та самая инженерная мелочь, которую пользователь не замечает, но которая определяет, найдут ли площадку.

## Как продавать: минимум трения

Подать объявление должно быть просто — и мы старались убрать всё лишнее:

- **Каскадный выбор категории** — выбираешь раздел по шагам до конкретного «листа».
- **До 30 фотографий.** Каждая автоматически переводится в WebP (полный размер до 1200px + лёгкое превью) — страницы грузятся быстро даже на мобильном.
- **Адрес — точкой на карте.** Указал точку — система сама подставит адрес и определит город (геокодинг через Nominatim). Не нужно вручную выбирать населённый пункт.
- **Характеристики под категорию.** Поля подстраиваются: где-то размер и цвет, где-то год и пробег.
- **Цена** — можно поставить «от» или оставить «Договорная».

После публикации объявление живёт **30 дней**, потом уходит в «Завершённые» — и его можно в один клик активировать ещё на 30 дней. Статусы прозрачны: «Активно», «На модерации», «Завершено», «Заблокировано».

Для продвижения есть **поднятия в топ**. Одно бесплатное поднятие в день — каждому. А больше можно получить по **реферальной программе**: за каждое прошедшее модерацию объявление приглашённого друга вы получаете 5 поднятий (до 50 в день с одного человека), и эти поднятия не сгорают. То есть рост площадки мы поощряем не баннерами, а реальной пользой для активных пользователей.

## Доверие и безопасность: почему по телефону и с ИИ

Здесь — самые принципиальные решения.

**Вход по номеру телефона.** Основной способ авторизации — обратный звонок (flash call): приходит звонок, вы вводите последние цифры номера. Никаких паролей. Это и удобнее (не надо ничего придумывать и запоминать), и безопаснее: подтверждённый номер — это барьер для ботов и фейков. Почту указывать **необязательно** — аккаунт по телефону полностью самодостаточен, а e-mail можно добавить позже, если хочется получать уведомления. Это осознанная позиция: меньше обязательных данных — меньше рисков для пользователя. Также поддерживаются вход через Яндекс и Telegram.

**ИИ-модерация.** Каждое новое объявление (и отредактированное) проверяет ИИ (на базе DeepSeek): нет ли запрещёнки — ссылок, мата, опасных товаров, — и **соответствует ли товар категории**. Условный автомобиль, выложенный в «Недвижимость», будет завёрнут. Модерацию проходят и тексты профиля: имя, компания, описание. При этом система устроена «fail-open» — если внешний сервис недоступен, объявления не застревают, а проходят с пометкой для ручной проверки.

**Честные отзывы.** Оставить отзыв продавцу можно только если с ним была реальная переписка и он ответил. Это простой, но рабочий способ отсечь накрутку. Рейтинг продавца виден на его странице.

**Жалобы.** На любое объявление или продавца можно пожаловаться — администратор мгновенно получает оповещение в Telegram и реагирует.

## Общение без спама

Внутри площадки есть **чат** с продавцами — с плавающей кнопкой, счётчиком непрочитанных и звуковым сигналом о новом сообщении. Можно **подписаться на продавца** и получать его новые объявления — но не потоком, а аккуратным дайджестом раз в пару часов. А если продавец снизил цену на товар, который у вас в избранном, придёт уведомление. Мы намеренно избегаем спама: уведомления должны быть полезными, а не раздражающими.

## Бизнесу: своя доска на сайте и в Telegram

Это то, что отличает Placeo от «просто доски объявлений». Ленту объявлений можно **встроить к себе** — и для этого не нужен программист.

- **Виджет для сайта** — подключается **одним тегом `<script>`**. Это не iframe: виджет аккуратно встраивается в вашу вёрстку, со своей изоляцией стилей (ничего не «течёт» в ваш дизайн и обратно). Настраиваются цвета, скругления, размер плиток, шрифт — под бренд. Можно выбрать, какие категории показывать, включить режим «только мои объявления» и ограничить домены, на которых виджет работает (на чужих сайтах он просто не запустится).
- **Telegram-мини-приложение** — лента и подача объявлений **прямо внутри Telegram-группы**. Закрепляете ссылку в чате — участники смотрят и публикуют, не выходя из мессенджера. Вход — по номеру из Telegram, без паролей.
- **Массовые импорты.** Есть YML-файл (формат Яндекс.Маркета)? Загрузите его или дайте ссылку — площадка сама разложит товары по категориям с помощью ИИ-классификатора и будет ежедневно подтягивать актуальные цены и фото.

Формулировка с лендинга точно описывает суть: **«Своя доска объявлений на сайте и в Telegram… за пару минут — без программиста.»**

## Под капотом — коротко о технологиях

Раз уж это взгляд разработчика, пара слов о фундаменте — он объясняет, почему сервис быстрый и надёжный:

- **Laravel 13 / PHP 8.3** — современный, поддерживаемый стек.
- **PWA** — Placeo можно установить как приложение на телефон прямо из браузера.
- **Лёгкий фронтенд** (Alpine.js + Tailwind) — без тяжёлых SPA-фреймворков, страницы открываются быстро.
- **Карты на OpenStreetMap/2ГИС** — без зависимости от Google.
- **Фоновые очереди** — модерация, обработка фото и импорты идут асинхронно, не тормозя интерфейс.
- **Приватность по умолчанию** — вход по телефону, минимум обязательных данных, карты без сторонних трекеров.

## Кому это подходит

- **Частному продавцу** — выложить вещь за минуту, бесплатно поднять её в топ, общаться в чате.
- **Магазину или мастеру** — импортировать каталог из YML и встроить ленту на свой сайт.
- **Сообществу или Telegram-группе** — запустить доску объявлений прямо в чате.

Placeo задумывался как площадка, которой удобно пользоваться и на которой спокойно — за счёт телефонной авторизации, ИИ-модерации и честных отзывов. А встраиваемый виджет и Telegram-приложения превращают её ещё и в инструмент для бизнеса.

**Попробуйте сами:** зайдите на [placeo.ru](https://placeo.ru), подайте первое объявление бесплатно — или за пару минут создайте свой виджет и подключите ленту объявлений к своему сайту или сообществу.
