Проекты

Telegram MiniApp «Relocant»

Telegram
MiniApp
Aiogram
Django
Nuxt3

Рассказываем о Telegram MiniApp «Relocant», который реализован на основе системы «умных форм». Эту систему легко адаптировать под самые разные бизнес-идеи: от знакомств до поиска товаров и услуг.

Пример интерфейса Telegram MiniApp

Краткое описание

Relocant — это Telegram MiniApp (бот-приложение), созданное для упрощения процессов, связанных с поиском и фильтрацией информации. В её основе лежит модуль «умных форм», которые можно адаптировать под множество сценариев:

  • Знакомства: сервис для поиска людей с общими интересами и быстрой организацией встреч.
  • Поиск специалистов: планируется, например, для HR-агентств или фриланс-сервисов с удобной фильтрацией кандидатов.
  • Барахолка: планируется интерактивная доска объявлений, где легко находить нужные товары или услуги.

Главная особенность «Relocant» — гибкость конфигурации форм и логики, без необходимости каждый раз «изобретать велосипед». Это значит, что вы один раз настраиваете поля, логику переходов и отображение, а затем переносите всю эту логику в Telegram. Пользователю достаточно открыть бота и заполнить несколько шагов, чтобы получить нужный результат.


Кейс

Проблема

Пользователи и администраторы искали инструмент, который бы:

  • Поддерживал переезд в другую страну с поиском необходимых товаров, услуг и новых знакомств.
  • Обеспечивал возможность администратору гибко настраивать сервисы без необходимости писать код.
  • Предлагал взаимодействие с Telegram, избегая необходимости установки дополнительных приложений.
  • Позволял создавать подприложения с уникальными сценариями в сжатые сроки.

Решение

Мы разработали платформу, в основе которой лежит:

  • Модуль гибкого конструктора: администратор может за час настроить уникальное подприложение для любых задач.
  • Интеграция с Telegram: бот предоставляет интуитивный интерфейс для пользователей, доступный в любом месте и на любом устройстве.
  • Умные формы: настройка полей, логики переходов и фильтрации без изменения кода.

Процесс

  1. Отсутствие готового ТЗ: Мы самостоятельно проработали архитектуру и схему взаимодействия бота с пользователями.
  2. Идея конструктора приложений: В основе системы лежит гибкий подход к созданию компонентов, который позволяет администратору настроить сервис под любые задачи.
  3. Верстка и дизайн: Несмотря на отсутствие дизайнера, система гибких компонентов была успешно реализована и визуализирована.
  4. Тестирование: Провели тестирование на аудитории, чтобы выявить узкие места и улучшить взаимодействие.

Результаты

  • Проект успешно прошёл этап тестирования и готовится к расширению с добавлением новых подприложений.
  • Пользователи отмечают удобство взаимодействия через Telegram.
  • В ближайшем будущем планируется расширение сценариев,.

Основные возможности

Для пользователей:

  1. Умные формы (Smart Forms):
    • Настройка полей и шагов заполнения без изменения кода.
    • Возможность объединять формы в мультиформу, чтобы избежать дублирования данных.
    • Простая и понятная система валидации для корректного заполнения данных.
  2. Интеграция с Telegram:
    • Удобный доступ через Telegram-бота без необходимости установки дополнительных приложений.
    • Интерактивные кнопки и меню для упрощения взаимодействия.
    • Уведомления о статусах заявок, новых совпадениях и действиях.
  3. Гибкость для создания сервисов:
    • На основе системы можно реализовать почти любой сервис для работы с формами и поиска по ним.
    • Примеры: сервисы знакомств, барахолка, поиск специалистов.
    • Все настройки осуществляются через админ-панель без необходимости изменения кода.

Для администраторов:

  1. Гибкая настройка логики:
    • Настройка порядка вопросов, валидации и отображения данных в админ-панели.
    • Создание новых сценариев и приложений через конфигурацию, без вмешательства в код.
  2. Система триггеров и наград:
    • Возможность задавать действия, которые вызывают определенные реакции, например, отправку уведомлений или начисление наград.
    • Помогает точнее контролировать процессы в созданном администратором приложении.
  3. Масштабируемость системы:
    • Лёгкое добавление новых сценариев и адаптация системы под растущие потребности бизнеса.

