jetc.dev Newsletter Issue #277

Published: 2025-08-10

It’s a short early issue this week, and there will not be an issue next week. Sometimes, life as a developer in a startup takes precedence, and this is one of those times!

But, this time around, we look at produceState() problems, the upcoming RetainedEffect(), and Compose Unstyled.

Composable Commentary

Posts, videos, and other new information related to Jetpack Compose!

Medium: What you might not know about produceState and Android Lifecycle

Jordi Coll Marin points out an issue with produceState(): while it is tied to the lifecycle of your composition, it is not tied to the lifecycle of your Activity. Jordi shows how to blend in LocalLifecycleOwner to help with this.

Medium: Previewing RetainedEffect: A New Side Effect to Bridge Between Composition and Retention Lifecycles

Jaewoong Eum (Mastodon, Bluesky) continues an exploration of new “retain” capabilities forthcoming in Compose, following on from last week’s post. This time, the focus is on RetainedEffect(), an effect wrapper around the retain() API that provides a longer-lived counterpart to LaunchedEffect() and DisposableEffect().

remember vs rememberSaveable: deep dive into state management and recomposition in Jetpack Compose

Jaewoong Eum (Mastodon, Bluesky) has been very busy, also contributing a post on the RevenueCat blog walking us through the differences between remember() and rememberSaveable(), including a peek at SaveableHolder.

Compose Unstyled: The missing Design System layer for Compose UI

Alex Styl (Bluesky) has been building out the Compose Unstyled framework for a while, to make it easier for developers to build Material-free design systems. This includes both a suite of components as building blocks and a token-based theme engine to use for describing your design system’s look.

Exploring Material 3 for Compose: Large Top App Bar

Joe Birch (Mastodon) has been touring Material 3, and this time turns some attention to LargeTopAppBar(). This can be used for the “collapsing app bar” pattern, with customizable rules for transitioning between the collapsed and expanded states.

Resource Roundup

100% pure code!

ComposeFlow

ComposeFlow is an LLM-powered open source UI builder for Compose Multiplatform.

GitHub: Kyant0 / Capsule

“Capsule is a Jetpack Compose library that creates G2 continuous rounded corner shapes.”

Notable Releases

The Google Maps team released 6.7.1 of Maps for Compose, bringing back rememberMarkerState().

Compose WebView Multiplatform is up to 2.0.2, with some iOS improvements.