Об этом проекте
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 или уровни подписки, при этом пользователи несут ответственность за соблюдение условий обслуживания интегрированных платформ.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.