Особенности

«Умные формы» (Smart Forms)

Основные возможности Relocant

  • Настройка логики форм в админ-панели: порядок вопросов, обязательные поля, формат данных.
  • Возможность объединять формы в мультиформу, чтобы избежать повторного ввода данных.
  • Автоматическая валидация: проверка номеров телефонов, загрузка изображений и другие специфические проверки.

Интеграция с Telegram

Интеграция с Telegram

  • Поддержка Telegram-бота с интерактивными элементами: кнопки, меню, уведомления.
  • Мгновенные уведомления администраторам и пользователям о заявках и изменениях.
  • Простая навигация и доступ без необходимости в отдельных приложениях.

Гибкость в создании приложений

  • Система позволяет реализовать практически любой сервис, связанный с заполнением форм и поиском.
  • Примеры готовых сценариев:
    • Знакомства: находите людей по интересам и геолокации.
    • Барахолка: публикуйте объявления, сортируйте и находите сделки.
    • Поиск специалистов: формируйте заявки и получайте отклики от подходящих кандидатов.
  • Новые сервисы можно создать через настройки в админ-панели без изменения кода.

Система триггеров и наград

Масштабируемость Relocant

  • Гибкая настройка триггеров для выполнения определённых действий.
  • Примеры:
    • Начисление наград за заполнение форм или успешные сделки.
    • Уведомления пользователям о новых заявках, совпадениях или действиях.
  • Позволяет точно контролировать процессы, улучшая взаимодействие между пользователями.

Масштабируемость и адаптация

  1. Гибкость настроек:
    • Настройка логики один раз с возможностью многократного использования.
    • Быстрое добавление новых сценариев и сервисов.
  2. Масштабируемость:
    • Легкость в адаптации к растущей аудитории и увеличению нагрузки.
      """

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

Заголовок для изображения

  • Поставленная задача: создать платформу, которая позволяет администратору через интерфейс формировать сервисы с умными формами и гибкими сценариями, без вмешательства в код.
  • Дизайн: на данный момент отсутствует, но планируется дальнейшая работа над визуальной концепцией.
  • Проект был разбит на итерации и предварительно оценён.
  • Использовали Miro для визуализации архитектуры приложения и планирования этапов разработки.
  • Управление задачами осуществлялось через Todoist, где задачи разбивались на группы, расставлялись приоритеты и дедлайны.
  • Контроль времени и прогресса велся с помощью Tracking Time.
  • Разработали CI/CD пайплайн, включающий:
    • Автоматическое тестирование и сборку Docker-образов.
    • Выкатывание обновлений через Docker Compose.
  • Регулярные видеозвонки с заказчиком позволяли оперативно обсуждать задачи и внедрять улучшения.
  • Гибкость в выборе технологий и подходов, исходя из потребностей проекта.

Фронтенд

Мы использовали Nuxt3 для разработки интерфейса. Основные преимущества:

  • Быстрая интеграция с серверной частью.
  • Высокая производительность и удобство разработки.

Бэкенд

  • Django: отвечает за обработку данных, управление бизнес-логикой и маршруты.
  • PostgreSQL: используется для долговременного хранения данных о пользователях, заявках и аналитике.
  • Redis: применяется для кэширования данных и управления очередями уведомлений.

CI/CD и мониторинг

  • CI/CD: настроен процесс непрерывной интеграции и доставки обновлений, что ускоряет развертывание изменений.
  • Мониторинг и логирование: система собирает метрики работы сервиса и уведомляет о сбоях.

Для обеспечения стабильной работы и удобного внедрения изменений мы используем поэтапный деплой:

  1. Dev-сервер: тестирование новых функций и исправлений.
  2. Продакшен: переход к продакшен-окружению только после успешного прохождения тестов.
  3. Мониторинг: сбор логов и метрик для отслеживания работы системы под реальной нагрузкой и оперативного устранения проблем.

Хотите разработкть свой Telegram MiniApp?
Напишите нам в Telegram: t.me/SerjioSA, и мы расскажем, как мы можем вам помочь!