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

PlaylistPillar — это автономный движок музыкального каталога, распространяемый как Docker-приложение. Его заявленная цель — превращать плейлисты со стриминговых платформ в долговечные, просматриваемые локальные архивы, сохраняя контекст плейлиста, а не относясь к трекам как к одноразовым файлам. Основной подход - Архивирование с приоритетом метаданных: экспорты, как описывается, включают встроенные ID3-теги, обложки альбомов (JPEG/PNG) и информацию о годе релиза с перекрёстными ссылками на публичные базы дискографий, такие как MusicBrainz и Discogs. - Сохранение структуры: оригинальный порядок плейлиста, метаданные треков и обложки сохраняются, поэтому локальная копия по-прежнему показывает обложку, исполнителя, альбом и номер трека, даже если трек позже исчезнет со стримингового сервиса. - Движок сравнения плейлистов: ранее архивированный плейлист можно повторно просканировать, чтобы увидеть, какие треки были удалены, добавлены или изменены с момента последнего экспорта. Развёртывание и интерфейс - Нативный Docker: работает в любой Docker-среде через единую конфигурацию compose.yaml, без описанных системных зависимостей. - Адаптивная веб-панель: управление архивами, просмотр использования хранилища и просмотр импортированных плейлистов с любого устройства. - Многоязычный интерфейс: панель и журналы экспорта доступны на английском, испанском, французском, немецком, японском и португальском языках. - Фоновый обработчик: поставленные в очередь плейлисты обрабатываются с ограничением частоты запросов, повторными попытками и отслеживанием прогресса без блокировки сеанса браузера. Детали экспорта и хранения - Форматы экспорта: структурированные папки (Исполнитель / Альбом / Трек.mp3) или единый сжатый .pillar-бандл со встроенными метаданными. - Оценки хранения, указанные в README: примерно 80–120 МБ на час музыки при 320 kbps, плюс 1–3 МБ на альбом для обложек; плейлист из 50 песен обычно занимает 300–450 МБ. - Технические примечания: очередь запросов по алгоритму token-bucket, SQLite по умолчанию с опциональным PostgreSQL, обложки альбомов сжимаются в WebP с откатом на PNG, а контрольные суммы SHA-256 записываются в сопроводительный манифест для проверки целостности. Начало работы 1. Настройте окружение: предоставьте опциональный API-токен стриминговой платформы для ускоренного обогащения метаданных и задайте том хранилища в compose.yaml. 2. Запустите панель, затем вставьте ссылку на плейлист или загрузите .txt-файл с URL-адресами. 3. Система обрабатывает треки в фоновом режиме, сохраняя обложки и метаданные, и уведомляет через панель, когда архив готов. Структура репозитория В README описывается бэкенд (Python, Flask + Celery) с воркерами, моделями и обогатителем метаданных; фронтенд на Vue.js с компонентами и файлами локализации; Docker-файлы; документация; тесты; и лицензия MIT. В roadmap на 2026 год упомянуты мастера пакетного импорта, офлайн AI-тегирование для подсказок жанра и настроения, автоматическое еженедельное зеркалирование плейлистов и мобильное приложение-компаньон. Поддержка и соответствие В README рекламируется диагностический модуль, который генерирует готовый для поддержки снимок конфигурации, журналов, состояния контейнеров и сетевого статуса с заявленным типичным временем ответа до двух часов и живым чатом в рабочие часы. Также указано, что API-токены шифруются при хранении с использованием AES-256 и никогда не логируются, а анонимные публичные запросы метаданных доступны как опция. Дисклеймер отмечает, что проект предназначен для личного архивного использования и не обходит географические ограничения, DRM или уровни подписки, при этом пользователи несут ответственность за соблюдение условий обслуживания интегрированных платформ.