e26df64e4b4c055d9ef43680e1c2c1f7777b66a6
Split monorepo into separate units for future independent repositories: - media-server/: Standalone FastAPI server with own README, requirements, config example, and CLAUDE.md - haos-integration/: HACS-ready Home Assistant integration with hacs.json, own README, and CLAUDE.md Both components now have their own .gitignore files and can be easily extracted into separate repositories. Also adds custom icon support for scripts configuration. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Remote Media Player
Control your PC's media playback from Home Assistant.
This monorepo contains two separate components designed to be split into independent repositories:
Components
| Component | Description | Future Repository |
|---|---|---|
| Media Server | REST API server for your PC | media-server |
| HAOS Integration | HACS-ready Home Assistant integration | haos-remote-media-player |
Overview
┌─────────────────────┐ HTTP/WebSocket ┌─────────────────────┐
│ Home Assistant │◄────────────────────────►│ Your PC │
│ │ (Token Auth) │ │
│ ┌───────────────┐ │ │ ┌───────────────┐ │
│ │ Media Player │ │ │ │ Media Server │ │
│ │ Entity │ │ │ │ (FastAPI) │ │
│ └───────────────┘ │ │ └───────┬───────┘ │
│ ┌───────────────┐ │ │ │ │
│ │ Script Button │ │ │ ┌───────▼───────┐ │
│ │ Entities │ │ │ │ Media Control │ │
│ └───────────────┘ │ │ │ - Windows │ │
│ │ │ │ - Linux │ │
└─────────────────────┘ │ │ - macOS │ │
│ │ - Android │ │
│ └───────────────┘ │
└─────────────────────┘
Features
- Play/Pause/Stop media
- Next/Previous track
- Volume control and mute
- Seek within tracks
- Display current track info (title, artist, album, artwork)
- Real-time updates via WebSocket
- Script buttons (shutdown, restart, lock, sleep, hibernate, custom)
- Secure token-based authentication
Quick Start
1. Set up the Media Server (on your PC)
cd media-server
pip install -r requirements.txt
python -m media_server.main
See Media Server README for detailed instructions.
2. Set up Home Assistant Integration
Copy haos-integration/custom_components/remote_media_player/ to your HA config folder, or install via HACS.
See HAOS Integration README for detailed instructions.
Project Structure
/
├── media-server/ # Standalone Media Server
│ ├── README.md # Server documentation
│ ├── requirements.txt # Python dependencies
│ ├── config.example.yaml # Example configuration
│ └── media_server/ # Python package
│ ├── main.py # Entry point
│ ├── routes/ # API endpoints
│ ├── services/ # Platform media controllers
│ └── service/ # Service installers
│
├── haos-integration/ # HACS-ready HA Integration
│ ├── README.md # Integration documentation
│ ├── hacs.json # HACS configuration
│ └── custom_components/
│ └── remote_media_player/ # Integration code
│
└── README.md # This file
License
MIT License
Description
Languages
Markdown
100%