Introduction
A complete stack for a modern cross-platform app and website
Takeout is a modern and incredibly robust starting point for building apps and websites that run on every platform - iOS, Android, and web, with React and React Native.
Cross-Platform Excellence
Unlike other cross-platform React Native stacks, Takeout lets you get a perfect 100 Lighthouse performance score on static or server-rendered pages, while still being able to share your entire setup - design system, styling, UI kit, routing, data, etc.
And like the best React Native apps, it also lets you use completely native UI elements specific to each platform as well, easily diverging per-platform as needed.
The Stack
This incredible ability to render truly high-quality web and native at once is only possible through the combination of two of our in-house pieces of technology: One and Tamagui.
Takeout goes further by integrating Zero, an incredible next-generation way to handle data. It makes building truly native-feeling apps easier than ever before, all while sharing every piece of code between native and web.
Performance
Takeout itself achieves some pretty hard feats of integration to achieve a high level of performance and quality. Beyond the deep work Tamagui made to enable high-level web features on native (without performance downside on web), and other hard-fought One features like enabling seamless routing between static, server-rendered, or client pages, Takeout has some impressive architecture.
Lighthouse Optimizations
Some examples of how Takeout achieves a perfect 100 Lighthouse score on static pages:
- leverages a bunch of new One features like
experimental_scriptLoading,inlineLayoutCSS,sitemapand more. - aggressively slims down and splits the initial JS bundle as well as possible
- replaces
react-native-webwith our own.react-native-web-litewhich is smaller and can tree shakes many unused parts. - while still using spring-based animations via Motion on app-like pages, it swaps for for the lighter Tamagui CSS driver on static ones.
- replaces heavy libraries with light ones via Vite’s easy aliasing.
Edit this page on GitHub.