Кладовкин
Услуги
Россия
iOS, Android
Март 2026
Проект «Кладовкин» — это сервис для аренды кладовок, ориентированный на пользователей, которым важно быстро найти и арендовать безопасное место для хранения вещей без лишней бюрократии. Основная аудитория — частные лица и бизнес, которым требуется гибкое и удобное решение для хранения.
Изначально клиент обратился с задачей переписать существующее мобильное приложение, сделать его более удобным, стабильным и масштабируемым. В процессе разработки требования расширялись — продукт готовится к дальнейшему развитию и выходу на новые рынки.
Ключевые функции продукта:
- поиск и аренда складских помещений
- интерактивная карта с фильтрацией
- управление доступом к кладовкам
- оплата аренды
- регистрация и авторизация пользователей
Мы разработали кроссплатформенное мобильное приложение с фокусом на пользовательский опыт. Часть решений принималась уже в ходе разработки — на основе тестирования гипотез и анализа пользовательского пути. Такой подход позволил повысить качество продукта еще до выхода в релиз.
Поскольку серверная часть разрабатывается командой заказчика, нам важно было выстроить стабильную модель взаимодействия и синхронизации. Мы адаптировали план работ, перераспределили приоритеты и обеспечили гибкую интеграцию с изменяющимися API, что позволило сохранить управляемость проекта и прозрачность сроков.
За мобильную часть (frontend) полностью отвечает наша команда. Мы выстроили архитектуру приложения таким образом, чтобы минимизировать зависимость от нестабильных изменений и обеспечить масштабируемость продукта в будущем.
В качестве технологической основы выбран React Native. Это стратегическое решение позволило разрабатывать единый код для iOS и Android без создания двух отдельных команд и параллельных версий приложения.
Кроме того, в основе продукта — безключевой доступ к кладовке через мобильное приложение. Пользователь фактически открывает свой замок со смартфона, без физических ключей, дубликатов и передачи доступа «из рук в руки». Это ключевая технологическая особенность проекта и одно из его конкурентных преимуществ.
В процессе разработки мы не просто реализовывали изначальное ТЗ, а улучшали пользовательские сценарии с точки зрения удобства и конверсии. Например, разработали новый функционал: процесс оформления гостевого доступа — добавлена дополнительная защита входа по коду и логика ограничения по времени.
Дополнительно была кастомизирована работа карты: реализовано корректное масштабирование, динамическая фильтрация и управление отображением объектов. Это усилило ключевой пользовательский сценарий — поиск и выбор кладовки через карту.
Клиент положительно оценивает ход разработки, прозрачность процессов и вовлеченность команды в решение как технических, так и продуктовых задач.
Целевая аудитория и роли:
- Продукт проектировался с учетом нескольких категорий пользователей и ролей:
- Физические лица — быстрый поиск и аренда кладовок для личных нужд.
- Юридические лица — аренда складских помещений для бизнеса с оплатой по счету и договорными данными.
- Неавторизованные пользователи — просмотр каталога и складов с последующей авторизацией для оформления аренды.
- Авторизованные пользователи — стандартные и расширенные (ФЛ/ЮЛ) с полным доступом к функционалу.
- Сотрудники сервиса (сервисный контур) — управление объектами, пользователями и доступами.
Реализована гибкая система регистрации и авторизации: вход по email и паролю, а также по номеру телефона с СМС-подтверждением. Пользователь может восстановить пароль, редактировать персональные данные, удалить аккаунт с отложенным выполнением (14 дней) и управлять типом учетной записи.
Тип пользователя (ФЛ или ЮЛ) определяется на основе введенных данных и проверки администратором. После верификации пользователю открывается расширенный функционал.
Поиск реализован в виде списка и интерактивной карты с интеграцией Яндекс.Карт (с учетом перспективы использования Google Maps). Доступны фильтры по городу, метро, размерам, категориям и особенностям складов.
Карточка склада включает фотографии, 3D-тур, контакты, информацию о доступности, погоде, а также быстрый подбор кладовок по параметрам.
Пользователь видит все ключевые характеристики кладовки: габариты, этаж, условия доступа, ограничения по хранению. Процесс аренды включает выбор тарифа, дополнительных опций, применение промокодов и детальную разбивку стоимости.
Поддерживается оплата картой (с токенизацией и автосписаниями), через СБП или по счету. Для первой аренды предусмотрено заполнение данных для договора и загрузка документов с последующей ручной проверкой администратором.
В системе реализовано несколько сценариев доступа:
Bluetooth (BLE) для открытия замка в непосредственной близости;
удаленное открытие через сеть;
временные и постоянные PIN-коды;
поддержка механических замков как переходного решения.
При этом стратегический вектор развития — переход от устаревающих механических решений к цифровым замкам с BLE-модулем.
BLE-доступ позволяет открывать кладовку даже при нестабильном интернете, обеспечивает быстрое соединение и сниженное энергопотребление. Все операции проходят через защищенный контур авторизации: доступ привязан к аккаунту владельца, права могут гибко делегироваться (например, для гостевого доступа), каждое действие фиксируется в логах. По сути, мобильное приложение становится персональным цифровым ключом, который невозможно физически скопировать.
Мои кладовки, биллинг и документы
Раздел «Мои кладовки» включает активные и архивные аренды. Для каждой кладовки доступны управление, журнал событий и счета. Пользователь видит историю открытий, статусы платежей, может оплачивать счета, скачивать документы и управлять договором.
Реализованы автоплатежи, уведомления о задолженностях и правила блокировки доступа при просрочке.
Гостевой и совместный доступ
Приложение поддерживает гостевой доступ с ограниченным временем действия и совместное использование кладовки. Приглашенные пользователи получают доступ по номеру телефона без сложных сценариев настройки.
Документы, поддержка и интеграции
Пользователям доступен просмотр и скачивание договоров и счетов, а также раздел поддержки с контактами, формой обратной связи и FAQ. Реализованы интеграции с Dadata для автозаполнения юридических данных и геосервисами для навигации.
Проект оказался технически насыщенным и требовал от команды не просто реализации функционала, а выстраивания устойчивой архитектуры в условиях ограничений, сторонних зависимостей и высокой бизнес-ответственности. Ниже — ключевые вызовы и наш подход к их решению.
React Native как единая технологическая база
Для реализации кроссплатформенной стратегии была выбрана технология React Native. Несмотря на зрелость фреймворка, проект потребовал глубокой проработки архитектуры, так как приложение включает работу с BLE, push-уведомлениями, картами, биллингом и сложной навигацией.
Мы выстроили внутренние стандарты разработки, унифицировали подходы к управлению состоянием, навигации и работе с нативными модулями. Это позволило:
сократить расхождения в поведении Android и iOS;
обеспечить масштабируемость кода;
снизить риски при дальнейшем развитии продукта.
В результате React Native стал не компромиссом, а инструментом ускоренного масштабирования бизнеса клиента.
Интеграция Яндекс.Карт в React Native
Карта — ключевой элемент пользовательского сценария (поиск, фильтрация, выбор объекта). При этом у Яндекс.Карт нет официальной стабильной библиотеки для React Native, поэтому использовалась сторонняя open-source обёртка.
Мы провели аудит доступных решений, обновили устаревшие зависимости и адаптировали библиотеку под текущую версию React Native. Дополнительно доработали интеграционный слой между нативным SDK Яндекс.Карт и кроссплатформенной частью приложения, стабилизировали работу фильтров, динамическое обновление объектов и обработку состояний загрузки.
На этапе тестирования iOS-версии выявилась проблема: при первом запуске карта отображалась серым экраном до перезапуска приложения. Причина оказалась в последовательности инициализации SDK и монтирования экранов.
Мы пересобрали жизненный цикл и порядок инициализации карты, синхронизировали загрузку нативного модуля и устранили конфликт рендера. В результате карта корректно отображается с первого запуска и работает стабильно.
Таким образом, нам удалось сохранить ключевую бизнес-функцию без перехода на полностью нативную разработку и обеспечить устойчивую основу для дальнейшего масштабирования продукта.
Кроссплатформенная разработка
Выбор React Native позволил использовать единую кодовую базу для iOS и Android, однако на практике сложные приложения с нативными модулями требуют глубокой платформенной экспертизы.
Проект включал BLE-интеграции, карты, push-уведомления, биллинг и кастомные UI-компоненты — что автоматически повышает требования к сборке и работе с нативным окружением. В iOS-части нам пришлось детально настраивать и устранять конфликты зависимостей и добиваться стабильной воспроизводимой сборки.
Дополнительную сложность создали различия в поведении UI-компонентов на платформах. Например, Bottom Sheet (шторка фильтров) потребовала отдельной доработки логики анимаций, скролла и ограничений высоты для Android и iOS. Мы реализовали платформо-специфичную логику там, где это критично, сохранив при этом единую архитектуру и чистоту кодовой базы.
Кроссплатформа — инженерная работа по синхронизации двух разных нативных экосистем. Именно наличие сильной мобильной экспертизы позволяет запускать сложные high-tech продукты на обеих платформах без потери качества и управляемости проекта.
- Технологическое обновление продукта
- Единая кодовая база для iOS и Android за счет кроссплатформенного решения
- Повышение удобства пользовательских сценариев
- Подготовка архитектуры к масштабированию и мультиязычности
- Вывод на международные рынки