Files
haos-hacs-integration-media…/README.md
alexei.dolgolyov e26df64e4b Refactor project into two standalone components
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>
2026-02-04 14:36:23 +03:00

90 lines
4.0 KiB
Markdown

# 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](media-server/) | REST API server for your PC | `media-server` |
| [HAOS Integration](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)
```bash
cd media-server
pip install -r requirements.txt
python -m media_server.main
```
See [Media Server README](media-server/README.md) 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](haos-integration/README.md) 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