A Roku-inspired, elegant launcher for Windows streaming apps and HTPC media centers. Queue provides a beautiful, customizable interface to manage and launch your favorite streaming services and applications.
- Roku-inspired design with sleek, modern aesthetics
- Customizable backgrounds - choose from included images or use your own
- Four tile sizes - Small, Medium, Large, Extra Large
- Auto-scaling - Adapts to any screen resolution (1080p to 4K)
- Dark theme optimized for viewing at a distance
- Automatic Windows Store app scanning - Finds your installed streaming apps
- UWP app support with multi-tier launch fallback
- Custom app management - Add, edit, or remove apps
- Auto-detection of popular services:
- Netflix, Disney+, Hulu, Prime Video
- Apple TV, Spotify, Twitch, Pandora
- Pluto TV, Tubi, Kodi, ESPN, and more
- Keyboard/controller support - Navigate with arrow keys or gamepad
- Auto-hiding cursor - Clean, distraction-free experience
- Settings tile - Customize your launcher appearance and behavior
- Exit confirmation - Prevent accidental closures
- Custom backgrounds - Gradient or image backgrounds
- Tile size adjustment - Four sizes with automatic scaling
- Clock format - 12-hour or 24-hour display
- App-specific icons - Customize tile images for each app
- Color themes - Brand-accurate colors for each service
- Python 3.8 or higher
- Windows 10/11 (Windows Store app support requires Windows)
-
Clone the repository:
git clone https://github.com/yourusername/Queue.git cd Queue -
Install dependencies:
pip install PyQt6
-
Run the launcher:
python Queue.py
Queue/
├── Queue.py # Main entry point
├── main_window.py # Core UI and window management
├── app_launcher.py # Application launching logic
├── app_scanner.py # Windows Store app detection
├── config_manager.py # Configuration persistence
├── constants.py # App definitions and styling
├── dialogs.py # Settings and dialogs
├── widgets.py # Custom UI components
├── logger.py # Logging utilities
├── tiles/ # App tile images
├── backgrounds/ # Background images
└── agents/ # AI agent specifications
On first run, Queue will:
- Scan for installed Windows Store apps
- Create a grid layout with detected apps
- Add a Settings tile for customization
- Arrow Keys / D-Pad - Navigate between tiles
- Enter / Start - Launch selected app
- Esc / Back - Open exit confirmation
Press Enter on the Settings tile to access:
- UI Settings - Background image, tile size, clock format
- Windows Apps - View, edit, or remove installed apps
- Add Apps - Scan for and add Windows Store apps
- Navigate to Settings → Add Apps
- Choose "Auto Search" to scan all apps
- Select apps to add and click "Add Selected Apps"
- Place images in the
backgrounds/folder - Go to Settings → UI Settings → Background
- Select your custom image
Supported formats: .jpg, .png, .webp
For best results, use:
- Format: PNG with transparency (recommended) or SVG
- Size: 900 × 504px (2× Extra Large for high-DPI)
- Aspect Ratio: 16:9
See TILE_IMAGE_GUIDELINES.md for detailed specifications.
Settings are saved in queue_config.json:
{
"background_image": "backgrounds/Custom.jpg",
"tile_size": "Medium",
"clock_format": "12-hour",
"custom_apps": [
{
"name": "Netflix",
"path": "shell:AppsFolder\\4DF9E0F8.Netflix_mcm4njqhnhss8!Netflix",
"color": "#e50914",
"icon_path": "netflix.png"
}
]
}Queue automatically detects and supports these streaming services:
- Netflix
- Disney+
- Hulu
- Amazon Prime Video
- Apple TV
- Spotify
- Twitch
- Pandora
- Pluto TV
- Tubi
- Kodi
- ESPN
- NBC Sports
- Crunchyroll
- Amazon Music
- Classic Movies
- And many more!
Queue uses a modular architecture:
- Queue.py - Entry point and app initialization
- main_window.py - UI layout and navigation
- app_launcher.py - Launch logic for UWP and Win32 apps
- app_scanner.py - PowerShell-based app detection
- config_manager.py - JSON configuration handling
- constants.py - Centralized app definitions and styling
To add support for a new streaming service:
-
Edit
constants.py:TARGET_APPS = { "Your Service": { "patterns": [r"YourServicePattern"], "color": "#YourColor" } }
-
Add a tile image to
tiles/folder
Logs are saved in the logs/ directory with timestamps:
- Application startup
- App scanning results
- Launch attempts
- Error messages
- Media file playback support
- Game ROM launcher
- Theme marketplace
- Multi-monitor support
- Advanced search functionality
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
- Inspired by Roku's elegant interface
- Built with PyQt6
- Designed for HTPC enthusiasts
For issues, questions, or feature requests, please open an issue on GitHub.
Made with ❤️ for HTPC enthusiasts