Compose Stability Analyzer 0.7.3 introduces the runtime Compoes state tracking.
By adding the `TraceRecomposition` annotation to your composable function, you can trace all the parameters and in-body Compose states in the logcat.
skydoves.github.io/compose-stab...
Posts by Rafael Tonholo
I will keep an eye there! Thanks for sharing and for this great library!!
However, an IntelliJ plugin might be also useful for some functionalities like gutter indications, dependency graph rendering, or even reports. If you are open to contributions, I could try scratching something?
Probably. I remember trying that a few months ago on AS and suddenly everything went crazy, but I saw you fixed an issue related to that a few versions ago. I started to try again, I can let you know if anything similar happens again, if you want.
Someone just shared, out of the blue, my project on another social media! That is the first time it ever happened and I was so happy to see that!
Sometimes I wonder if I should ever keep working on it, if ever people are using it or not.
It felt heartwarming seeing that, tbh!
Yeah, I do that sometimes by disabling the `kotlin.k2.only.bundled.compiler.plugins.enabled`, however the IDE starts to be finicky and often "Redeclaration" issues show... That isn't a bug on Metro, as it happens when I do the same with a compiler plugin I built for testing π
Metro is so good! If you haven't tried yet, I strongly suggest you to!! I wish IntelliJ allowed non-bundled K2 compiler plugins to contribute their FIR checkers to the IDE so we could see diagnostics in real-time. Perhaps a Metro IntelliJ plugin could bridge the gap until then
While the website is fully functional, this is the first version I'm publishing, so feedback is appreciated!
And if you are interested in the project, consider starring it on GitHub and contributing! All contributions are welcome!
Here is the link: github.com/rafaeltonhol...
#AndroidDev #KMP
I've just released the website for CLI/Gradle Plugin code, built using KMP!
It also features a playground editor where you can convert your SVGs without needing to download anything!
And the best is that everything runs locally on your browser!
svgtocompose.tonholo.dev
#AndroidDev #KMP
Why Compose HotSwan π¦’
It explains how Compose HotSwan brings true Hot Reload to Android, avoiding rebuilds and app restarts. It enables instant UI updates on a running app while preserving state, improving development speed.
hotswan.dev/docs/how-it-...
Another tweak.
One of the biggest gems of Compose Hot Reload is the ability to simulate animation variations directly on real Android devices.
hotswan.dev/docs/support...
We have a shiny new roadmap site, and an equally shiny new blog post to tell our community all about it:
#Thunderbird #OpenSource
blog.thunderbird.net/2026/03/introβ¦
Thundercast is back! Our hosts are steering us through the roadmaps for the desktop and mobile clients. Tune in for all the information on what's coming next, and minimal backseat driving.
#Thunderbird #ThunderCast #OpenSource
share.transistor.fm/s/4db3895e
I can't believe that I will attend KotlinConf this year π±
Thanks for sharing that! I will be glad to help test it, or even contribute!
When are you planning to release/open source it?
I NEED THIS SO MUCH!
Just published "Scoping ViewModels in Compose".
marcellogalhardo.dev/posts/scopin...
#AndroidDev #Kotlin #KMP #CMP
A screenshot of code that reads: // Create a Recomposition Tracking Rule @get:Rule val composeTestRule = createRecompositionTrackingRule() @Test fun incrementCounter_onlyValueRecomposes() { // Perform an action composeTestRule.onNodeWithTag("inc_button") .performClick() // Assert that Composables change like you expect composeTestRule.onNodeWithTag("counter_value") .assertRecompositions(exactly = 1) // Or assert that they remain stable composeTestRule.onNodeWithTag("counter_title") .assertStable() // asserts recompositions = 0 }
Today Iβm open-sourcing Dejavu!
Testing UI performance in Jetpack Compose is frustrating. We profile and watch tools, yet regressions still creep in.
I built Dejavu to make recomposition behavior something you can actually test.
𫨠Trying to build a library out of the snappy drag thing that I build for one of my apps. #JetpackCompose
Everything's coming up roses in Pasadena for @socallinuxexpo.bsky.social! Come visit us in the Expo Hall at booth 221 to chat with our team, learn what we're up to, and grab some stickers from:
14:00-18:00 Today
10:00-18:00 Saturday
10:00-14:00 Sunday
#Thunderbird #SCaLE23x
We're excited to shine a light on Michaela Martin, the design artist behind our appeal illustrations. We chat about her background, her process, and how Roc and his world went from first sketches to final drafts. π¨
#Thunderbird #Illustration
blog.thunderbird.net/2026/03/desi...
ποΈCheck out the new @fragmentedpodcast.com episode on subagents!
They can be a huge unlock once you understand how it all works and you can get real benefits without having to a swarm them.
@kau.sh and I built an RTS mental model for how they work (yes, we did that). Check it out!
new episode is out! spot the easter π₯?
recent models have shown massive improvement owing to clever use of "modes" and subagent dispatch. it really clicked for me after chatting with @iurysouza.dev
listen to improve your fundamentals! (not just tactics).
And our Mobile Progress Report provides an early look into how development on Android AND iOS (!) will take shape over the coming year.
#Thunderbird #Android #iOS #OpenSource
blog.thunderbird.net/2026/02/mobi...
Heading to CHAOSSCon at @fosdem.org? Be sure to check out @linuxflower.bsky.social and Wayne Mery's Lunch and Learn on Thursday Jan 29 at 13:00 on how we're using community metrics and how we can improve!
#Thunderbird #OpenSource #Community
chaoss.community/chaosscon-20...
Heads up it looks like Sonatype is starting to enforce stricter throttling on Maven Central.
If you see 429/403 errors from your runneres, you're not alone.
github.com/actions/runn...
www.sonatype.com/blog/maven-c...
I've just added the latest version, but I'm planning to add the previous ones as well.
If you want to help, here is the repo: github.com/rafaeltonhol...
#android #kmp #AndroidDev #intellij
For that reason, I'm starting to track the versions in a Git repository to serve as a compatibility matrix until a better solution is available.