Building a component library in Compose for a large-scale banking application
summary
Large bank UI team migrates to Jetpack Compose by wrapping Material to match Efemeria Design, mapping custom color/typography/shape classes and using composition locals for theme injection; the design system supports 30 color palettes and loyalty-program permutations. Release and testing use a Nexus-hosted Maven, local substitution and Maven Local, with CI-friendly UI tests via Paparazzi screenshot tests, accessibility render extensions, Showcase (Airbnb) for generated component APKs, Robolectric for JVM UI tests, KSP, and static checks from compositionLocalProvider and Jetpack Compose Rules to catch common recomposition mistakes.
AI-written summary · about
chapters (12)
- 0:00Introduction and agenda
- 1:54About DMB Bank
- 4:24Starting Jetpack Compose initiative
- 7:54Efemeria design system overview
- 10:03Building component library structure
- 15:14Defining component library purpose
- 19:44Ensuring banking level quality
- 24:37Testing and preview strategies
- 27:03Code quality and static checks
- 28:46Release and dependency management
- 30:33Key learnings and challenges
- 32:16Final takeaways and closing
related talks
39mRe-Compose your UI: building an atomic design library
25mFrom Design Systems to Component Libraries
41mImplementing a Design System in Compose
38mDesigning scalable Compose APIs
26mBlueprint for Architecting a Scalable Component Library
40mArchitecture Design for Design Libraries
24mCase Study: Creating a Component Library in React JS
26mLearnings from building a component library
