jetc.dev Newsletter Issue #303
Published: 2026-02-24
This week, we look at reducing development friction, rendering line graphs, and replacing ViewModel with retain.
We also see an IDE plugin with Compose Multiplatform resource helpers and a Compose Multiplatform
syntax highlighter that supports TextMate’s 600+ languages.
Composable Commentary
Posts, videos, and other new information related to Jetpack Compose!
Jetpack Compose and the Speed of Thinking
Annyce Davis (Mastodon, Bluesky) writes about how Compose reduced the mental friction involved in Android app development, friction that many developers and teams had simply written off as “the cost of doing business”. Reducing that friction can deliver better results, as you spend less time fighting the platform and more time focusing on what you are supposed to be delivering.
Medium: Creating Custom Line Graphs in Jetpack Compose & Kotlin Multiplatform | Compose Multiplatform
Medium user Developer Chunk describes how to use the author’s JetCo library
for rendering charts and graphs in Compose Multiplatform. In particular, it explores many of
the configuration options for the LineGraph() composable, including configurations for the lines,
points, shaded areas, axes, and more.
Goodbye ViewModel. Hello retain!
Abhi explores how the new retain APIs in Compose can help eliminate pointless viewmodels, allowing
presenters and other items to be directly injectable into composables.
Other Interesting Links
- Building StickerExplode(Part 1): Gestures, physics, and making stickers feel real
- How to Confidently Test Jetpack Compose UI with Espresso
- Medium: How does Compose’s rendering pipeline work under the hood?
- Medium: How Keyboard actions handling can trick you in Jetpack Compose
- Medium: Jetpack Compose MeasurePolicy Explained
- Medium: Jetpack Compose Navigation 3: The Hidden Trap of State Loss (and How to Fix It)
- Medium: KMP vs CMP — The Difference Most Developers Don’t Understand (Yet)
- Medium: Master Adaptive Layouts in Compose Multiplatform: Build Truly Responsive UIs
- Medium: Mastering BoxWithConstraints in Jetpack Compose: Build Truly Responsive UIs
- Medium: MVI with Jetpack Compose: Keep Your App Simple and Clean
- Medium: State Hoisting in Jetpack Compose: Why Your UI Needs a ViewModel
- Medium: What I Learned Implementing LazyHorizontalStaggeredGrid on a Real Android Project
- Video: Perfecting the Wait: Loading Animations with Kinnera Priya Putti
Resource Roundup
100% pure code!
GitHub: jordond / compose-resources-kit
Jordon de Hoog is building an IDE plugin for IDEA/Android Studio that helps with various Compose Multiplatform development annoyances related to resources, from missing resource accessors to mismatched format specifiers or argument counts in string resources.
GitHub: ivan-magda / kotlin-textmate
Ivan Magda is working on a new TextMate-compatible source code tokenizer for Compose for Android
(with possible future Compose Multiplatform support). This includes a CodeBlock() composable
for rendering the tokenized results with syntax highlighting.
GitHub: shaunburch / switchkraft
Shaun Burch
(Mastodon)
created a Form() composable that gives you separate view and edit renditions
of the same form content, with revert and commit support.
GitHub: rootachieve / Koraph
GitHub user rootachieve offers us a library for rendering node/link diagrams (graphs) in Compose Multiplatform (supports Android, iOS, Web/JS, and Web/Wasm).
Other Interesting Links
- GitHub: anwarpro / mvvmate (MVI framework for Compose Multiplatform)
- GitHub: kalist28 / bubbles-compose (design system for Compose Multiplatform)
- GitHub: kdroidFilter / Nucleus (installer for Compose for Desktop apps)
- GitHub: PhysicsBox (composables as 2D physics bodies for Compose Multiplatform)
Notable Releases
Circuit is up to 0.33.1. It adds a hook
to allow you to override the LocalRecordLifecycle, adds an option to initialize a nav stack from
an existing snapshot, and includes other bug fixes and improvements.
Recent Issues:
- 2026-02-17: Compose patch release and alpha release! Compose Multiplatform patch release! Bottom sheets! Colors and accessibility! And... can we work with Glance?!?
- 2026-02-10: AI! Orchestration composables! Stability! Instant Compose!
- 2026-02-03: It's the tri-centennial issue! Bug fixes! Dials! onGloballyPositioned! APK slimming! And... can we have a slice of a font?!?