From 8346774bd5a4c80b52d77f1259bb650e55b785f3 Mon Sep 17 00:00:00 2001 From: IgorVolochay Date: Sun, 25 Oct 2026 10:58:19 +0300 Subject: [PATCH] docs: add README Co-Authored-By: Claude Sonnet 5.5 --- README.md | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..624be15 --- /dev/null +++ b/README.md @@ -0,0 +1,34 @@ +# Outlier Saver + +Расширение для Chrome: пока вы смотрите YouTube, оно находит видео с аномально высокими просмотрами относительно размера канала («outliers») и сохраняет их локально. Данные можно выгрузить в JSON или CSV. + +## Установка + +1. Откройте `chrome://extensions` и включите «Режим разработчика». +2. «Загрузить распакованное расширение» → выберите эту папку. +3. Откройте настройки расширения и вставьте API-ключ YouTube Data API v3 (инструкция — в самих настройках). + +## Как это работает + +- Расширение собирает ID видео на главной, странице просмотра, в поиске и на страницах каналов. +- Название, превью, просмотры и подписчиков берёт из YouTube Data API v3 пачками по 50 (1 единица квоты за запрос, лимит — 10 000 в сутки). +- `score = просмотры ÷ подписчики`. Видео сохраняется, если `просмотры ≥ минимума` и `score ≥ порога` (по умолчанию 10 000 и 5), либо если на карточке есть значок VidIQ. +- Данные лежат в IndexedDB браузера. Кнопки «Скачать JSON» и «Скачать CSV» в popup выгружают всё сохранённое. + +## Разработка + +Сборки нет. Тесты (Node 22, без зависимостей): + +``` +npm test +``` + +После изменения кода нажмите «Обновить» у расширения на `chrome://extensions`. + +## Ручная проверка на живом YouTube + +- Подгрузка карточек при скролле на главной. +- Переход между страницами без перезагрузки. +- Работа на `/results` и `/@канал/videos`. +- Запись появляется в popup; скачиваются JSON и CSV. +- Без ключа и с неверным ключом на иконке бейдж `!`, в popup понятная причина.