Skip to content

Repository files navigation

IotaPlayer

License: GPL v3 Python 3.13+

A feature-rich desktop music player for Windows and Linux with Discord Rich Presence, YouTube integration, and powerful playlist management.

🎵 Features

  • 🎵 Playlist Management - Create, edit, and manage playlists with ease
  • 🎮 Playback Controls - Full media controls with keyboard shortcuts
  • 🎨 Modern UI - Dark/light themes with customizable accent colors
  • 🔗 Discord Integration - Rich Presence showing current song
  • 📺 YouTube Integration - Upload playlists and open videos
  • 🖼️ Cover Art - Automatic extraction and caching
  • 🔄 Auto Updates - In-app update system
  • 🎹 Media Keys - Full keyboard media key support

🚀 Quick Start

Windows

  1. Download from Releases
  2. Extract and run IotaPlayer.exe

Linux

# One-command installer
curl -O https://raw.githubusercontent.com/vorlie/IotaPlayer/main/linux_installer.sh
chmod +x linux_installer.sh
./linux_installer.sh install

From Source

git clone https://github.com/vorlie/IotaPlayer.git
cd IotaPlayer
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt --ignore-requires-python
python main.py

📖 Documentation

📚 Full Documentation Wiki

🖼️ Screenshots

View Screenshots
Main Window Playlist Maker Settings
Main Interface Playlist Maker Settings

🎯 Key Features

Playlist Management

  • Create and edit playlists with the built-in Playlist Maker
  • Load, reload, and combine playlists
  • Support for various audio formats (MP3, FLAC, OGG, WAV, M4A)

Playback & Audio

  • Standard controls: play, pause, stop, next, previous
  • Loop and shuffle modes
  • Seek bar for precise navigation
  • Volume control with slider
  • Media key support

Integrations

  • Discord Rich Presence - Show current song in Discord status
  • YouTube Integration - Upload playlists and open videos
  • MPRIS Support (Linux) - Desktop environment integration

User Interface

  • Song information display (artist, title, album, genre)
  • Dynamic window title updates
  • Customizable accent colors
  • Cover art extraction and caching
  • Modern settings dialog with organized tabs

🔧 System Requirements

  • Python 3.13+ (for source installation)
  • Windows 10/11 or Linux (Ubuntu, Debian, Arch, etc.)
  • GStreamer (Linux) or K-Lite (Windows) for audio playback
  • PyQt6 for the user interface

🛠️ Development

Prerequisites

  • Python 3.13+
  • Git
  • PyQt6 and dependencies

Setup

git clone https://github.com/vorlie/IotaPlayer.git
cd IotaPlayer
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt --ignore-requires-python
python main.py

Building

# Windows
pyinstaller IotaPlayerWIN.spec

# Linux
pyinstaller IotaPlayerLinux.spec

🤝 Contributing

We welcome contributions! Please see our Contributing Guide for details.

  • 🐛 Report bugs on GitHub Issues
  • 💡 Request features via GitHub Issues
  • 📝 Improve documentation in the wiki
  • 🔧 Submit pull requests for code improvements

📋 To-Do List

View our To-Do List on GitHub Projects

🙏 Acknowledgments

Special Thanks

Dependencies

📄 License

This project is licensed under the GNU General Public License v3. See the LICENSE file for details.


⭐ Star this repository if you find it useful!

📚 View Full Documentation

About

A feature-rich music player application with playlist management, playback controls, song information display, volume and progress tracking, Discord integration, and more.

Topics

Resources

Stars

Watchers

Forks

Releases

Sponsor this project

Used by

Contributors

Languages