Услуги Портфолио О компании Контакты БлогНовости +7 (800) 511‑32‑27 Обсудить проект
Social · iOS + Android + веб

Социальная сеть с поиском по радару: кейс

JoyJet — социальная сеть с уникальной функцией «поиск по радару»: пользователь находит людей рядом в радиусе от 50 метров до 11 000 километров. Продукт объединяет привычные механики соцсетей — ленту по интересам, визуальный постинг, лайки и комментарии — с геопоиском на карте. Стек: PHP Symfony, React, Kotlin, Swift.

Поиск людей по радаруНативные iOS и AndroidЛента по интересамЕдиный REST API4 языка интерфейса152-ФЗ · локализация ПДн в РФ
JoyJet — обложка кейса
JoyJetСоциальные сети
Клиент
IT-компания
Отрасль
Социальные сети
Платформы
iOS · Android · Web
Срок
SCRUM · итерациями

О продукте

Коротко — что это за продукт и для кого мы его делали.

JoyJet — это социальная сеть, где привычные механики (профиль, лента, посты, лайки и комментарии) дополнены главной фишкой: поиском пользователей по радару. Человек задаёт радиус — от 50 метров до 11 000 километров — и видит на карте участников, которые находятся в этом диапазоне, чтобы находить единомышленников и встречать новых людей по географической близости.

Мы разработали единый продукт на четыре платформы: нативные приложения для iOS и Android, веб-клиент и общий бэкенд, синхронизированные через REST API. Интерфейс переведён на четыре языка — русский, английский, испанский и китайский.

Задача

Заказчик — IT-компания — задумал новую социальную сеть, объединяющую стандартные функции популярных платформ с уникальной возможностью поиска пользователей по радару. Требовалось приложение, которое позволит делиться контентом, находить единомышленников и встречать новых людей на основе географической близости.

Основные сложности: постоянно меняющиеся требования заказчика и многочисленные правки на этапах дизайна и аналитики, необходимость обеспечить высокую производительность геопоиска, а также соответствие российскому законодательству о защите данных (152-ФЗ).

Особенности проекта

Геопоиск в основе продукта — «поиск по радару» отличает JoyJet от других соцсетей и задаёт требования к производительности и UX карты.

Четыре платформы вокруг одного API — нативные iOS и Android, веб-клиент и единый бэкенд синхронизированы через REST API.

Лента по интересам — пользователь видит только те посты и профили, которые соответствуют выбранным при регистрации категориям.

Визуальный контент — постинг ориентирован исключительно на фото и видео с описанием, лайками и комментариями.

Решение и подход

Как мы собрали продукт — от архитектуры до процесса.

Для управления проектом с постоянно меняющимися требованиями команда применила методологию SCRUM: работа шла итерациями, чтобы гибко отрабатывать многочисленные правки на этапах дизайна и аналитики. Процесс прошёл полный цикл — бизнес-анализ, Discovery, аналитику и дизайн, разработку, тестирование и поддержку.

Архитектурно мы сделали ставку на нативные приложения и единый бэкенд. Геопоиск — вычислительно и UX сложная задача: запрос должен отработать быстро, а карта — реагировать плавно. Нативные iOS и Android дают прямой доступ к системным GPS API без браузерных ограничений точности, PHP Symfony централизует геоданные и логику радара, React обеспечивает отзывчивый веб-интерфейс. Кросс-платформенные альтернативы (Flutter, React Native) отклонили из-за ограничений доступа к нативным геолокационным API.

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

Инструменты подобраны под задачу продукта.

Почему нативные приложения + единый бэкенд для геопоиска

Геопоиск — вычислительно и UX сложная задача: запрос должен отработать быстро, карта должна реагировать плавно, платформа должна работать без дополнительных задержек. Нативные приложения на Kotlin и Swift дают прямой доступ к геолокации через системные API, без браузерных ограничений точности.

Бэкенд на PHP Symfony централизует геоданные и логику радара; фронтенд на React обеспечивает отзывчивый веб-интерфейс без перезагрузок. Мобильные клиенты на Kotlin и Swift обращаются к одному REST API; альтернатива — кросс-платформенный Flutter/RN — отклонена из-за ограничений нативных гео API и требований по плавности карты.

