YouChange
Youchange
О проекте
Формат работы
Проджект-менеджер, тимлид, фронтенд-разработчик, бэкенд-разработчик, дизайнер.
Фирменный стиль
Анимация
Выделение строчек в списке обменников показывает, на какой строчке сейчас находится пользователь. Так информация не сливается и в интерфейсе легче ориентироваться.
При наведении на конкретный пункт меню раскрываются строки подменю. Вся информация не выводится сразу, чтобы не перегружать мозг большим количеством данных.
Полоса загрузки на главном экране говорит пользователю, что нужно немного подождать, пока загрузятся актуальные курсы обменников.
UX-дизайн
На первом этапе пользователь выбирает валюту, которую хочет обменять. Мы предусмотрели множественный выбор,
так как человек может интересоваться сразу несколькими вариантами обмена.Пользователь выбирает валюту, которую хочет получить. В ответ на экран выводится список обменников, которые подходят по запросу. На этом этапе пользователь может изучить условия обменников и отзывы о них.
Дальше пользователь выбирает вариант с наиболее подходящими условиями. Всё, агрегатор выполнил свою задачу.
Функционал
для пользователей и администраторов.
Каждый интегрированный обменный сервис выкладывает данные по своим текущим курсам криптовалют в виде XML или JSON файлов по определённой ссылке.
Мониторинг регулярно проверяет эти ссылки на выгрузку актуальных курсов у всех подключённых обменников. Анализирует, какой обменник когда последний раз обновлял данные.
Мониторинг формирует список тех обменников, данные которых нужно актуализировать в следующий раз.
Этот список в виде ссылок поступает к планировщику задач.Тот распределяет задачи по обработке ссылок между несколькими параллельными процессами — потоками. Например, если нужно опросить 100 обменников, то запускается 5 параллельных потоков. И каждый поток забирает в работу по 20 обменников из общего списка.
В каждом потоке идёт парсинг поступающих XML и JSON файлов, из которых извлекаются актуальные курсы всех обменных пар. Полученные данные от всех обменников объединяются.
Собранная информация в итоге сохраняется в базе данных самого мониторинга. Там она преобразуется в аналитическую статистику о текущих курсах на рынке.
Вся эта статистика передаётся на фронтенд через API. А когда фронтенд выбирает какое-то направление, он по сокету подключается к мониторингу и получает актуальные данные по этому направлению.
CEO Wemakefab
Для обычных пользователей: просмотр статистики по совершённым обменам, настройка выдачи обменников, например, скрыть какие-то из направлений
Для администраторов обменников: добавление и редактирование описания, ответы на отзывы и обратную связь пользователей, настройка визуального оформления обменника, статусы обменников, например на случай, если обменник временно не работает, доступ к реальной статистике по курсам валют из системы мониторинга обменников.
Для суперадминистратора: полный доступ к данным системы, добавление и удаление учётных записей администраторов и назначение им ролей с определёнными правами доступа, создание ролей и назначение им определённых прав и доступов, ограничение или предоставление доступа к статистическим данным по курсам валют из системы мониторинга обменников.
Технологии
Основная часть сайта и API для фронтенда — PHP, фреймворк Laravel.
Мониторинг — Rust, фреймворк Actix. Подходит для реализации высоконагруженных параллельных систем.
Параллельное редактирование — GO. Позволяет быстро сделать реалтаймовую систему с хорошей производительностью.
Результат
все доступные площадки, сравнить их условия и выбрать наиболее подходящий вариант обмена.
CEO Wemakefab