PlayBridge is an open-source Android application suite that bridges the gap between your phone and Android TV. Use PlayBridge to play what you want without the troubles of a clunky TV browser. Find your content on your phone, and seamlessly bridge it to your big screen.
Warning
PlayBridge is in alpha. It's under active early development — expect bugs, incomplete features, and breaking changes between releases. Feedback and issue reports are very welcome.
Browse & cast from your phone
| Console hub | Library & discovery | Built-in browser |
|---|---|---|
![]() |
![]() |
![]() |
Your phone is the remote
| Now playing | Touchpad · D-Pad · Keyboard |
|---|---|
![]() |
![]() |
- Send to TV: Push URLs and content from your phone to your TV.
- TV Controls: Use your phone as a remote control for the TV browser and player.
- Browser: A fully functional web browser on your phone that syncs with your TV.
- Open Source: Built with privacy and transparency in mind.
- Android TV / Fire TV (Receiver):
- Open the Downloader app on your TV and enter code
9557748to download and install the TV Player release directly. - Alternatively, download the latest receiver APK from the Releases page and install it.
- Note: On first launch, the TV app will request Bluetooth permissions (used for nearby discovery/pairing) and "Display over other apps" (System Alert Window) permissions. These are required for receiver services to run reliably in the background.
- Open the Downloader app on your TV and enter code
- Android Phone (Sender):
- Download the latest sender APK from the Releases page and install it on your mobile device.
- Connect both your phone and Android TV to the same local Wi-Fi network.
- Open the PlayBridge app on your TV. It will display a "Ready to Cast" landing screen.
- Open the PlayBridge app on your phone, and tap the Cast icon in the top bar or menu to open the Connection screen.
- The phone app will scan the network and display your TV. Tap its name to connect.
- If the TV is not auto-discovered: Tap "Manual Connect" on the phone and enter the TV's IP address (displayed on the TV's screen).
- A pairing request will appear on the TV. Select Allow using your TV remote.
- Once connected, browse any video website using the phone app's built-in web browser. Play a video, and tap the cast option when it detects the stream to play it on the TV!
PlayBridge is a monorepo; each component has its own README:
- Phone App (
mobile/) — the sender: browses the web, detects videos, and controls the TV. - TV App (
tv/) — the receiver for Android TV (plus a tvOS variant): plays content and hosts a web browser. - Desktop App (
desktop/) — a Flutter desktop receiver that plays casts via libmpv. - Browser Extension (
extension/) — a Firefox extension that casts media from desktop browser tabs. - Shared Module (
shared/) — Kotlin Multiplatform logic, player engines, and protocol bindings. - Protocol (
protocol/) — protobuf wire-format definitions (git submodule).
Comprehensive project documentation is available:
- Design System: Visual language, color tokens, typography, and component specifications.
- Contributing: Setup instructions and contribution guidelines.
- Security Policy: Security considerations and vulnerability reporting.
- Android Studio Ladybug or later
- JDK 17+
- Android SDK 26+
To build the APKs:
# Build Phone App
cd mobile/android && ./gradlew :app:assembleDebug
# Build TV App
cd tv/android && ./gradlew :player:app:assembleDebugContributions are welcome! Please follow these steps:
- Fork the repository.
- Create a feature branch.
- Commit your changes.
- Open a Pull Request.
For detailed instructions, see CONTRIBUTING.md.
This project is built with the help of AI-assisted tools. We welcome similar contributions, provided you take full ownership of the code you submit. Every pull request—regardless of the tools used—is subject to the same standard of review and testing.
- Responsibility: You must fully understand, test, and be able to explain all parts of your changes.
- Reviewability: Keep PRs focused and readable. Avoid large, undocumented dumps of generated code.
PlayBridge was inspired by — and learned from — these excellent open-source projects. Huge thanks to their authors and communities:
All trademarks and copyrights belong to their respective owners.
This project is licensed under the GNU General Public License v3.0 (GPLv3). See the LICENSE file for details.
It also bundles third-party software under their own (GPLv3-compatible) licenses — including GeckoView (MPL-2.0), FFmpeg and mpv/libmpv (LGPL/GPL), and uBlock Origin (GPL-3.0). See THIRD_PARTY_LICENSES.md for the full list.
For questions, feedback, or support, please reach out to us at playbridgeapp@gmail.com.
For security-related issues, please refer to our Security Policy.





