jetc.dev Newsletter Issue #322
Published: 2026-07-14
This week, we look at SubcomposeLayout(), TV Compose, and Nav3. In addition, we look at a filter bar implementation, along with a settings screen DSL. Plus, we take a couple of peeks at folks trying to improve the performance of Compose for Desktop.
Ooooo… What Did We Get?
Reviewing the release notes for the latest Jetpack Compose update!
Media3 got an update to 1.11.0-beta01, which means we got Compose-related updates:
androidx.media3:media3-ui-compose:1.11.0-beta01androidx.media3:media3-ui-compose-material3:1.11.0-beta01
One Off the Stack, One Off the Slack
You’ve got questions. That’s understandable!
Can We Make Compose for Desktop Better?
What starts as a “please nuke AWT” rant turned into an exploration of cold-start times for desktop apps, why modern Macs are “too good”, and whether we should all just vibe-code for the Web instead.
Composable Commentary
Posts, videos, and other new information related to Jetpack Compose!
Inside SubcomposeLayout: Jetpack Compose’s Most Misunderstood API
Shreyas Patil
(Mastodon, Bluesky)
takes a deep dive into SubcomposeLayout(), when and where you might prefer to use it over BoxWithConstraints(), and what its strength is (controlling the emission of nodes based on previous nodes).
Medium: I Built JetBrains’ Official Liquid Glass Setup, Then Deleted It
Shiva Thapa tried to do things JetBrains’ way, having Compose Multiplatform delegate rendering a Liquid Glass nav bar to SwiftUI. That had a side effect of delegating navigation itself to SwiftUI, and this post demonstrates an alternative approach if you want to keep navigation more on the Compose Multiplatform side of your app.
Medium: Adaptive UI in Jetpack Compose: A Practical Guide for Phones, Foldables, and Tablets
Adegboye Oluwatayo Emmanuel walks us through window classes and how our code can leverage them to offer different navigation and content based upon the available screen width, focusing on Compose for Android.
Medium: Improve Jetpack Compose TV scrolling performance
TV Compose is challenging, not only because it breaks our typical UX pattern by being keypad-focused, but also because Android TV devices tend to be under-powered compared to phones and tablets. Rahul Baboria offers advice for how best to measure jank for TV apps and tricks for being able to address that jank, especially for scrolling operations.
Navigation 3 in Jetpack Compose: The Back Stack Is Just State
The classic View system tended towards having stateful UI elements, while Compose tries to move to a stateless model. Victor Brandalise points out that the distinction between Nav2 and Nav3 is similar and what moving the state into our control means from a practical standpoint.
Introducing Composables CLI
Alex Styl (Bluesky) writes about Composables CLI, a combination project/module generator and documentation hub, focused on the Composables UI framework for its user interface. It makes the documentation available via the command line, either in simple CLI invocation or as an MCP server for use by coding agents.
Other Interesting Links
- Giving Shapes to Images with SVG Clipping in Jetpack Compose
- Medium: 5 Ways to Make LazyColumn Actually Fast
- Medium: Android and iOS Public Transportation Timetable App with MapLibre Compose Part 2.
- Medium: Building a Beautiful Animated Bottom Navigation Bar for Jetpack Compose
- Medium: Event based Navigation In MultiModule Android Project
- Medium: Four Ways to Avoid Prop Drilling in Jetpack Compose
- Medium: Gradual Migration from Flutter to Compose Multiplatform
- Medium: How Compose Multiplatform Helped Me Turn My Existing Android App Into an iOS App
- Medium: Jetpack Compose CompositionLocal Deep Dive: Internals, Performance, and Best Practices
- Medium: Jetpack Compose Under the Hood: Performance Optimization & Stability Tuning
- Medium: Mastering Jetpack Compose Runtime, State & Effects
- Medium: Material Defaults Are a Starting Point Your Codebase Mistook for a Finish Line
- Medium: Mirage: Cloudy Grows from a Blur Library into a Graphics Effect Library
- Medium: The Material 3 Segmented List API Is a Game Changer
- Medium: Understanding the Slot Table in Jetpack Compose
- Medium: Your Compose UI Has Bugs Your Eyes Can’t See — Here’s How to Catch Them Automatically
Resource Roundup
100% pure code!
GitHub: daniimazh-dev / ComposeSettingsBuilder
MAZHUROVSKYI DANIIL brings us a DSL for defining settings screens in a Compose for Android app. It includes many settings UI elements, integrated data storage, custom styling, and more.
GitHub: nsozturk / quick-filter-kotlin
enes öztürk built a filter bar for Compose for Android (and for the classic View system). It includes dropdown chips for filterable attributes in a chip bar, plus a filter panel.
GitHub: bitsycore / ComposeDesktopNative
GitHub user bitsycore is building out a Kotlin/Native implementation of Compose for Desktop, using SDL3 for its windowing system. Kotlin/Native means no JVM – you get native binaries for Linux, macOS, and Windows.
Other Interesting Links
- GitHub: jonikay89 / BottomShelfer-android (bottom sheet for Compose for Android)
- GitHub: MehdiSekoba / AnimatedBottomBar (bottom nav bar for Compose for Android)
- GitHub: mobiletoly / laydr (Nav3 wrapper for Compose Multiplatform)
- GitHub: willliam99 / jalalidatepicker (Persian calendar for Compose for Android)
Notable Releases
Maps for Compose is out with 8.3.1, with some bug fixes.
Compose Unstyled hopped up to 2.8.2, also containing some bug fixes.
Recent Issues:
- 2026-06-30: Compose... in 3D! Compose Desktop beyond AWT! An independent RemoteCompose player! And, might we get an official Web rendering composable?!?
- 2026-06-23: Compose patch release! 1.12 beta! Compose Multiplatform alpha! Viewmodel scoping! Coil 3! Color mixing! And... iOS is getting Ink?!?
- 2026-06-16: Accessible links! RemoteCompose! Cross-platform barcode scanning! Blueprints in previews! And... we seem to be short a BOM?!?