Бизнес задача: реализовать модель новостного краудсорсинга / получения экспертных знаний, применяемую во многих крупных новостных агентствах, когда каждый человек, обладающий информацией имеет возможность передать её в новостное издание, которое монетизирует его и платит за контент.
Описание
Пример
Инсайдерская информация с собрания акционеров до публикации результатов, случайные кадры влиятельной личности в обстоятельствах, дающих полезную информацию, случайно пойманные на улице
Техническая задача
Предоставить исключительно мобильный интерфейс для новостных агентов, главных редакторов, управляющих сетью, и, конечно, обычных читателей, в размерах небольшой страны развивающегося рынка, для медийной компании.
Mind map функционала
Первый анализ и составление функционала вместе с заказчиком сделали используя Mind Map, в котором отразили все основные логические ветвления и основные функции.
Технологический стек и реализация
Так как необходимо реализовать значительный функционал в ограниченных ресурсах, мы решили посмотреть готовые решения, которые дали бы нам 80% возможностей за 20% ресурсов.
Основой всей работы является, по сути дела, классическая система управления контентом сайта - Content Management System (CMS). В нашем случае была нужна система CMS, управляемая кодом через API - класс систем headless CMS.
После анализа рынка, мы отбросили готовые решения лидеров этой ниши - так как коммерческий хостинг и решения с платой за страницу / пользователя убивало всю unit экономику на корню.
В итоге мы выбрали Strapi — активно развивающееся решение с открытым исходным кодом, которое быстро разворачивается в хостинг приложений - Heroku, при этом сохраняя возможность перевести инфраструктуру на свои сервера при необходимости снижения издержек.
В качестве базы данных была выбрана PostgreSQL — потому что с ней, как всегда, спокойней.
После определения функционала и составления UX/UI карты приложения и всех переходов, оно было реализовано, развёрнуто и передано заказчику в полном объёме.