The NFL has three React Native mobile apps: NFL, NFL Fantasy, and NFL Network. React Native also powers connected TV apps on Apple TV, Fire TV, Android and Google TV, LG, Vizio, and Xbox; Roku has a separate codebase. The React Native video player is used in the mobile apps, NFL.com, and team websites.
React Native at Scale With NFL
Speaker
Michael, director of engineering at the NFL, joins Mike from Callstack on React Universe On Air to discuss how the NFL uses React Native across mobile, web, and connected TV.
The web team was adopting React when Michael joined, and the NFL launched React Native as a new project at the end of 2017, aiming to ship before the 2018 season. Web and native teams combined to build the app, CI, and native integrations. The team chose React Native Web for shared web targets and a monorepo to bring related projects together.
The NFL has built two new versions of its flagship app, using each as a chance to revisit technical choices and product direction. The first combined separate iOS and Android apps; the later version reflected the shift to NFL+. Teams kept the live app running around season deadlines while focusing resources on the new version.
The apps began as bare React Native projects because key needs such as video and analytics required native code. After App Center's shutdown, the team adopted Expo tools, including EAS Build and Expo Fingerprint, while keeping some existing native libraries and custom functionality. GitHub Actions, Yarn 4, and custom scripts help choose which builds to run for changes.
Michael recommends a monorepo and sharing code beyond iOS and Android where it fits the product. For the NFL, React Native Web and connected TV support helped teams deliver across screens with shared components. He says React Native can serve major TV platforms as well as mobile and web.
Takeaways
- A monorepo can help coordinate shared components and code across mobile, web, and TV products.
- Keep native engineers involved when the app depends on platform code or specialized SDKs.
- Treat greenfield rewrites as chances to revisit product direction as well as technical choices.
- Plan release work around immovable business deadlines, and keep the live app maintained while building its successor.
- Adopt build tools and libraries selectively; existing native modules can coexist with Expo.
Mentioned in this talk
CallstackSearch inside this talk
What was claimed 20
- usesNFL uses React Native Web
“We use it across our video player, website, and connected TV applications for web targets.”
YouTube Unverified1 source· Talk
- works at
“I've been here for a little over eight and a half years.”
YouTube Unverified1 source· Talk
- role at
“I'm director of engineering at the NFL.”
YouTube Unverified1 source· Talk
- usesNFL uses React Native
“video player, which is cross-platform and uses React Native”
YouTube Unverified2 sources· Talk
- metricNFL: Three mobile apps: NFL, NFL Fantasy, and NFL Network
“We have three different mobile apps right now built with React Native.”
YouTube Unverified1 source· Talk
- builtNFL built NFL mobile apps
“We have three different mobile apps right now built with React Native: NFL, NFL Fantasy, and NFL Network.”
YouTube Unverified1 source· Talk
- uses
“We’re currently available on Roku, which has its own codebase.”
YouTube Unverified1 source· Talk
- uses
“we initially used Haul instead of Metro”
YouTube Unverified1 source· Talk





