FloretExpressiveTheme(lightScheme, darkScheme, darkTheme, dynamicColor,
typography) holds the family's theme mechanics — dynamic-colour resolution
(API 31+), system light/dark fallback, and the STANDARD motion scheme — while
each app supplies its own seed-derived colour schemes, so the look stays
per-app and the machinery is shared. rememberNavSlideSpec() shares the fast
spatial nav slide. android-library, Compose-only.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
First Android-library module in the kit. Privacy-respecting crash capture
(writes a self-contained, allowlist-only report to private storage, chains to
the platform handler, uploads nothing), startup crash-loop detection, a report
dialog showing the full text before it leaves the device, and an issue-tracker
hand-off. Extracted from Calendula and generalised: app label + issue URLs come
from a CrashConfig supplied at install(); each app keeps its own thin themed
CrashReportActivity. Lean deps (Compose + core-ktx). 3 unit tests on the pure
report builder.
Adds AGP/android-library + compose plugins and the compose/core-ktx libs to the
kit catalog; core-time stays a plain JVM module.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Calendula scans its whole source tree (incl. this submodule) for the literal
token as a reproducibility guard; the explanatory comment shouldn't trip it.
No behavioural change.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Calendula consumes the kit as an included build and publishes via official
F-Droid reproducible builds, whose offline source scanner rejects the foojay
toolchain resolver (it can fetch a JDK at build time). The kit never used a
Java toolchain block — modules set jvmTarget directly — so the resolver was
dead weight that would have broken Calendula's reproducibility invariant.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
First module of floret-kit, the shared Material 3 Expressive design system +
plumbing for the Floret app family. core-time is a pure-Kotlin JVM library
(DayWindow local-day boundaries + locale/zone-aware Instant formatting),
extracted from Agendula. Standalone build + 2 unit tests green.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>