Bright.Core - ядро для разработки стартапов

В прошлых статьях я уже писал, что сейчас моя студия разработки стартапов активно переезжает с Битрикс на Node.js и разобрались с серверной частью и админкой. Теперь мы принялись за клиентскую часть ядра для запуска многопользовательских стартапов, которой я и хочу посвятить сегодняшнюю статью.

Большинство наших клиентов обращается за проектами с большим количеством пользователей, которые друг от друга что-то хотят. Среди таких проектов в 2022 году у нас были товарные маркетплейсы, маркетплейсы услуг, небольшая соцсеть, сервис знакомств, бонусные программы, кэшбеки и т.д.

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

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

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

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

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

Что внутри

Первое, что мы сделали, это подключили UI-фреймворк Taiga, поэтому теперь всё стало выглядеть гораздо интереснее и современнее, чем в типовом Ionic. Для проектов, запускающихся в базовом дизайне, это станет большим плюсом.

Авторизацию разделили на две части, как это используется в большинстве приложений: на первом экране – ввод номера телефона и согласие с политикой конфиденциальности, на следующем – ввод кода из СМС и возможность повторной отправки сообщения.

На каркасах мы сделали непосредственно авторизацию, список пользователей, редактирование своего профиля и пример текстового экрана в виде пользовательского соглашения. Ещё есть диалоги с тремя типами сообщений: непрочитанные, присланные сегодня и присланные «когда-то», метки у всех разные.

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

Списки пользователей реализованы по принципу lazy load, то есть когда очень много элементов, они будут выводиться не все сразу, а подгружаться по частям при прокручивании, например, по 20 профилей. Благодаря этому при открытии экрана не нужно будет дожидаться загрузки всего экрана, достаточно дождаться первых 20 строчек.

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

Собственно, делаем мы это всё для упрощения запуска многопользовательских проектов, для которых не подходят типовые решения CMS. Основной упор на скорость работы, гибкость реализации индивидуальной работы стартапа и при этом финансовой экономии.

Если у Вас есть идеи по дальнейшему развитию или у вас многопользовательский проект не помещающийся в логику типовых лендинга, корпсайта или интернет-магазина, то буду раз обратной связи. Мои контакты:

Почта: [email protected]

Тел/WhatsApp: +79178232748

Telegram: @denisgordienko

0
3 комментария
Pavel

А в чем преимущество вашего ядра над такие болерплейтами как например https://create.t3.gg/ или его дженерик https://github.com/t3-oss/create-t3-turbo?

Ответить
Развернуть ветку
Bright Mobile
Автор

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

Ответить
Развернуть ветку
Сергей Плахин

ни в чем, очевидно же.

Ответить
Развернуть ветку
0 комментариев
Раскрывать всегда