Об этом проекте

Kaloscope — это инструмент управления локальной медиатекой на основе визуального движка рабочих процессов. Такие возможности, как поиск ресурсов и скрейпинг метаданных, полностью управляются редактируемыми рабочими процессами, что позволяет гибко подключать любые сайты с ресурсами и источники метаданных. Проект распространяется как открытое ПО по лицензии GPLv3, предоставляет образ Docker, а также демонстрационный сайт, документацию, руководство по развертыванию и FAQ. В части развертывания README содержит пример запуска одного контейнера через командную строку Docker. В нем описаны переменные окружения (PUID, PGID, UMASK, TZ, AUTO_TLS, TLS_HOSTNAME, ENABLE_ARIA2), проброс портов (8000 — Web UI, 6888 — прослушивание DHT и BT для aria2) и тома (/workspace — обязательный каталог для постоянного хранения данных). AUTO_TLS использует mkcert для автоматической выдачи локального TLS-сертификата, что упрощает доступ по HTTPS в локальной сети; ENABLE_ARIA2 запускает встроенный сервис aria2 внутри контейнера. Основные возможности: Рабочие процессы: визуальный редактор workflow на основе узлов, в котором бизнес-процессы собираются перетаскиванием; встроенные типы узлов для HTTP-запросов, Python-скриптов, условных ветвлений и циклов; импорт шаблонов community-workflow из репозиториев GitHub; запуск по расписанию для автоматического выполнения рабочих процессов. Поиск ресурсов: индексатор полностью управляется workflow и может работать с любыми ресурсными сайтами; поддерживаются поиск по ключевым словам, предпросмотр деталей, вход и аутентификация в интерактивных сценариях; глобальный поиск одновременно агрегирует результаты нескольких индексаторов; видео, изображения, текст и другие типы ресурсов можно предварительно просматривать онлайн. Управление загрузками: поддерживаются загрузчики aria2, qBittorrent, Transmission и другие; можно закреплять инструмент офлайн-загрузки из облачных дисков OpenList в качестве загрузчика и напрямую забирать удаленные результаты на локальное устройство; конфигурация загрузчиков задается в YAML и допускает расширение адаптерами; поддерживаются планы загрузки, которые по ключевым словам и правилам фильтрации автоматически находят ресурсы и отправляют задачи; можно вручную добавлять magnet-ссылки или торрент-файлы. Управление медиатекой: поддерживаются фильмы, сериалы и другие типы медиатек; отслеживание файловой системы в реальном времени и автоматическое распознавание новых медиафайлов; генерация и разбор файлов NFO с синхронизацией метаданных. Онлайн-воспроизведение: встроенный видеоплеер с поддержкой FLV, HLS и MP4; воспроизведение с транскодированием в реальном времени, при котором видео по требованию преобразуется в HLS-поток с возможностью ограничения выходного качества; аппаратное ускорение кодирования NVENC, VAAPI, VideoToolbox и другими средствами; отображение данмаку и полноэкранный мобильный режим; сохранение позиции воспроизведения и продолжение просмотра. Пользовательские права: поддержка нескольких пользователей с ролями администратора и обычного пользователя; права доступа можно назначать по медиатекам и индексаторам; поддерживаются личные настройки и собственный аватар. Поддержка PWA: приложение можно установить как PWA на настольное или мобильное устройство; цвет темы PWA синхронизируется с темой внутри приложения. Что касается технологического стека, согласно бейджам в README проект использует xyflow, Svelte, Sanic и Python 3.13+. Также доступны репозиторий шаблонов рабочих процессов, группа Telegram и поддержка интерфейса сервиса данмаку от открытой платформы 弹弹play (реализация соответствующего прокси находится в репозитории kaloscope/danmaku). В README содержится отказ от ответственности: проект предназначен только для личного обучения и технического обмена. Рабочие процессы сообщества или третьих сторон могут содержать произвольный код или сетевые запросы, поэтому пользователи должны самостоятельно проверять их безопасность и законность.