jetc.dev Newsletter Issue #321

Published: 2026-07-07

This week, we start off with some bug fixes to Compose and updates to related libraries. We look at Nav3 migrations, Grid(), and effects. And we see somebody creating an alternative Compose for Desktop renderer, to get away from AWT/Swing.

Ooooo… What Did We Get?

Reviewing the release notes for the latest Jetpack Compose update!

The Compose BOMs are up to 2026.06.01. The production BOM mostly points to 1.11.4. The beta BOM points generally to 1.12.0-beta02. Both appear to be mostly bug fixes.

Compose Material3 is up to 1.5.0-alpha23. They added an expressive timepicker component, not to be confused with a timepicker that be all like 😑. They also added “new non-interactive variants of standard list item and segmented list item which follow Material Expressive specifications” and fixed bugs.

Remote Compose has reached 1.0.0-alpha14. RemoteDocumentPlayer now has a typefaceResolver, and they added RemoteDensityBehavior.

Glance is out with 1.3.0-alpha02 with several additions and changes.

Glance for Wear OS is up to 1.0.0-alpha13, principally about changes to squircle behavior, because of course.

Wear Compose has reached 1.7.0-alpha05, with lots more stuff for one-handed gestures.

Nav3 has 1.1.4 and 1.2.0-alpha05. And we also got these Compose-related updates:

  • androidx.camera:camera-compose:1.7.0-alpha02
  • androidx.camera.viewfinder:viewfinder-compose:1.7.0-alpha02
  • androidx.fragment:fragment-compose:1.9.0-alpha02
  • androidx.hilt:hilt-lifecycle-viewmodel-compose:1.4.0
  • androidx.hilt:hilt-navigation-compose:1.4.0
  • androidx.navigation:navigation-compose:2.10.0-alpha06 (and multiplatform targets)
  • androidx.navigation:navigation-fragment-compose:2.10.0-alpha06
  • androidx.navigationevent:navigationevent-compose:1.2.0-alpha01 (and multiplatform targets)
  • androidx.pdf:pdf-compose:1.0.0-alpha19
  • androidx.photopicker:photopicker-compose:1.0.0-alpha02

Composable Commentary

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

Migrating App to Navigation 3: Pain, Overtimes, and Hotfixes

Tetiana Synytsyna’s team ported 170+ screens from Navigation 2 to Navigation 3. While it went smoothly overall, there were issues along the way, and this post outlines them and how the team addressed them.

Medium: Build Complex 2D Layouts With the New Compose Grid

Reza Ramesh relishes the fact that with the experimental Grid() composable that we finally have a first-class non-lazy 2D layout component. Reza walks through the comparison with CSS Grid, gives us a tour of the track/gap/cell structure, and demonstrates the Grid() DSL.

Medium: Adding Dark Mode to Google Maps in Jetpack Compose

Carlos Mota (Bluesky) illustrates how to teach Maps for Compose about your light/dark theme system, given that Maps for Compose wraps a MapView and by default is oblivious to whether your app wants a light or dark set of map tiles.

DrawBox Goes Multiplatform

Akshay Sharma maintains DrawBox, a Compose library for drawing on a canvas. In this post, Akshay explained the migration process from a Compose for Android library to full Compose Multiplatform support, and points out the benefits gained from that work beyond broader platform support.

Fun With Sliders and Compose

Ahmed El-Helw (Mastodon) explores a few options for implementing a particular UI pattern: a slider with adjacent buttons, where those buttons vanish while the slider is being manipulated by the user. As is often the case, the simple solutions do not work quite right and the right solution will require more work to be fully production-ready.

Inside Compose Side Effects: RememberObserver and the Composition Lifecycle

Jaewoong Eum (Mastodon, Bluesky) continues his exploration of the innards of Compose, this time explaining how effect handlers work. Along the way, we see how a key affects how we remember and why we pay a coroutine price for these handlers… unless we are careful.

Resource Roundup

100% pure code!

GitHub: sargunv / compose-glfw

Sargun Vohra (Mastodon) is working on an experimental alternative Compose for Desktop host, using GLFW instead of AWT/Swing, in an effort to improve the UX on Linux.

GitHub: HoltChas / focus-trail

GitHub user HoltChas is building a focus indicator library for TV targets, including both views and composables. This includes animated effects on focus borders for focused elements.

GitHub: RotemBar18 / GuideFlow

GitHub user RotemBar18 offers us a Firestore-backed set of in-app tutorials (tooltips, spotlights, modals, etc.) for Compose for Android, including a companion authoring portal.

GitHub: Shahidzbi4213 / GeoQibla

Shahid Iqbal brings us a Compose Multiplatform Qibla compass screen, supporting Android and iOS.

GitHub: Kratos1996 / EasyNiddle

Ishant Sharma created a DSL for Nav3 for Compose, offering results delivery, Hilt support, integrated logging, and more.

A Very Particular Set of Skills

Adding Compose capabilities to your coding agents!

Just one new skill this week: GitHub: mfskys / md3e-skill.