Newv3.47.7-tvos.1.11.2 · tvOS 15+

Flutter.
Now on Apple TV.

Build tvOS apps with the Flutter framework you already know. Open source, production-ready, and engineered to feel native on the largest screen in the room.

BSD 3-ClauseLicense Flutter 3.47.7Pinned 3.32.8Legacy line

A first-class toolchain, not a wrapper.

flutter-tvos ships a real platform embedder and a drop-in CLI: a custom Flutter engine for tvOS, an unmodified Flutter framework, and Apple TV treated as its own first-class build target with its own tvos/ project, Swift package graph, Info.plist and AppDelegate.

Drop-in CLI
Same create , run , build , devices commands you know. Same hot reload. Same DevTools. Targets tvOS. flutter-tvos use <version> switches release lines, each pinning a Flutter SDK and the engine built for it.
// flutter-tvos run -d <id>
Focus-first input
Siri Remote swipes and clicks flow through Flutter's standard Focus / Shortcuts / Actions . MFi game controllers and BT keyboards work too.
// no new widget tree
First-class tvOS target
Scaffolds a dedicated tvos/ project — its own Info.plist, AppDelegate and SceneDelegate on the UIScene lifecycle, a Swift package graph and a Podfile beside it. Federated *_tvos plugin model.
// Platform.isTvOS == true
Debug on a real Apple TV
Debug, hot reload and DevTools work on a physical Apple TV over the wireless tunnel — not just the Simulator. Release and profile ship AOT, Metal-only throughout. An Apple TV attaches over the network rather than over USB, so the attach is slower than a cabled iOS device and the Simulator stays the fast-iteration path.
// device debug · wireless tunnel
Ready for Xcode 27
Built with the tvOS 27 SDK, an app that does not use the UIScene lifecycle will not launch on tvOS 27 at all. New projects get scenes, and an unmodified existing runner is migrated on its next build — AppDelegate , scene manifest and storyboard.
// UIScene lifecycle
Ships to the App Store
Apple rejects an app whose embedded engine is not signed by the developer (ITMS-91065). flutter-tvos signs the engine on your machine with your own distribution certificate on every device build, and forwards an App Store Connect API key to xcodebuild on machines with no Xcode account signed in. Verified through TestFlight.
// signed engine · ITMS-91065
One-shot plugin porter
Run flutter-tvos plugin port on any iOS or macOS Flutter plugin from pub.dev, a local path, or git. The transformer widens platform guards ( #if os(iOS) → tvOS), strips tvOS-incompatible APIs, and emits a buildable *_tvos package ready to publish.
// flutter-tvos plugin port
25 federated plugins, on pub.dev
Published under the fluttertv.dev verified publisher: shared_preferences_tvos , video_player_tvos , path_provider_tvos , sqflite_tvos , audioplayers_tvos , url_launcher_tvos , and 19 more, including the Firebase family. flutter pub add and ship. 7 of them ship a Swift package; the rest are resolved through CocoaPods, which coexists with it in the same project.
// 25 ports · SPM + CocoaPods
Released by a train, on Codemagic
Every Flutter stable is picked up automatically: the pipeline decides whether the tvOS engine has to be rebuilt, ports the patch set, builds all six engine variants, publishes artifacts carrying their licence notices, bumps the CLI and gates the release on an end-to-end run: a real app on a tvOS simulator, and device builds compiled and checked. It runs on Codemagic , on Apple silicon, and the engine for a new Flutter release is usually published within days of it.
// detect · engine · publish · gate

Built by two engineers.

Independent contributors, deep in the Flutter and Apple platform stacks. PRs welcome.

Sasha Denisov
Flutter SDK contributor · RCU architecture
@DenisovAV
// Focus on Render-tree → UIKit bridge, the Remote Control Unit protocol, focus engine integration with Flutter's FocusManager .
Mehmet Ali Ustaoğlu
Principal maintainer · engine, build system, device support
@MAUstaoglu
// Focus on xcodebuild orchestration, code-signing pipeline, physical Apple TV deploy via xcrun devicectl , plugin registrant, native TextField bridge to the tvOS on-screen keyboard.

Five commands. You're shipping.

Clone the toolchain, run flutter-tvos run -d <device>, and your existing Flutter app boots on the Apple TV simulator or hardware. macOS, Xcode 15+ and CocoaPods required — Xcode 27 to target tvOS 27. Update in place with flutter-tvos upgrade.

$ git clone https://github.com/fluttertv/flutter-tvos.git $ cd flutter-tvos $ export PATH="$PATH:$PWD/bin" $ flutter-tvos precache $ flutter-tvos doctor