Repository navigation
Releases: zainkhalid91/compose-loaders
Releases · zainkhalid91/compose-loaders
Release list
0.2.0 — 45 loaders, config, accessibility
45 loaders (25 new), one config object, real accessibility and reduced motion. Shaped by feedback on the launch post.
implementation("com.github.zainkhalid91.compose-loaders:loaders:0.2.0")with maven("https://jitpack.io") in your repositories.
Highlights
- 25 new loaders: RadarSweep, Hourglass, PacDots, SlidingBar, FireworkBurst, TypingBubble, WaveText, OrbitingMoons, FoldingCube, SegmentedRing, SkeletonShimmer, SpiralGalaxy, Pendulum, SlidingTiles, BreathingCircle, DominoFall, NeonTrace, BatteryCharge, Rocket, SignalBars, GearPair, YinYang, SpringCoil, GooeyOrbit, HeartPulse.
LoaderConfig: speed, pause, reverse, reduced motion, screen reader label and announcements in one immutable object. Set it app-wide withProvideLoaderDefaults(color, config).- More options:
strokeWidth, gradientbrush, counts (segments, coils, teeth, blobs...), shape options and parts you can switch off. - Accessibility: labels, determinate
progressthat TalkBack reads as a percentage, polite announcements,LoadingAnnouncerfor start and finish. A test checks every loader against WCAG 2.3.1 (no more than 3 flashes a second). - Reduced motion that never freezes:
Autofollows Android's "Remove animations"; loaders hold a pose and gently pulse instead of looking hung. - Zero allocations in loader draw code: strokes, paths and brushes are built once per size. CometSpinner went from 887 to 8 bytes per frame on desktop.
- Playground tab in the gallery app to try every option live.
Source compatible with 0.1.0 (rebuild libraries that depend on it). Full list in CHANGELOG.md.
0.1.0 — first 20 loaders
First release: 20 loading indicators in pure Compose (Android + desktop).
implementation("com.github.zainkhalid91.compose-loaders:loaders:0.1.0")with maven("https://jitpack.io") in your repositories. See the README for details.