Skip to content

v2.0.0 — Compose Multiplatform, Design-to-Code, Production Crash Playbook

Choose a tag to compare

@aldefy aldefy released this 04 Apr 06:30
· 66 commits to master since this release

What's New

Compose Multiplatform Support

  • CMP architecture guide with API availability matrix across Android, Desktop, iOS, and Web
  • expect/actual patterns from real compose-multiplatform-core source
  • Resource system (Res.*) guide with gotchas
  • Migration guide from Android-only to CMP
  • Platform-specifics: Desktop (Window, Tray, MenuBar, Swing interop), iOS (UIKitView, lifecycle gotchas, binary size), Web/WASM (canvas limitations)
  • CMP source code receipts with actual API signatures

Design-to-Code Engine

  • Composable decomposition algorithm (based on DCGen, ACM SIGSOFT 2025)
  • Figma-to-Compose property mapping tables (layout, sizing, spacing, shadows, gradients, corners, opacity)
  • Design token → MaterialTheme mapping
  • Modifier ordering rules (the #1 source of bugs in AI-generated Compose)
  • Spacing ownership principle: parent owns spacing

Production Crash Playbook

  • 6 crash patterns with root cause and fix: remember without config key, indexOf() in items, zero-size DrawScope, duplicate LazyColumn keys, derivedStateOf driving collection size, collectAsState lifecycle
  • Defensive patterns: SafeShimmerItem, multi-field collision prefix keys, dedupIndex
  • Production state rules and performance rules

Animation Guide (3x larger)

  • 9 recipes: shimmer, staggered list entrance, swipe-to-dismiss, expandable card, pull-to-refresh, FAB morph, bottom sheet drag, parallax header, animated tabs
  • Animation decision tree: which API for which scenario
  • Gesture-driven patterns: swipe-to-dismiss with Animatable, AnchoredDraggable, transformable
  • Design-to-animation translation: Figma easing curves → Compose, M3 motion tokens, spring parameter intuition, Figma spring conversion formula
  • Predictive back gesture animation (Android 14+)
  • Sequential/parallel animation choreography

Updated Guides

  • State management: produceState, rememberUpdatedState, sealed UiState pattern, state holder class, CMP state notes
  • Lists/scrolling: crash patterns, collision prefix keys, ReportDrawnWhen, device-specific pagination
  • View composition: 5-step decomposition methodology, Scaffold patterns, composite preview annotations, adaptive layouts
  • Performance: zero-size guard, composition tracing, movableContentOf, compiler report flags, CMP performance notes

Fixes

  • Shared element transition code now uses correct SharedTransitionLayout API
  • CompositionLocal explanation corrected (staticCompositionLocalOf invalidates entire subtree)
  • Removed incorrect accompanist-permissions deprecation claim (PR #1 by @Daiji256)

Stats

  • 17 reference guides (was 13)
  • 6 source code files (was 5)
  • 5,142 lines added