jetc.dev Newsletter Issue #335

Published: 2026-10-20

This week, we explore Compose alpha and beta releases, plus a Compose Multiplatform patch release. We pixelate our composables and see how to get (possibly-pixelated) composables to render to PDFs. And we see another attempt to have Compose for Desktop “go native”.

Ooooo… What Did We Get?

Reviewing the release notes for the latest Jetpack Compose update!

The Compose alpha and beta BOMs were bumped to 2026.10.00. The core Compose artifacts got a 1.13.0-beta01, so we should get a 1.13 stable release before the end of 2026. The biggest change is that the libraries now target Kotlin 2.2 and require a compatible Kotlin compiler. Beyond that:

  • The Styles API now has a styleLayer(), allowing you to define layered styles, where higher layers’ properties take precedence over those from lower layers

  • PolygonShape has a few API changes

  • Posture is now WindowPosture

  • onValueChange is now a required parameter for Slider/VerticalSlider/RangeSlider

Compose Material3 is up to 1.5.0-beta01, with a few API changes.

Compose Material3 Adaptive got a bump to 1.4.0-alpha03, but the only noted change is increasing the lifecycle-runtime dependency to 2.10.0.

Remote Compose is up to 1.0.0-alpha21, adding RemoteTextMeasurerer, rsp extension properties, and more.

Wear Compose had 1.7.1 and 1.8.0-alpha01 releases. 1.7.1 contains a few bug fixes. 1.8.0-alpha01 begins the migration to the “System Status Bar” and adds pull-to-refresh.

Glance for Wear is up to 1.0.0-alpha20, with some changes to GlanceWearWidget and WearWidgetPreview.

Nav3 for Compose reached 1.3.0-alpha02, adding title and url properties to SceneInfo.

We also got:

  • androidx.navigationevent:navigationevent-compose:1.2.0 (and multiplatform targets)
  • androidx.paging:paging-compose:3.5.2 (and multiplatform targets)
  • androidx.paging:paging-compose:3.5.3 (and multiplatform targets)

Finally, JetBrains released Compose Multiplatform 1.12.2, with some bug fixes.

One Off the Stack, One Off the Slack

You’ve got questions. That’s understandable!

Why Can’t I Access Composables in androidApp in a KMP Project?

The answer boils “you are reading old examples but working on a newer implementation”. Your Compose code goes in shared/commonMain or other sub-modules of shared/, as we see in this week’s highlighted Stack Overflow question.

How Can I Render Composables to PDFs?

This has come up a lot over the years. The highlighted solution works for Kotlin/JVM, but note that there is a Compose Multiplatform alternative. Learn more, including how SkPDF might come into play in the future, in this week’s highlighted Kotlinlang #compose Slack thread.

Composable Commentary

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

Medium: Your Design System Is a Contract. Enforce It with Konsist and Android Lint

Ravi Rawal helps us reliably use a design system, with fewer occurrences of accidentally pulling in other things, like Material3. This post shows where Lint, Konsist, and tests can help with that enforcement.

Pixelating Composables in Compose Multiplatform

Joe Birch (Mastodon) demonstrates how to render composables in pixelated form, to offer more than a shimmer-style placeholder while still hiding the content. This can be useful for apps offering free/paid splits or subscription tiers.

Medium: Android dynamic colors for your own design system

Luca Fioravanti walks us through how to blend Android’s dynamic system colors and your own design system, powered by the Android Dynamic Colors library. This library includes synthesizing semantic resources on Android 12 and 13, helping the dynamic color system be more backwards-compatible.

Resource Roundup

100% pure code!

GitHub: bitsycore / compose-desktop-native

GitHub user bitsycore is working on a framework to allow Compose for Desktop apps to be packaged as native binaries, eliminating the JVM requirement.

GitHub: souravnoobcoder / roku-focus-list

Sourav Rawat brings us a Roku-style fixed-focus carousel for desktop and TV platforms: Android TV/Google TV/classic Fire TV (Android), Apple TV (tvOS), Samsung Tizen (via Web/Wasm). With this UX pattern, then focus area stays fixed, and the carousel scrolls behind it.

GitHub: ysmsm / nav3-uikit

Seungmin Yang is building a drop-in upgrade for Nav3 for Compose that lets iOS screens integrate with UINavigationController and UITabBarController, leaving other platforms alone. This gives you better system integration (e.g., system swipe-back) while maintaining the core Nav3 API.

Notable Releases

Compose Unstyled got bumped to 2.10.1, adding dismissOnClickOutside to DrawerPresentation.InPlace.

A Very Particular Set of Skills

Adding Compose capabilities to your coding agents!

Google released skills related to Jetpack Compose performance.

Also, Zain Khalid created Spyglass, a CLI and MCP server for allowing agents to get PNGs of @Preview composables on demand, for iterating over UI development.

Featured here? Please add this badge to your article or repo! As Seen In - jetc.dev Newsletter Issue #335

Powered by Buttondown

Or, you can subscribe to the Atom feed or follow Mark Murphy on Mastodon or Bluesky.

Spread the Word!
Suggestions?
If you have ideas for items for future newsletter editions, reach out via email or contact Mark Murphy on kotlinlang Slack!