Релиз обновлённого сайта Серьёзных Игр

Новый сайт «Серьёзных игр» — это большое Redux-приложение. Я спроектировал его архитектуру, настроил серверный рендеринг, собрал набор интерфейсных элементов и основные страницы. В этом посте покажу, что у нас в итоге получилось.

Списки квестов и бронь

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

Каталог квестов с карточками
Каталог квестов с карточками

Сама карточка ведёт на отдельную страницу квеста, но забронировать игру можно прямо здесь через кнпоку «Забронировать». Кнопка открывает попап, где мы предлагаем ближайшее свободное время:

Попап бронирования игры в карточке квеста
Попап бронирования игры в карточке квеста

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

Список сободных дат
Список сободных дат

Расписание игр

На странице расписания мы сделали фильтры по подборкам, времени и цене. Дату можно выбрать в календаре под фильтрами. Квесты занимают строчки ниже. Игры собраны по ценам в группы, цена — в подвале группы.

Расписание игр в виде таблицы
Расписание игр в виде таблицы

Множественный фильтр подборок и времени помогает точнее выбрать квест. Кнопка «Сбросить» стирает все настройки фильтра.

Фильтры и настройки
Фильтры и настройки

Расписание квестов таскается мышью и скроллится по горизонтали. На мобильных устройствах его можно таскать свайпом.

Слоты со временем можно таскать по горизонтали
Слоты со временем можно таскать по горизонтали

При нажатии на свободное время открывается попап бронирования. Язычок в нём указывает, какую игру бронирует пользователь. А дата и время фиксируются на этой игре.

Бронирование из расписания
Бронирование из расписания

Дизайн для мобильных

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

Попап брони на телефоне занимает всё почти доступное место
Попап брони на телефоне занимает всё почти доступное место

Фильтры квестов делаем большими, чтобы легче было попасть пальцем, а календарю добавляем свайп:

Фильтры на телефоне стали больше
Фильтры на телефоне стали больше

Расписание на странице квеста группируем по дням, а кнопку «Забронировать» выводим и «залипаем» внизу экрана. При тапе на конкретный день расписание разворачивается:

Группировка в расписании телефоне
Группировка в расписании телефоне

Итого

Проект получился объёмным, за время работы с ним я много чему научился — не только в плане хардскилов, но и в управлении и менторинге других разработчиков.

Подробнее о своём опыте, я написал в отдельном посте 🙃