Skip to content

v0.3.0 — shared values, textAlign, two-tone fraction

Latest

Choose a tag to compare

@AmatoGiulio AmatoGiulio released this 25 Aug 12:03

Features

  • Reanimated shared value as value — drive the number straight from the UI thread (a gesture, a spring, a timing) with no React re-render. react-native-reanimated (>= 3) is an optional peer dependency, loaded only when a shared value is actually passed.
  • textAlign (left / center / right) — pin the number to an edge so it stays fixed for the whole transition, incoming and outgoing, instead of always growing about its centre. Native on both platforms (a gated alignMode in the Android roll engine — center is byte-identical to before — and a SwiftUI .frame(alignment:) on iOS).
  • Completed two-tone fraction — the fractionColor fraction now rolls together with the rest of the digits on iOS, instead of cross-fading on its own. The colour lives inside a single AttributedString with no outer foregroundStyle, so .numericText() sees one text run; the original SwiftUI view and its behaviour are untouched.

Docs

  • Rewritten, production-grade README and a new docs/ARCHITECTURE.md covering the renderer design and the transition model measured against SwiftUI. The full engine derivation — ground-truth recordings, measurement scripts, and the iteration log — is archived on the research/engine-derivation branch.

Fixes

  • CI: reconcile yarn.lock (react-native-reanimated 4.2.3) so yarn install --immutable passes again; all jobs green.

Full Changelog: v0.2.0...v0.3.0