Skip to content

RfailesDev/LitMusic

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

LitMusic: Простой сервис для хостинга и прослушивания музыки

LitMusic — это простое веб-приложение, созданное на Flask для хранения, прослушивания и управления музыкальными треками. Изначально разработанное для удобного хранения и обмена ссылками на музыку для использования в радио в Garry's Mod, оно эволюционировало, чтобы позволить связывать загруженные треки с их оригинальными URL-адресами (например, с определенного веб-сайта, требуемого Garry's Mod), предоставляя при этом предварительное прослушивание на сайте. Это позволяет легко скопировать оригинальную ссылку для использования в другом месте после подтверждения нужного трека.

Возможности

  • Загрузка и хранение треков: Загружайте музыкальные файлы непосредственно на сервер. Поддерживаются распространенные аудиоформаты, такие как MP3, WAV, AAC, FLAC, OGG и M4A.
  • Прослушивание на сайте: Предварительно прослушивайте треки непосредственно в веб-интерфейсе.
  • Привязка внешних источников: Связывайте загруженные треки с их исходными URL-адресами. Это позволяет легко копировать исходную ссылку для использования в других местах.
  • Описание треков и тегирование: Добавляйте описания и несколько тегов к трекам для лучшей организации и поиска.
  • Функциональность поиска: Ищите треки по названию, описанию и тегам.
  • Панель администратора (защищена паролем): Управляйте треками (добавление и удаление) через простую систему входа администратора с использованием JWT для аутентификации.
  • Резервное копирование/восстановление базы данных: Загрузите всю базу данных и файлы треков в виде ZIP-архива для резервного копирования и восстановления.
  • Пагинация: Эффективно просматривайте большие музыкальные библиотеки с помощью пагинации.
  • Адаптивный дизайн: Адаптируется к различным размерам экрана для удобства пользователей на настольных и мобильных устройствах.
  • Перетаскивание файлов для загрузки: Легко добавляйте треки, перетаскивая аудиофайлы в интерфейс.
  • Уведомления на стороне клиента: Удобные уведомления предоставляют обратную связь о действиях (успешная загрузка, подтверждение удаления и т. д.)
  • Докеризация для легкого развертывания: Включает Dockerfile для упрощенного развертывания и согласованности среды.

Установка и настройка

Необходимые компоненты

  • Python 3
  • Docker (рекомендуется)

Использование Docker (рекомендуется)

  1. Клонируйте репозиторий:
    git clone https://github.com/your-username/LitMusic.git 
  2. Соберите Docker-образ:
    cd LitMusic
    docker build -t litmusic .
  3. Запустите Docker-контейнер:
    docker run -d -p 6390:6390 litmusic
    Это сделает приложение доступным на порту 6390.

Ручная установка (без Docker)

  1. Клонируйте репозиторий:

    git clone https://github.com/your-username/LitMusic.git
  2. Создайте виртуальное окружение (рекомендуется):

  3. Установите зависимости:

    pip install -r requirements.txt
  4. Запустите приложение:

    python app.py

Использование

  1. Откройте веб-интерфейс: Откройте веб-браузер и перейдите по адресу http://localhost:6390 (или соответствующему IP-адресу/порту, если развернуто удаленно).
  2. Просмотр и воспроизведение треков: Нажмите кнопку воспроизведения на плитке трека для прослушивания.
  3. Поиск: Используйте панель поиска для фильтрации треков по названию.
  4. Вход администратора: Нажмите "Войти как админ", чтобы получить доступ к форме входа администратора. Пароль по умолчанию — "viktortop4ik" (ВАЖНО: Измените это в производственной среде!).
  5. Добавление треков (администратор): Используйте кнопку "Добавить Трек" в панели администратора для загрузки новых треков. Укажите название, необязательное описание, исходный URL-адрес (если применимо) и теги.
  6. Удаление треков (администратор): Нажмите кнопку удаления (значок x) на плитке трека в панели администратора.
  7. Резервное копирование базы данных: Скачайте базу данных и файлы треков, нажав кнопку/ссылку «Скачать БД» (если реализовано в пользовательском интерфейсе — функциональность доступна в app.py).
  8. Восстановление базы данных: Загрузите ZIP-архив резервной копии базы данных (если реализовано в пользовательском интерфейсе — функциональность доступна в app.py).

Настройка

  • Секретный ключ: Секретный ключ JWT в настоящее время установлен как 'your_secret_key_here' в app.py. Измените это на надежный, случайный ключ в производственной среде!
  • База данных: Приложение по умолчанию использует базу данных SQLite (database.db).
  • Разрешенные расширения файлов: Вы можете изменить набор ALLOWED_EXTENSIONS в app.py, чтобы ограничить или расширить типы аудиофайлов, которые можно загружать.
  • Статические файлы: Статические файлы (CSS, JS, значки) расположены в каталоге static.
  • Шаблоны: HTML-шаблоны расположены в каталоге templates.

Вклад

Приветствуются любые вклады! Не стесняйтесь отправлять запросы на включение изменений или открывать вопросы для сообщений об ошибках и предложений по функциям.

About

Simple Music Hosting and Streaming Service

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published