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

Для упрощения разработки мы использовали react-фреймворк Refine, позволяющий создать "заготовку" для полноценного CRUD-приложения буквально за несколько кликов. Refine предоставляет богатую библиотеку компонентов, хуков и функций для создания кастомизируемой админпанели. При создании "заготовки" мы выбрали поддерживаемый в Refine UI-фреймворк AntDesign. Итого, стек для административной панели составил: Refine, React, AntDesign.

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

Первым шагом стал анализ требований и детальное проектирование с представителями заказчика административной панели. Мы спроектировали макет, используя Refine, React и AntDesign. Панель предназначалась для удобного управления контентом: рынками, корнерами, товарами, категориями, а также юридической частью с фиксацией договоров. Также была реализована система пользовательских ролей и прав доступа.

Затем мы приступили к разработке web-приложения для клиентов, начав в июне 2022 года. Основная разработка завершилась к середине осени, после чего мы занимались поддержкой и доработками. Цель приложения - дать возможность заказывать еду в выбранных рынках/фудкортах, собирать блюда из разных корнеров, кастомизировать их и отслеживать статус заказа. Мы тщательно продумали процесс выбора корнера, оформления и отслеживания заказа, чтобы добиться исключительной простоты использования для клиентов.

В web-приложении мы использовали такие технологии, как NextJs, React, Redux, Redux-Saga, а также интегрировали Firebase для браузерных уведомлений. Верстка создавалась на базе UI-фреймворка AntDesign с дальнейшей кастомизацией.

В результате получились удобные сервисы Hungry Ninja! Через интуитивный интерфейс клиент может найти ближайшие корнеры на карте, изучить разнообразные меню с фото и описаниями блюд. Затем всего в несколько кликов можно оформить заказ с указанием времени получения, оплатить онлайн и отслеживать его статус. После уведомления остается лишь приехать и без ожидания забрать свой заказ!