Загружаем страницу…
От идеи до инфраструктуры
+7(965) 120-90-86

Разработка и техническое сопровождение UGC-платформы

Storymaze — сервис интерактивных историй с альтернативными концовками, где авторы создают нелинейные нарративы, а читатели сами выбирают развитие сюжета.

storymaze.ru
2-in-1

веб-платформа и мобильное приложение в рамках одного проекта

  • Разработка
  • iOS
  • Android

Разработка и техническое сопровождение -платформы Storymaze для создания нелинейных интерактивных историй с ветвящимся сюжетом и альтернативными концовками. Авторы выстраивают повествование через визуальный редактор, читатели — сами определяют развитие событий в точках выбора. Параллельно разработано мобильное приложение для iOS и Android с офлайн-режимом и -уведомлениями о новых главах. Техническое сопровождение включает мониторинг нагрузки, релизный цикл и модерацию контента.

Архитектура платформы и API

В основе Storymaze была построена единая -архитектура, объединяющая веб-платформу и мобильное приложение.

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

Отдельный обеспечил единую точку взаимодействия для web и mobile:

  • Поиск и выдача историй;
  • Профили пользователей;
  • Подписки и подписчики;
  • Ленты активности;
  • Комментарии;
  • Рекомендации;
  • Работа с публикациями.

Такой подход позволил развивать веб- и мобильную версии продукта параллельно, не дублируя бизнес-логику.

Архитектура платформы и API

Визуальный редактор и нелинейные истории

Ключевой задачей платформы стала возможность создавать истории с ветвящимся сюжетом, где читатель сам определяет дальнейшее развитие событий.

Автор формирует структуру Storymaze через визуальный редактор, связывая отдельные эпизоды и варианты развития сюжета.

Один сюжет → несколько вариантов выбора → разные ветки → альтернативные продолжения и концовки.

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

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

Визуальный редактор и нелинейные истории

Социальная платформа вокруг контента

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

Пользователи получили возможность:

  • Создавать собственные истории;
  • Подписываться друг на друга;
  • Просматривать профили и публикации авторов;
  • Ставить лайки;
  • Делать репосты;
  • Оставлять комментарии и отвечать на них;
  • Просматривать ленты активности.

Отдельно была реализована логика «Новое», «Популярное» и «Рекомендуемое», которая помогала пользователю находить новый контент.

Таким образом, Storymaze объединял сразу несколько моделей взаимодействия: создание → публикация → чтение → реакция → распространение.

Социальная платформа вокруг контента

Поиск, рекомендации и механика «Популярного»

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

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

Были реализованы отдельные сценарии:

Новое — последние опубликованные истории.

Популярное — контент, который получает наибольшую пользовательскую активность.

Рекомендуемое — дополнительная выдача историй без повторного показа уже загруженных элементов.

Отдельной механикой стала «Мешалка» — случайное перемешивание историй в основных разделах.

Для расчёта популярности использовался : в рейтинге учитывались просмотры, лайки, репосты и активность за определённый период. Это позволило снизить нагрузку на основную базу данных.

Поиск, рекомендации и механика «Популярного»

Мобильное приложение iOS и Android

Параллельно с веб-платформой на фрейворке было разработано мобильное приложение Storymaze для iOS и Android, работающее с тем же .

Общая API-архитектура позволила синхронизировать основные возможности платформы:

  • Авторизацию;
  • Профили;
  • Истории и эпизоды;
  • Подписки;
  • Социальные взаимодействия;
  • Комментарии;
  • Рекомендации;
  • Уведомления о новом контенте.

Для мобильного сценария была также реализована поддержка offline-режима, а -уведомления позволили возвращать пользователей к новым главам и обновлениям интересующих их историй.

Дополнительно прорабатывалась работа ссылок, открывающих нужный контент непосредственно в мобильном приложении.

Мобильное приложение iOS и AndroidКонцепция интерфейса

Производительность и техническое сопровождение

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

Один из ключевых сценариев — формирование раздела «Популярное» — создавал значительную нагрузку при работе непосредственно с основной базой данных.

Для решения задачи часть логики была перенесена на , что позволило обрабатывать часто изменяющиеся показатели отдельно от основной -базы.

Техническое сопровождение проекта включало:

  • Мониторинг нагрузки;
  • Работу с и development-окружениями;
  • Оптимизацию и запросов;
  • Релизный цикл;
  • Работу с и Bitbucket;
  • Исправление и развитие функциональности;
  • Модерацию пользовательского контента.

Таким образом, команда занималась не только разработкой новых функций, но и стабильностью платформы после запуска.

Производительность и техническое сопровождение

Итоги

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

Storymaze объединил в одном продукте:

визуальное создание историй → ветвящийся сюжет → социальное взаимодействие → рекомендации → веб-платформу → мобильное приложение.

Со стороны технологий проект включал /, , , , , , /Bitbucket и DigitalOcean.

Особенность проекта — необходимость одновременно решать задачи контентной платформы, социальной сети и интерактивного движка, сохраняя единую архитектуру для web и mobile.

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

Расскажите, что Вам нужно

Предпочтительный канал связи