Функции продукта

Ключевые возможности, которые закрыли задачу бизнеса.

1

Регистрация и профиль

Регистрация по email или номеру телефона; анкета — имя, пол, дата рождения, страна, город, сфера деятельности, аватар и семейное положение.

2

Категории интересов

При первом входе пользователь выбирает категории (еда, путешествия, юмор, кино и др.), которые фильтруют контент.

3

Лента постов

Пользователь видит только те посты и профили, которые соответствуют выбранным категориям интересов.

4

Визуальный постинг

Публикация фото или видео с описанием и выбором категорий; поддерживаются лайки и комментарии.

5

Поиск по радару

Радиус от 50 метров до 11 000 километров: после настройки фильтра появляется список участников в заданном диапазоне на карте.

6

Мессенджер

Личная переписка между пользователями с закреплёнными сообщениями и статусом «онлайн».

Как это работает

Ключевые экраны продукта — по шагам.

Приложение пользователя

Приложение пользователя

Нативное приложение объединяет три ключевых сценария: ленту публикаций, профиль пользователя и личную переписку. В ленте — визуальный контент с лайками и счётчиками, профиль показывает аватар, город и статистику Followers / Following / Posts.

Мессенджер поддерживает закреплённые сообщения, статус «онлайн» и обмен фото — общение встроено прямо в соцсеть, а не вынесено в отдельный продукт.

Процесс разработки по SCRUM

Процесс разработки по SCRUM

Проект прошёл полный цикл из шести этапов: бизнес-анализ, Discovery, аналитика и дизайн, разработка, тестирование и поддержка.

Такой формат позволил гибко отрабатывать постоянно меняющиеся требования заказчика и многочисленные правки на этапах дизайна и аналитики — работа шла итерациями, а не одним большим релизом.

Онбординг и регистрация

Онбординг и регистрация

Знакомство с приложением построено как пошаговый онбординг: экраны «People near you» и «Communicate» объясняют суть радара и общения, а регистрация проходит по email или номеру телефона с выбором никнейма и пароля.

Далее пользователь заполняет анкету профиля (Step 1 of 3): имя, дата рождения, пол, семейное положение — и загружает аватар с кадрированием фото.

Выбор категорий интересов

Выбор категорий интересов

На экране «What are you interesting in?» пользователь отмечает интересующие категории — Саморазвитие, Культура, Кино, Работа и десятки других; выбранные подсвечиваются оранжевым.

Этот выбор — ядро персонализации: именно по нему дальше фильтруется лента, поэтому шаг вынесен в отдельный крупный экран с поиском по интересам.

Лента и умные фильтры

Лента и умные фильтры

Лента «What's new» показывает визуальные посты по интересам, а панель «Filters» позволяет донастроить выдачу по ключевым словам и joytags, типу постов, языкам, стране происхождения и интересам.

Отдельная публикация раскрывается на весь экран с геометкой автора (например, New York), лайками и комментариями — контент остаётся визуальным в центре внимания.

Визуальная лента и рекомендации

Визуальная лента и рекомендации

Контент собран в плиточную галерею фото и видео с длительностью роликов — от путешествий и еды до VR и природы, что задаёт визуальный тон всей сети.

В ленте Feed работают рекомендательные блоки «You may know them» и «You may like: Skiing» — сеть подсказывает людей и темы, опираясь на выбранные интересы и активность.

Персональные данные и 152-ФЗ

Геолокация и данные профиля классифицируются как персональные данные, поэтому архитектура предусматривает защищённые каналы передачи, локальное хранение и доступ только для авторизованных пользователей.

Продукт соответствует 152-ФЗ: локализация персональных данных на территории РФ, статус оператора ПДн в реестре РКН и внедрение стандарта ИСО 27001.

В цифрах

2
нативных приложения (iOS + Android)
4
языка интерфейса
11 000
км максимальный радиус радара
1
единый REST API для всех клиентов
  • 2 нативных приложения: Kotlin (для Android) и Swift (для iOS) — единый PHP Symfony/React бэкенд.
  • 4 языка интерфейса: русский, английский, испанский, китайский.
  • Радар поиска: от 50 метров до 11 000 километров — пользователь видит участников на карте.
  • Лента по категориям интересов: пользователь видит релевантные посты и профили.
  • Визуальный постинг с лайками и комментариями, анкета-фильтры.
  • Веб-версия на React синхронизирована с мобильными приложениями через единый бэкенд.

