Invidious – свободный веб-интерфейс для просмотра контента YouTube. Проект не заменяет видеохостинг и не хранит собственную библиотеку роликов. Сервер Invidious получает метаданные и медиапотоки с инфраструктуры YouTube, а пользователю показывает их через отдельный интерфейс. Сервис можно открыть на одном из публичных экземпляров или развернуть на собственном сервере.
Проект продолжает активно развиваться. На момент проверки репозиторий насчитывает около 22,7 тыс. звёзд и 2,5 тыс. форков. Актуальный стабильный релиз v2.20260804.1 вышел 5 августа 2026 года. Основная часть написана на Crystal, веб-приложение использует Kemal, данные пользователей и служебную информацию хранит PostgreSQL.
Главная идея Invidious состоит в том, чтобы отделить интерфейс просмотра от самого YouTube. Пользователь не обязан входить в Google-аккаунт, чтобы подписываться на каналы, вести историю или создавать локальные плейлисты. Аккаунт Invidious принадлежит конкретному экземпляру и не связан с аккаунтом YouTube.
Функции Invidious
Через интерфейс можно искать ролики и каналы, открывать страницы каналов и плейлистов, читать описания и комментарии, выбирать звуковые дорожки и субтитры. Поддерживаются светлая и тёмная темы, аудиорежим и фоновое воспроизведение на мобильных устройствах.
- подписки на каналы без аккаунта Google;
- локальная история просмотров;
- уведомления о новых публикациях;
- импорт подписок из YouTube, NewPipe и FreeTube;
- импорт истории из YouTube и NewPipe;
- экспорт данных Invidious;
- встроенный режим только аудио;
- светлое и тёмное оформление;
- веб-интерфейс, адаптированный под мобильные устройства;
- REST API для сторонних приложений.
Данные можно переносить между экземплярами вручную через экспорт и импорт. Автоматической синхронизации аккаунта между разными серверами Invidious нет. Разработчики объясняют такое решение отсутствием инфраструктуры для централизованной или федеративной синхронизации.
Для разработчиков предусмотрен REST API. Через него доступны сведения о видео, каналах, плейлистах, поисковой выдаче и статистике экземпляра. JavaScript для базовой работы не обязателен, хотя некоторые функции проигрывателя и интерфейса удобнее с включёнными сценариями.
Как работает Invidious
Пользователь открывает публичный или собственный экземпляр и отправляет запрос серверу Invidious. Сервер получает сведения о видео и каналах с YouTube без официального YouTube API, преобразует ответы и формирует собственные HTML-страницы либо JSON для API.
Современная установка включает три основных компонента: Invidious, PostgreSQL и Invidious Companion. Companion вынесен в отдельный проект и отвечает за получение видеопотоков с серверов YouTube. Компонент основан на youtube.js и заменил прежние inv-sig-helper и youtube-trusted-session-generator. Без настроенного Companion воспроизведение в актуальной схеме не работает.
У приватности есть существенный нюанс. По умолчанию видеопоток может загружаться браузером напрямую с googlevideo.com. В таком режиме Google видит IP-адрес пользователя и обычные данные браузерного запроса. Опция Proxy videos заставляет экземпляр Invidious передавать медиапоток через себя. Прямое соединение браузера с сервером Google для видео пропадает, но растут нагрузка и расход трафика на сервере Invidious.
Сам проект не заявляет о сборе пользовательской телеметрии, однако администратор конкретного экземпляра технически может вести журналы запросов и видеть IP-адреса. По умолчанию сервер записывает адрес запрошенной страницы, код ответа и время обработки. При создании локального аккаунта в базе экземпляра хранятся подписки и история просмотра.
Надёжность напрямую зависит от изменений на стороне YouTube. Invidious использует неофициальные интерфейсы и разбирает ответы сервиса, поэтому изменения внутреннего API или структуры данных могут временно нарушить поиск, плейлисты, комментарии или воспроизведение. Например, в июне 2026 года изменение формата данных YouTube нарушило отображение видео в плейлистах, после чего разработчикам пришлось менять парсер.
Для кого подходит Invidious
Обычному пользователю Invidious подходит как браузерный интерфейс к YouTube без обязательного аккаунта Google и без рекламных блоков внутри самого Invidious. Устанавливать приложение на компьютер или смартфон не требуется. Разработчики отдельно указывают, что Invidious остаётся браузерным приложением и отдельные версии для Android или iOS создавать не планируют.
Системные администраторы могут развернуть собственный экземпляр для личного использования, небольшой группы или публичного доступа. Самостоятельный хостинг даёт контроль над журналами, регистрацией пользователей, проксированием видео, доменом, HTTPS и параметрами производительности.
Разработчикам Invidious полезен как программный слой над данными YouTube. REST API можно применять в собственных клиентах, поисковых интерфейсах и других интеграциях, но зависимость от внутренних механизмов YouTube при таком сценарии сохраняется.
Как установить и запустить Invidious
Основной поддерживаемый вариант развёртывания – Docker Compose. Официальная инструкция требует Docker Engine и Docker Compose V2. Репозиторий пока нужно клонировать целиком, поскольку контейнер PostgreSQL использует SQL-файлы и скрипт инициализации из дерева проекта.
Сначала нужно получить исходный код:
git clone https://github.com/iv-org/invidious.git
cd invidious
После клонирования разработчики рекомендуют создать два разных секретных ключа, один для Invidious и второй для Companion, затем настроить docker-compose.yml. Использовать один ключ для двух компонентов документация не рекомендует.
Контейнеры запускаются командой:
docker compose up -d
В типовой схеме запускаются Invidious на порту 3000, Invidious Companion и PostgreSQL 14. Для рабочего публичного сервера документация предполагает reverse proxy перед Invidious. Через него обычно настраивают доменное имя и HTTPS.
Есть и ручная установка под Linux. Потребуются Crystal, PostgreSQL, библиотеки сборки и отдельный Companion. Invidious компилируют командой make, копируют config.example.yml в config.yml, настраивают базу, выполняют миграцию и запускают сервис через systemd. Companion можно скачать как готовый бинарный файл или собрать через Deno.
Для связки Invidious и Companion документация указывает минимум 20 ГБ диска и 2 ГБ свободной оперативной памяти. Публичному экземпляру рекомендуются около 60 ГБ диска, 4 ГБ RAM, два виртуальных процессорных ядра, канал 200 Мбит/с и примерно 20 ТБ трафика. Высокие требования к сети связаны в том числе с возможным проксированием видеопотоков через сервер.
Плюсы и минусы Invidious
| Плюсы | Минусы |
|---|---|
| Открытый исходный код | Работа зависит от изменений внутренних механизмов YouTube |
| Не требуется аккаунт Google | Публичные экземпляры могут временно работать нестабильно |
| Локальные подписки, история и пользовательские настройки | Нет автоматической синхронизации аккаунта между экземплярами |
| Нет рекламных блоков в интерфейсе Invidious | Администратор стороннего экземпляра технически видит IP и журналы запросов |
| Можно использовать публичный сервер или поднять собственный | По умолчанию видеопоток может передаваться напрямую с серверов Google |
| Есть REST API и импорт/экспорт данных | Самостоятельное развёртывание требует PostgreSQL и Companion |
| Базовая работа не требует JavaScript | Публичный хостинг может потреблять большой объём трафика |
Лицензия
Основной Invidious распространяется по GNU Affero General Public License v3.0 only, AGPL-3.0-only. Лицензия разрешает использовать, изучать, изменять и распространять программу. Если изменённая версия доступна пользователям по сети, AGPL требует предоставить соответствующий исходный код такой версии.
Требование имеет практическое значение для публичных серверов. Правила официального списка экземпляров Invidious прямо требуют от операторов модифицированных версий публиковать исходный код, описывать изменения и размещать ссылки на исходный и оригинальный проекты. Invidious Companion также распространяется по AGPL-3.0.
Заключение
Invidious – не отдельный видеохостинг и не программа для скачивания роликов, а самостоятельный веб-слой поверх YouTube. Пользователь получает браузерный интерфейс с локальными подписками, историей и настройками, а администратор может поднять собственный экземпляр и контролировать его конфигурацию.
Главный компромисс связан с зависимостью от YouTube. Изменения сервиса периодически нарушают отдельные функции, поскольку Invidious не использует стабильный официальный API для всей своей работы. Собственный экземпляр также нельзя свести к одному бинарному файлу. Актуальная схема требует PostgreSQL и Invidious Companion.
Для обычного просмотра проще выбрать рабочий публичный экземпляр. Самостоятельный хостинг имеет смысл, когда нужен контроль над журналами, пользовательскими данными, настройками проксирования и доступностью сервиса. При работе через чужой экземпляр заявленную приватность не стоит воспринимать как абсолютную, поскольку оператор сервера остаётся отдельной стороной, которой пользователь доверяет сетевые запросы.
