Из корня проекта:
bun install
bun run dev -- --host 127.0.0.1После запуска сайт доступен по адресу:
http://localhost:5173/
Проект - frontend платформы программ лояльности в экосистеме Т-Банка для клиентов, малого бизнеса, сотрудников бизнеса и администраторов платформы.
Платформа помогает бизнесу запускать бонусные программы, процентные скидки и мониторинг клиентской активности без сложной интеграции. Клиентам она дает единый быстрый сценарий использования бонусов: выбрать бизнес, показать QR-код, получить или списать баллы и увидеть историю операций.
Backend разрабатывает отдельная команда на Go. Frontend должен работать с mock-данными до готовности backend API и быть подготовлен к быстрой замене mock-реализаций на реальные HTTP-запросы.
Для QR-кодов добавлен отдельный NestJS microservice, который создает ежедневный QR token и хранит данные в Redis.
- TypeScript.
- React.
- Vite.
- Bun.
- Tailwind CSS.
- React Router.
- Font Awesome.
- NestJS для QR microservice.
- Redis для хранения QR token.
- Docker Compose и Nginx для локальной инфраструктуры.
Проект использует Feature-Sliced Design.
Основные слои:
app- запуск приложения, маршрутизация, глобальные стили и провайдеры.pages- страницы, подключенные к маршрутам.widgets- крупные самостоятельные блоки интерфейса.features- пользовательские действия и сценарии.entities- бизнес-сущности, их модели, API, UI и mock-данные.shared- переиспользуемые UI-компоненты, типы и утилиты.
Основные правила:
- нижние слои не импортируют верхние;
- каждый slice экспортирует публичный API через
index.ts; mocksиспользуется как отдельный segment рядом сui,modelsиapi;- backend-интеграции находятся в
apisegment; - страницы получают данные через API-функции, а не напрямую из mock-файлов;
- mock-данные должны заменяться реальным backend без переписывания UI.