尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证正在加载完整 README。 以下为已保存的摘录。
Trend Büro — приложение, админка и импорт товаров Витрина (index.html) плюс админка (admin.html), которая сама загружает ассортимент из источников (LV, Dior, Gucci, поставщики очков, CSV/JSON), считает цены по правилам и публикует товары после проверки. 1. GitHub: создайте пустой репозиторий и загрузите в него этот код. 2. Sanity: создайте новый проект на sanity.io/manage, dataset production. В разделе API → Tokens создайте токен с правами Editor. 3. Vercel: импортируйте репозиторий (Framework: Other). В Settings → Environment Variables добавьте:查看完整 README ↗
Витрина (index.html) плюс админка (admin.html), которая сама загружает ассортимент из источников (LV, Dior, Gucci, поставщики очков, CSV/JSON), считает цены по правилам и публикует товары после проверки.
| Путь | Что это |
|---|---|
index.html | Витрина (Telegram Mini App / веб). Берёт опубликованные товары из /api/catalog. Демо-данные открываются только по ?demo=1 и помечены плашкой «ДЕМО-ДАННЫЕ». |
admin.html | Админка: источники, импорт, задачи, предпросмотр, товары, цены. |
api/admin.js | API админки (вход по паролю, подписанная cookie, защита от CSRF). |
api/catalog.js | Публичный каталог: только опубликованные товары, без закупочных цен и наценки. |
api/cron.js | Плановое обновление цен и наличия, фоновая обработка задач. |
lib/ | Логика: безопасная загрузка, разбор страниц, нормализация, дубли, цены, очередь задач, публикация. |
test/ | 41 автотест. Фикстуры в test/fixtures используются только тестами (тестовый режим). |
production. В разделе API → Tokens создайте токен с правами Editor.| Переменная | Значение |
|---|---|
SANITY_PROJECT_ID | ID проекта Sanity |
SANITY_DATASET | production |
SANITY_TOKEN | токен Editor (только здесь, никуда больше) |
ADMIN_PASSWORD | пароль входа в админку |
ADMIN_SECRET | необязательно: случайная строка 32+ символов для подписи сессии |
CRON_SECRET | случайная строка, её же Vercel передаёт в cron |
vercel.json). Чтобы большие импорты шли без открытой админки, в GitHub → Settings → Secrets добавьте APP_URL (адрес сайта) и CRON_SECRET. Тогда .github/workflows/import-tick.yml будет продвигать очередь каждые 10 минут. Пока админка открыта на вкладке «Задачи», очередь продвигается и оттуда.Если сайт отвечает защитой от ботов (CAPTCHA, вход, блокировка), задача останавливается со статусом «Заблокировано». Обход не выполняется: источник нужно подключить через файл или фид.
npm test # 41 тест
npm run check # синтаксис всех файлов + тесты
node scripts/dev.js # http://localhost:3000, без SANITY_* работает демо-режим в памяти, пароль «demo»