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

Задача
Сеть работает в десятках городов, а гость узнаёт о ней через сайт и бота в Telegram. Нужно было показать владельцам, каким может быть собственное приложение: что в нём делает гость, как оно выглядит в фирменном стиле и как проходит проверку App Store с возрастным ограничением 17+.
Что сделали
Больше двадцати экранов на SwiftUI без сторонних библиотек. Проверка возраста и вход по номеру телефона, главная с приглашением на сегодня, все 62 бара сети на карте, барная карта на 158 позиций с ориентировочной калорийностью, бронь стола по шагам и клубная карта с уровнями L, XL и XXL.
Фирменная палитра сети, шрифт Raleway и собственный набор иконок вместо системных. Карта России и городов нарисована из данных OpenStreetMap, зашитых в приложение, поэтому она работает без интернета и без ключей.
Код на входе
QR-код одноразовый. Внутри номер гостя, номер текущего 30-секундного окна и подпись HMAC-SHA256 секретом, который хранится в Keychain. Скриншот кода перестаёт работать через 30 секунд, а без секрета код не подделать. Показывается он только после Face ID.
Как работает код на входе
Часы раз в 30 секунд проворачивают барабан с кодом. Шторка открывается только ключом, то есть Face ID. Турникет пропускает, если сканер видит код текущего окна.
Экраны
Технически
- 62 бара сети с адресами, часами работы и статусами, взятые с официального сайта.
- Ближайший бар по геолокации, маршрут в Яндекс Картах, 2ГИС или Apple Картах и такси до бара.
- Бронь: клуб, дата на 14 дней вперёд, время, гости, зона у сцены, на диванах или VIP, подтверждение с кодом.
- Под правила App Store: проверка возраста, а полные фотосессии артисток открываются только на сайте сети.
- Свой набор иконок и палитра сети в одном месте кода, поэтому концепт быстро перекрашивается под другой бренд.
Swift · SwiftUI · MapKit · Keychain · Face ID · OpenStreetMap