Skip to content

Фронтенд кабинета партнёра

Краткое описание

Кабинет партнёра — это фронтенд-приложение, создаваемое для партнёров компании A-Ceramica, которое предоставляет доступ к персональным скидкам, заказам, управлению контрагентами и другим партнёрским возможностям. Интерфейс ориентирован на удобство и прозрачность взаимодействия с компанией. Архитектура проекта строится на Nuxt 3, Nuxt UI и Tailwind CSS, с акцентом на масштабируемость, модульность и гибкость в настройке

Архитектурные особенности

  • UI-стек: интерфейс разрабатывается на базе Nuxt UI и Tailwind CSS, с возможностью кастомизации через app.config.ts и tailwind.config.ts
  • Авторизация: интеграция с Keycloak предполагается через публичного клиента nuxt-auth, с использованием Direct Access Grant Flow для работы с логином и регистрацией
  • Взаимодействие с API: запланирована работа с FastAPI-бэкендом через (server/api/fetch/) и управление состоянием с помощью Pinia

Технологический стек

  • Nuxt 3 — основной фреймворк с использованием SSR
  • Tailwind CSS — утилитарный CSS-фреймворк с возможностью кастомизации
  • Nuxt UI — UI-библиотека, интегрированная в экосистему Nuxt
  • Pinia — менеджер состояния
  • Keycloak — система авторизации и аутентификации
  • FastAPI — бэкенд, обрабатывающий бизнес-логику

Разработка и запуск локально

1. Установка зависимостей

bash
npm install

2. Сборка проекта

bash
npm run build

3. Запуск в режиме разработки

bash
npm run dev

4. Запуск в режиме продакшена

bash
node .output/server/index.mjs

⚠️ Не забудь создать .env и .npmrc с актуальными значениями. См. Шаблоны окружений

Сборка и деплой

Проект деплоится вручную на staging-сервер. Подробнее см. Сборка и деплой фронтендов

Навигация

Внутренний ресурс компании