π One Click To Scrape Your Entire Library as MP3βs
A simple self-hosted Docker application that lets you upload your Apple Music Library.xml file and automatically downloads your entire music library as high-quality MP3s using the CLI-Music-Downloader.
# Install Apple Sider
pip install apple-sider
# Install and set up
apple-sider install
# Start the service
apple-sider start
# Clone the repository
git clone https://github.com/jordolang/Apple-Sider.git
cd Apple-Sider
# Start Apple Sider (builds and runs automatically)
./start.sh
# Build and run with Docker Compose
docker-compose up -d
# Or with plain Docker
docker build -t apple-sider .
docker run -p 8080:8080 -v ~/Music/Apple-Sider:/app/downloads apple-sider
Thatβs it! Apple Sider will be available at http://localhost:8080
After installing with pip, you can use the apple-sider
command:
# Install Apple Sider
apple-sider install
# Start services
apple-sider start
# Check status
apple-sider status
# View logs
apple-sider logs
# Stop services
apple-sider stop
# Restart services
apple-sider restart
# Update to latest version
apple-sider update
# Show configuration
apple-sider config show
# Edit configuration
apple-sider config edit
# Get help
apple-sider --help
Library.xml
Library.xml
fileApple Sider can be configured through the web interface or by editing config/config.json
:
~/Music/Apple-Sider
(customizable)Artist-Song.mp3
) or Nested (Artist/Song.mp3
)Apple-Sider/
βββ apple_sider/ # Python package
β βββ __init__.py # Package initialization
β βββ core.py # Core application logic
β βββ cli.py # Command-line interface
βββ app/
β βββ app.py # Flask backend application
β βββ parser.py # Library.xml parser
β βββ config.py # Configuration management
β βββ downloader.py # Download queue manager
β βββ static/
β βββ index.html # Single-page web interface
β βββ style.css # Apple-inspired styling
β βββ app.js # Frontend JavaScript
βββ config/
β βββ config.json # Runtime configuration
βββ docker-compose.yml # Docker Compose setup
βββ Dockerfile # Container definition
βββ requirements.txt # Python dependencies
βββ setup.py # pip package setup
βββ pyproject.toml # Modern Python packaging
βββ config.example.json # Configuration template
βββ start.sh # Enhanced start script
# Start Apple Sider
apple-sider start
# Check status
apple-sider status
# View logs in real-time
apple-sider logs
# Stop the service
apple-sider stop
# Restart after config changes
apple-sider restart
# Update to latest version
apple-sider update
# Configuration management
apple-sider config show
apple-sider config edit
apple-sider config reset
# Start Apple Sider
./start.sh up
# View logs in real-time
./start.sh logs
# Stop the service
./start.sh stop
# Restart after config changes
./start.sh restart
# Update to latest version
./start.sh update
# Show status and health
./start.sh status
# Open shell in container for debugging
./start.sh shell
# Stop and remove everything
./start.sh down
# Clean up all data
./start.sh clean
Apple Sider works on:
The enhanced start script automatically detects your platform and provides appropriate installation instructions.
~/Music/Apple-Sider/
βββ The Beatles-Hey Jude.mp3
βββ Queen-Bohemian Rhapsody.mp3
βββ Pink Floyd-Comfortably Numb.mp3
βββ Taylor Swift-Shake It Off.mp3
~/Music/Apple-Sider/
βββ The Beatles/
β βββ Hey Jude.mp3
β βββ Yellow Submarine.mp3
βββ Queen/
β βββ Bohemian Rhapsody.mp3
β βββ We Will Rock You.mp3
βββ Pink Floyd/
βββ Comfortably Numb.mp3
βββ Wish You Were Here.mp3
Web interface not loading:
# Check if container is running
apple-sider status
# Check logs for errors
apple-sider logs
Downloads failing:
Large libraries timing out:
# Stop services
apple-sider stop
# Reset configuration
apple-sider config reset
# Start fresh
apple-sider start
# Stop and remove all containers and data
./start.sh clean
rm -rf config/
rm -rf ~/Music/Apple-Sider/
# Start fresh
./start.sh up
Performance varies based on:
git checkout -b feature-name
git commit -am 'Add feature'
git push origin feature-name
This project is licensed under the MIT License - see the LICENSE file for details.
If you find Apple Sider useful, please:
Happy downloading! π΅