migrating-to-modifier-node
skydoves/compose-performance-skills / modifiers/migrating-to-modifier-node
guides migration from Modifier.composed to Modifier.Node , which improves: faster Compose modifiers, fewer recompositions
Details
- judge’s score
- 9/10
- place
- outside the packs
- publisher
- skydoves
- status
- new
- pinned commit
- 1b32f81 on GitHub (new tab)
- skill’s last commit
- Apr 29, 2026
- repo stars
- 516
- main type
- Android
Judgement
Precise, targeted reference on Modifier.Node in Jetpack Compose, with real pitfalls (data class, coroutineScope, invalidation). Defects: orphan "SPEC §8" reference, truncated annex, unsourced anecdotes.
reservations
- The annex references/modifier-node-anatomy.md was only read for 5000 of 13301 characters: the end (PointerInputModifierNode, DelegatingNode, manual invalidation) was not verified.
- Orphan reference "Repo-wide rule from SPEC §8": no SPEC document is provided or cited.
- Anecdotes and unsourced claims ("skydoves hot take #5", "cannot be skipped" for composed { }), promotional tone about the author.
- The Verification sections call for a compilerreport, Layout Inspector and a LeakCanary pass without exact commands: precision is incomplete.
- Triggering
- 2/2
- Added value
- 2/2
- Precision
- 2/2
- Scope
- 2/2
- Quality
- 1/2
Alerts
no alerts
Neither the static scan nor the judge flagged a risk for this skill.
Original description
Use this skill to author new custom Jetpack Compose modifiers and migrate legacy ones from Modifier.composed { } to Modifier.Node + ModifierNodeElement<T>. Covers the persistent-node lifecycle (onAttach, onDetach, onReset, coroutineScope), the specialized node interfaces (DrawModifierNode, LayoutMod…
added on Oct 19, 2026 · license Apache-2.0