Архитектура и персональные данные

Геолокация пользователя и данные профиля являются персональными данными. Контур приватности заложен в архитектуру: данные принимаются по защищённому каналу, хранятся локализованно, радиус поиска доступен только авторизованным пользователям.

Соответствие: 152-ФЗ, оператор ПДн в реестре РКН, ИСО 27001 (внедрение), локализация персональных данных. Требования опираются на 152-ФЗ; статус оператора проверяется в реестре операторов ПДн РКН.

Часто задаваемые вопросы

Что умеет социальная сеть с поиском по радару?
Регистрацию и анкету, ленту по выбранным интересам, визуальный постинг с лайками и комментариями и поиск участников поблизости через радар.
Как работает поиск по радару?
Пользователь задаёт радиус от 50 метров до 11 тысяч километров и видит список участников в этом диапазоне на карте.
На каких платформах доступна сеть?
Нативно на iOS и Android, плюс веб-версия; интерфейс доступен на четырёх языках.
Как формируется лента контента?
Лента строится по выбранным при старте категориям интересов, поэтому пользователь видит только релевантные посты и профили.
Как защищены данные пользователей?
Геолокация и данные профиля относятся к персональным данным и обрабатываются по требованиям 152-ФЗ с локализацией.

Наши клиенты

Компании из ритейла, медтеха, логистики и электронной коммерции, которым мы помогли с цифровыми продуктами.

SuperStep
Юнилаб
Plonq
Галамарт
Гром
move2Armenia
Мосокна
Вилка Ложка
Конга
xRouten
AIS

Услуги веб-студии YuSMP Group

Полный спектр разработки — от нативных мобильных приложений до веб-платформ, дизайна и IT-аудита. Выберите направление или закажите проект под ключ.

Мобильная разработка

Нативные и кросс-платформенные приложения для iOS и Android под задачу и бюджет.

Подробнее →

Разработка мобильных приложений под iOS

Нативные приложения для iPhone и iPad на Swift и SwiftUI.

Подробнее →

Разработка мобильных приложений под Android

Приложения для Android на Kotlin и Jetpack Compose.

Подробнее →

Кроссплатформенный подход

Одно приложение сразу на iOS и Android на Flutter.

Подробнее →

Веб - разработка

SPA, порталы и веб-платформы на React / Next.js и Node.

Подробнее →

Backend-разработка

Серверная часть, API, базы данных и интеграции на Node.js, PHP и Python.

Подробнее →

Разработка под ключ

Продукт под ключ: аналитика, дизайн, разработка и запуск.

Подробнее →

MVP

Быстрый запуск ядра продукта, чтобы проверить гипотезу без лишних затрат.

Подробнее →

Тестирование

Ручное и автоматизированное тестирование — стабильный релиз на всех устройствах.

Подробнее →

UI/UX-дизайн

Исследование, прототип и дизайн-система — интерфейсы, которыми удобно пользоваться.

Подробнее →

Прототипирование

Кликабельный прототип для проверки идеи до разработки.

Подробнее →

Создание сайтов

Корпоративные сайты, лендинги и интернет-магазины под ключ.

Подробнее →

IT - аудит

Аудит ИТ-инфраструктуры, кода и безопасности.

Подробнее →

SEO‑продвижение

Вывод сайта в топ Яндекса и Google — трафик и заявки из поиска.

Подробнее →

Контекстная реклама

Яндекс Директ — заявки с первого дня и контроль цены лида.

Подробнее →

SMM‑продвижение

Соцсети и таргет — узнаваемость бренда, комьюнити и заявки.

Подробнее →

Обсудим ваш проект?

Расскажите задачу — за 1–2 дня вернёмся с оценкой сроков, бюджета и составом команды.

Телефон
Звонок бесплатный
Telegram
Бесплатный аудит и оценка проекта — вернёмся с планом за 1–2 дня.

Обсудить проект

Расскажите задачу — за 1–2 дня вернёмся с оценкой сроков, бюджета и составом команды.