jetc.dev Newsletter Issue #320

Published: 2026-06-30

This week, we spend a chunk of time in 3D and wonder if Compose might get a Web-rendering component. And we see an attempt at an independent, multiplatform RemoteCompose player.

One Off the Stack, One Off the Slack

You’ve got questions. That’s understandable!

Why Does Compose Desktop Use AWT/Swing?

Come for grumblings about Compose Desktop being tied to X as a windowing framework. Stay for the discussions about Compose Desktop deployment options (e.g., GraalVM vs. JetBrains Runtime).

Composable Commentary

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

Android UI in 3D: Rendering Jetpack Compose on OpenGL Surfaces via VirtualDisplay

MyOldPCS demonstrates how to render composables to a VirtualDisplay, which opens up the possibility of rendering composables in a Presentation. And since a VirtualDisplay can be connected to an OpenGL surface, you can render composables on that surface — the specific demonstration is rendering to a rectangle that is rotating through 3D space.

Medium: Building a 3D Game in Compose Multiplatform

Sticking with the 3D theme, but jumping to Compose Multiplatform, Gabor Berenyi created a 3D chess implementation, wrapping different 3D rendering options based on platform (Filament for desktop, Filament/Wasm for Web, SceneView for Android, and a Metal-native Filament for iOS).

Official Web Composable?

Jaewoong Eum (Mastodon, Bluesky) pointed out on Mastodon that there is a new web-compose in the works, described as “a composable that displays web pages”. Presumably this will wrap WebView on Android, and with luck JetBrains will offer wrappers for other platforms.

Medium: Mesh Gradients in Jetpack Compose

Roman Khrupa (Bluesky) points out that the 1.12.0 alpha series of Compose offers a MeshGradientPainter, making it easy for you to apply mesh gradients as backgrounds, inside of a Canvas(), or anywhere else a Painter can be supplied. I would explain further, but I am not strong with gradients, and so I am likely to make a mesh of it. 😁

Resource Roundup

100% pure code!

GitHub: JulesPvx / compose_unified_material_expressive_settings

Jules Pouvreaux brings us a library offering “grouped settings screens with a modern Material 3 Expressive aesthetic”. It has a DSL for constructing the screens, and the screens support shared element transitions.

GitHub: deanalvero / remotecomposeplayer-cmp

Dean Vernon Alvero is building a RemoteCompose player for Compose Multiplatform, supporting all major targets, whereas IIRC the official player only supports Android right now.

Notable Releases

Compose Unstyled 2.8.0 shipped. This adds UnstyledAvatar() and UnstyledDropdownMenuItem(), the latter of which replaces DropdownMenuPanelScope.MenuItem().

A Very Particular Set of Skills

Adding Compose capabilities to your coding agents!

The Code with the Italians team continues to build out their curated skills repository

Here are some more skill collections that I stumbled upon!