Commit 00a76516 authored by Aleksei Zhukov's avatar Aleksei Zhukov
Browse files

DOCUMENTATION

parent cf9bc60f
No related merge requests found
Showing with 61 additions and 47 deletions
+61 -47
# Nuxt Minimal Starter
# Product Assistant – Frontend
Look at the [Nuxt documentation](https://nuxt.com/docs/getting-started/introduction) to learn more.
## User Guide
## Setup
### Главная страница
На главной странице пользователь может:
- Ввести поисковый запрос в поле.
- Получить список подходящих товаров с краткими характеристиками.
- Добавить товары в избранное (иконка звезды).
- Перейти к сравнению товаров (чекбоксы или кнопка "Сравнить").
Make sure to install dependencies:
### Страница сравнения
- Отображаются выбранные товары.
- Таблица сравнения характеристик.
- Возможность удаления товара из сравнения.
```bash
# npm
npm install
### Избранное
- Отображается список добавленных товаров.
- Видны характеристики и цены.
- Есть кнопка удаления товара.
# pnpm
pnpm install
### Авторизация через Telegram
- Кнопка "Войти через Telegram" запускает Telegram WebApp.
- После авторизации отображаются персонализированные данные (избранное и т.д.).
# yarn
yarn install
---
# bun
bun install
```
## Developer Guide
## Development Server
### Стек технологий
- **Framework:** Nuxt.js 3 (Vue 3 Composition API)
- **Стилизация:** TailwindCSS / SCSS
- **State Management:** Pinia
- **HTTP-клиент:** Axios
- **Авторизация:** Telegram Login + JWT от backend
- **CI/CD:** GitLab + Docker
Start the development server on `http://localhost:3000`:
### Установка проекта
```bash
# npm
npm install
npm run dev
```
# pnpm
pnpm dev
# yarn
yarn dev
### Переменные окружения (.env)
# bun
bun run dev
```env
NUXT_API_BASE_URL=http://localhost:8080
NUXT_TELEGRAM_BOT_NAME=your_bot_name
```
## Production
### Структура проекта
Build the application for production:
- `pages/` — страницы (маршруты)
- `components/` — переиспользуемые компоненты
- `stores/` — состояния (Pinia)
- `composables/` — утилиты/хуки (например, `useFavorites.ts`, `useTelegramUser.ts`)
- `assets/` — стили, иконки и шрифты
```bash
# npm
npm run build
### Авторизация
# pnpm
pnpm build
1. Подключается Telegram Login Widget.
2. После логина отправляется payload на backend.
3. Backend возвращает JWT, который сохраняется и используется в запросах.
# yarn
yarn build
### Работа с API
# bun
bun run build
```
- Вся работа через обёртку над Axios (`useApi.ts`).
- Авторизация через header `Authorization: Bearer <jwt>`.
Locally preview production build:
### Сборка и деплой
```bash
# npm
npm run preview
# pnpm
pnpm preview
npm run build
npm run generate
```
# yarn
yarn preview
Для Docker:
# bun
bun run preview
```bash
docker build -t frontend-app .
docker run -p 3000:3000 frontend-app
```
Check out the [deployment documentation](https://nuxt.com/docs/getting-started/deployment) for more information.
---
## License
MIT
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment