avatar Роман Монахов Разработчик года


Разработка маркетплейса по продаже предметов искусства www.artalebrio.com (ART ALEBRIO - маркетплейс для художников)

Задача

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

На Российском рынке нет ничего подобного, мы имеем несколько популярных маркетплейсов по продаже обычных товаров, тот же OZON или Wildberries, но это все массмаркет. Нам же нужно было реализовать проект с перспективой такого же масштабного роста, но продающий товары искусства в единственном экземпляре и их копии (не в оригинальном исполнении).

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


Исходя из полученной мной информации и пожеланий клиента, был составлен и реализован следующий план:

1. Провести работы по неймингу проекта (финального названия еще не было и нужно было его придумать, он должно отражать суть, что проект связан с искусством, для этого в названии присутствует слово «ART»).
2. Необходимо проработать детальное техническое задание, определиться с технологиями реализации проекта, так как это не типовой сайт компании, и он должен иметь перспективу масштабирования по технологиям горизонтального и вертикального шардинга. Поэтому типовая реализация на системе управления сайтом тут явно не подойдет.
3. Провести анализ зарубежных сайтов конкурентов (данный проект заранее нацелен на выход заграницу и сделан на двух языках, поэтому акцент в дизайне выполнен на европейский рынок, как пример, нам подходил стиль французской художественной онлайн галереи www.artmajeur.com).
4. Разработать продуманный лаконичный дизайн интерфейса, удовлетворяющий современным требованиям и стандартам, а также имеющий перспективы выхода на зарубежный рынок.
5. Запрограммировать проект и выполнить перенос на сервер клиента.

Решение

Нейминг был выполнен путем мозгового штурма вместе со всей моей командой и клиентом, это заняло не мало времени, но в итоге мы придумали отличное название ArtAlebrio.com. Данное название легко произносится и запоминается, благодаря наличию слова Art, оно дает понять, что сайт связан с искусством.

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

В процессе прототипирования и написания технического задания, стал ясен итоговый результат, к которому мы должны прийти:

1. Сайт имеет два личных кабинета для пользователей: кабинет продавца и кабинет покупателя, но разделение условно, так как и тот и тот функционал должны иметь все пользователи, потому в итоге аккаунты были объединены, единственное, для подтверждения статуса продавца нужно делать запрос модераторам проекта.
2. Сайт должен иметь собственную систему управления, позволяющую редактировать каждый раздел администратору и иметь ограниченный функционал для модераторов проекта.
3. На сайте имеются платные услуги: от статуса пользователя (наподобие PRO аккаунта на фрилансе, позволяющий размещать товары и участвовать в проводимых сайтом конкурсах, которые можно увидеть на главной странице, а также персонализированное размещение товаров на главной странице сайта и выделение товаров в каталоге) до безопасной сделки (обеспечивающей гарантию выполнения услуги продажи товара продавцами). Для реализации платных услуг были выбраны сервисы оплаты: PayPal и Робокасса – это основная базовая монетизация проекта.
4. Для оплаты услуг сайта необходимо также внедрение функционала с внутренней валютой, которую назвали ArtCoin.
5. Требовалось сделать функционал расчета стоимости доставки популярными службами (DHL, СДЭК и тд) и возможность подачи заявки в данные сервисы. На начальном этапе сайт не оказывает услуги доставки, но имеет интеграцию со службами для оценки стоимости доставки товара.
6. Все пользователи должны иметь рейтинг надежности, а также призовой блок (в нем отображаются кубки победителей, участвующих в конкурсах сайта) и блок стикеров (наподобие стикеров Вконтакте).
7. Товары искусства, имеющие статус «Эротических» и возрастной ценз должны быть скрыты от пользователей (механизм реализован путем смазывания исходного изображения), но отображаться при подтверждении возраста пользователем (для этого необходимо нажать на изображение 18+ и высветиться уведомление с подтверждением возраста, после чего, товар можно будет просмотреть).
8. У пользователей должна быть возможность личной переписки, стена в личном профиле для публикации своих предложений и информации о себе (схожа со стеной вконтакте), полноценный функциональный профиль и настройки в нем.
9. Разработанный маркетплейс должен иметь возможность подключения мультиязычности и на стартовом этапе подключен и настроен английский язык.
10. Порталу (маркетплейсу) необходимо выдерживать нагрузку одновременных запросов 1000+ и возможную посещаемость в 10 000 пользователей в сутки изначально (без дополнительной оптимизации проекта и выполнения работ по масштабированию).

Исходя из описания задачи, стало понятно, что проект должен легко масштабироваться, а значит необходимо применение технологий более гибких, чем стандартные CMS (системы управления сайтом). Тем не менее, проект имеет внешнее финансирование, и оно ограничено, поэтому применение очень дорогих технологий нам не подходит.

На основе выше представленной информации и понятности функционала, мной было принято решение реализовывать проект на Yii2 Framework – так как он имеет хорошие возможности к масштабированию проекта, написан на проверенном и хорошо известном всей моей команде языке (PHP), а главное, довольно популярен, а значит, что в будущем не будет проблем с поиском специалистов для выполнения доработок функционала, если клиент решит формировать собственную команду.

Итоговый стек технологий был следующим:

1. Дизайн: FIGMA.
2. Frontend: HTML5, CSS3, JavaScript, jQuery, VueJS.
3. Backend: PHP 7, Yii2 Framework, Web-Socket.
4. Система контроля версий: GIT.
5. Серверная конфигурация предоставлена клиентом, мы лишь провели ее настройку под наши технологии и планируемую нагрузку.

Результат

Проект успешно запущен и размещен на доменном имени https://artalebrio.com/. Выполнены все работы по основному согласованному техническому заданию. В первые две недели после запуска проект принес 60 000 рублей на продаже платных аккаунтов, что я считаю не плохим результатом для проекта подобного масштаба.

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

Клиент также остался доволен работой и записал нам видео отзыв о совместной работе, который доступен по ссылке: https://disk.yandex.ru/i/NY_Fbvdz9O_v-g


Ознакомиться с проектом можно по ссылке: https://artalebrio.com/
Ознакомиться с дизайном можно на основе файлов, приложенных к данному описанию.


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

Примеры реализации(ссылки)

https://artalebrio.com/
https://disk.yandex.ru/i/NY_Fbvdz9O_v-g

1632048928.png 1632048942.png 1632048950.png 1632048957.png 1632048964.png 1632048970.png 1632048977.png 1632048985.png 1632048991.png 1632048998.png