From 00a76516145eb413d6ab31c84555306f5df18070 Mon Sep 17 00:00:00 2001 From: Aleksei Zhukov <zheshalukov@yandex.ru> Date: Sat, 22 Mar 2025 17:32:53 +0300 Subject: [PATCH] DOCUMENTATION --- README.md | 108 ++++++++++++++++++++++++++++++------------------------ 1 file changed, 61 insertions(+), 47 deletions(-) diff --git a/README.md b/README.md index 25b5821..01b8deb 100644 --- a/README.md +++ b/README.md @@ -1,75 +1,89 @@ -# 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 -- GitLab