Разработка и техническое сопровождение UGC-платформы
Storymaze — сервис интерактивных историй с альтернативными концовками, где авторы создают нелинейные нарративы, а читатели сами выбирают развитие сюжета.
storymaze.ruвеб-платформа и мобильное приложение в рамках одного проекта
Разработка и техническое сопровождение -платформы Storymaze для создания нелинейных интерактивных историй с ветвящимся сюжетом и альтернативными концовками. Авторы выстраивают повествование через визуальный редактор, читатели — сами определяют развитие событий в точках выбора. Параллельно разработано мобильное приложение для iOS и Android с офлайн-режимом и -уведомлениями о новых главах. Техническое сопровождение включает мониторинг нагрузки, релизный цикл и модерацию контента.
Архитектура платформы и API
В основе Storymaze была построена единая -архитектура, объединяющая веб-платформу и мобильное приложение.
+ отвечали за серверную логику и , — за основное хранение данных, а использовался для высоконагруженных сценариев и формирования рейтинга популярности.
Отдельный обеспечил единую точку взаимодействия для web и mobile:
- Поиск и выдача историй;
- Профили пользователей;
- Подписки и подписчики;
- Ленты активности;
- Комментарии;
- Рекомендации;
- Работа с публикациями.
Такой подход позволил развивать веб- и мобильную версии продукта параллельно, не дублируя бизнес-логику.
Визуальный редактор и нелинейные истории
Ключевой задачей платформы стала возможность создавать истории с ветвящимся сюжетом, где читатель сам определяет дальнейшее развитие событий.
Автор формирует структуру Storymaze через визуальный редактор, связывая отдельные эпизоды и варианты развития сюжета.
Один сюжет → несколько вариантов выбора → разные ветки → альтернативные продолжения и концовки.
При этом система должна была корректно работать не только с отображением контента, но и с логикой связанных эпизодов, публикацией и доступностью отдельных частей истории.
В результате Storymaze превратился из обычной библиотеки текстового контента в инструмент создания интерактивных историй.
Социальная платформа вокруг контента
Чтобы истории не оставались изолированными публикациями, вокруг них была создана полноценная социальная механика.
Пользователи получили возможность:
- Создавать собственные истории;
- Подписываться друг на друга;
- Просматривать профили и публикации авторов;
- Ставить лайки;
- Делать репосты;
- Оставлять комментарии и отвечать на них;
- Просматривать ленты активности.
Отдельно была реализована логика «Новое», «Популярное» и «Рекомендуемое», которая помогала пользователю находить новый контент.
Таким образом, Storymaze объединял сразу несколько моделей взаимодействия: создание → публикация → чтение → реакция → распространение.
Поиск, рекомендации и механика «Популярного»
Для большого количества пользовательского контента была разработана система — механика, которая помогает находить интересные истории.
Пользователь мог искать истории, использовать сортировку и пагинацию, а также получать персонализированную или случайную выдачу.
Были реализованы отдельные сценарии:
Новое — последние опубликованные истории.
Популярное — контент, который получает наибольшую пользовательскую активность.
Рекомендуемое — дополнительная выдача историй без повторного показа уже загруженных элементов.
Отдельной механикой стала «Мешалка» — случайное перемешивание историй в основных разделах.
Для расчёта популярности использовался : в рейтинге учитывались просмотры, лайки, репосты и активность за определённый период. Это позволило снизить нагрузку на основную базу данных.
Мобильное приложение iOS и Android
Параллельно с веб-платформой на фрейворке было разработано мобильное приложение Storymaze для iOS и Android, работающее с тем же .
Общая API-архитектура позволила синхронизировать основные возможности платформы:
- Авторизацию;
- Профили;
- Истории и эпизоды;
- Подписки;
- Социальные взаимодействия;
- Комментарии;
- Рекомендации;
- Уведомления о новом контенте.
Для мобильного сценария была также реализована поддержка offline-режима, а -уведомления позволили возвращать пользователей к новым главам и обновлениям интересующих их историй.
Дополнительно прорабатывалась работа ссылок, открывающих нужный контент непосредственно в мобильном приложении.
Производительность и техническое сопровождение
По мере развития платформы отдельное внимание уделялось стабильности и производительности.
Один из ключевых сценариев — формирование раздела «Популярное» — создавал значительную нагрузку при работе непосредственно с основной базой данных.
Для решения задачи часть логики была перенесена на , что позволило обрабатывать часто изменяющиеся показатели отдельно от основной -базы.
Техническое сопровождение проекта включало:
- Мониторинг нагрузки;
- Работу с и development-окружениями;
- Оптимизацию и запросов;
- Релизный цикл;
- Работу с и Bitbucket;
- Исправление и развитие функциональности;
- Модерацию пользовательского контента.
Таким образом, команда занималась не только разработкой новых функций, но и стабильностью платформы после запуска.
Итоги
В результате была создана полноценная -платформа для создания, публикации и потребления нелинейных интерактивных историй.
Storymaze объединил в одном продукте:
визуальное создание историй → ветвящийся сюжет → социальное взаимодействие → рекомендации → веб-платформу → мобильное приложение.
Со стороны технологий проект включал /, , , , , , /Bitbucket и DigitalOcean.
Особенность проекта — необходимость одновременно решать задачи контентной платформы, социальной сети и интерактивного движка, сохраняя единую архитектуру для web и mobile.
В результате команда обеспечила не только разработку ключевой функциональности, но и дальнейшее техническое сопровождение, оптимизацию производительности, релизный цикл и развитие продукта.