SYSTEM Cited by 1 source
Litho¶
What it is¶
Litho is Meta's open-source Android UI framework providing
declarative component-based layouts with asynchronous
layout calculation. It produces standard Android View /
RecyclerView objects under the hood but computes layouts off
the main thread using Yoga (Meta's C++ Flex layout engine)
to keep scroll smooth.
Upstream home: fblitho.com.
Why it matters for this wiki¶
Appcraft — Zalando's server-driven mobile UI framework — uses Litho as its Android layout substrate (Source: sources/2024-05-15-zalando-transitioning-to-appcraft-evolution-of-zalandos-server-driven-ui-framework). The Appcraft team chose it for the same reason they chose Texture on iOS: it sits on top of the native UI framework rather than replacing it — "a scrollable layout with Flex specifications on the server … into a RecyclerView for Android". This preserves access to new OS-version APIs and is the Android half of the Flex-on-top-of-native-UI-framework pattern.
Appcraft-specific role¶
- Accepts Flex layout specifications (from the server-sent Appcraft screen JSON).
- Internally uses Yoga — the same Flex engine that backs React Native layout — to compute positions + sizes asynchronously.
- Produces
RecyclerView/Viewobjects for display. - OS-level APIs and improvements in newer Android versions remain accessible.
Known risks¶
The Appcraft post flags third-party-library drift as a named open challenge: "iOS and Android libraries may behave differently, requiring additional customization or default code to achieve consistent functionality and user experience across both platforms." Litho + Texture are the named dependency pair; each ships its own idiosyncrasies per OS version.
Seen in¶
- sources/2024-05-15-zalando-transitioning-to-appcraft-evolution-of-zalandos-server-driven-ui-framework — Appcraft Android layout substrate, chosen as the sits-on-top-of-the-Android-View-system implementation to preserve OS-version API access.