loading-state-zoo 0.3.0 → 0.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,6 +1,8 @@
1
1
  # loading-state-zoo
2
2
 
3
- **32 loading patterns, one tiny package.** Dots, spinners, orbs, shapes, bars, music and skeletons that tell the user "please wait" — made silky smooth and ready to use in **React**, **plain websites**, and **iOS / Android apps**.
3
+ **26 loading patterns, one tiny package.** Dots, spinners, orbs, shapes, bars, music and skeletons that tell the user "please wait" — made silky smooth and ready to use in **React**, **plain websites**, and **iOS / Android apps**.
4
+
5
+ > **Recommended production version.** v0.4.1 is the stable, production-tested line of `loading-state-zoo`. Install `npm i loading-state-zoo@^0.4.1` for the latest recommended release.
4
6
 
5
7
  Think of it as a small zoo of loading animals. You pick an animal, put it in your app's cage, and it starts moving right away. You can even change its **color**, **size** and **speed** — no scissors or glue required.
6
8
 
@@ -28,12 +30,7 @@ Think of it as a small zoo of loading animals. You pick an animal, put it in you
28
30
  | [Scan sweep](#scan-sweep) | Spinner | Radar/sonar, scanning, searching |
29
31
  | [Orbit dots](#orbit-dots) | Spinner | Floaty, lightweight loading |
30
32
  | [Orbit ring dots](#orbit-ring-dots) | Spinner | Cosmetic ring, data-heavy load |
31
- | [Pulsing orb](#pulsing-orb) | Orbs | Ambient loads, hero panels, splash |
32
- | [Morphing orb](#morphing-orb) | Orbs | Creative waits, brand moments |
33
- | [Siri orb](#siri-orb) | Orbs | Voice assistants, AI thinking |
34
- | [Dot orb](#dot-orb) | Orbs | Orbit waits, spatial loading |
35
- | [Planet orb](#planet-orb) | Orbs | Space motifs, sci-fi waits |
36
- | [Aura orb](#aura-orb) | Orbs | Gradient waits, brand palettes |
33
+ | [Sonar](#sonar) | Spinner | Radar pings, location detection |
37
34
  | [Eyes](#eyes) | Shape | Fun state, "watching" waiting |
38
35
  | [Morphing square](#morphing-square) | Shape | Modern brand moments |
39
36
  | [Breathing pulse](#breathing-pulse) | Shape | Subtle, gentle "alive" loading |
@@ -44,7 +41,6 @@ Think of it as a small zoo of loading animals. You pick an animal, put it in you
44
41
  | [Activity rings](#activity-rings) | Bars & rings | Fitness, health, Apple Watch style |
45
42
  | [Waveform](#waveform) | Music | Audio apps, playing states |
46
43
  | [Vinyl](#vinyl) | Music | Music apps, retro feels |
47
- | [Sonar](#sonar) | Music | Audio pulses, location pings |
48
44
  | [Music note](#music-note) | Music | Music players, playful waits |
49
45
  | [Skeleton shimmer](#skeleton-shimmer) | Skeleton | Placeholder while real content loads |
50
46
  | [Skeleton card](#skeleton-card) | Skeleton | Composite card/feed placeholders |
@@ -85,7 +81,7 @@ export function MyLoader() {
85
81
  }
86
82
  ```
87
83
 
88
- That's it. Importing the package **automatically registers** all 32 elements for you (it's safe to import in many places — duplicates are skipped). It is also safe on the server (SSR/Next.js): on Node there is no browser, so nothing registers and nothing breaks.
84
+ That's it. Importing the package **automatically registers** all 26 elements for you (it's safe to import in many places — duplicates are skipped). It is also safe on the server (SSR/Next.js): on Node there is no browser, so nothing registers and nothing breaks.
89
85
 
90
86
  If you prefer to register manually:
91
87
 
@@ -113,7 +109,7 @@ Add the package from a CDN (or bundle it) and write the tags directly in your HT
113
109
  </div>
114
110
  ```
115
111
 
116
- Mix and match any of the 32 tags — see the full list below.
112
+ Mix and match any of the 26 tags — see the full list below.
117
113
 
118
114
  ---
119
115
 
@@ -237,9 +233,6 @@ Every number inside every animation is also a CSS variable. Change how far dots
237
233
  | `--lz-eq-min` | Equalizer | Shortest bar height | `0.3` |
238
234
  | `--lz-slide-from` | Indeterminate bar | Slider start position | `-100%` |
239
235
  | `--lz-slide-to` | Indeterminate bar | Slider end position | `300%` |
240
- | `--lz-orb-scale` | Pulsing orb | Peak breathe scale | `1.16` |
241
- | `--lz-orb-fade` | Pulsing orb / dot orb | Mid-breathe opacity (dot orb rests at `0.14`) | `0.88` |
242
- | `--lz-dot-min` | Dot orb | Resting dot scale | `0.7` |
243
236
  | `--lz-wf-min` | Waveform | Resting bar scale | `0.22` |
244
237
  | `--lz-sonar-fade` | Sonar | Ring start opacity | `0.9` |
245
238
  | `--lz-note-bob` | Music note | Note bob height | `0.35em` |
@@ -397,7 +390,7 @@ Variables: `--lz-stroke` · `--lz-color-weak`.
397
390
 
398
391
  ### Scan sweep
399
392
 
400
- **What it is:** concentric rings with a sweeping beam — like radar. **Good for:** scanning, searching, syncing data.
393
+ **What it is:** concentric rings with crosshair ticks, a counter-rotating dial and a sweeping beam — like a radar. **Good for:** scanning, searching, syncing data.
401
394
 
402
395
  ```html
403
396
  <lz-scan-sweep size="64" color="#30d158"></lz-scan-sweep>
@@ -446,104 +439,6 @@ Variables: `--lz-dot-size` · `--lz-orbit-fade`.
446
439
 
447
440
  ---
448
441
 
449
- ### Pulsing orb
450
-
451
- **What it is:** a glowing gradient orb that breathes in and out. **Good for:** ambient loads, hero panels, app splash screens.
452
-
453
- ```html
454
- <lz-pulsing-orb size="64" accent="#ff375f"></lz-pulsing-orb>
455
- ```
456
-
457
- ```tsx
458
- <PulsingOrb size={64} accent="#ff375f" />
459
- ```
460
-
461
- Attributes: `size` (default `44`) · `accent` (default `#0a84ff`) · `speed`.
462
- Variables: `--lz-orb-scale` · `--lz-orb-fade`.
463
-
464
- ---
465
-
466
- ### Morphing orb
467
-
468
- **What it is:** a blob that endlessly morphs its silhouette between rounded shapes. **Good for:** creative waits, brand moments, game loading.
469
-
470
- ```html
471
- <lz-morphing-orb size="64" accent="#30d158"></lz-morphing-orb>
472
- ```
473
-
474
- ```tsx
475
- <MorphingOrb size={64} accent="#30d158" />
476
- ```
477
-
478
- Attributes: `size` (default `44`) · `accent` (default `#0a84ff`) · `speed`.
479
-
480
- ---
481
-
482
- ### Siri orb
483
-
484
- **What it is:** a Siri-style orb with a multicolored sheen swirling inside a clipped circle. **Good for:** voice assistants, AI "thinking", smart waits.
485
-
486
- ```html
487
- <lz-siri-orb size="72" accent="#64d2ff"></lz-siri-orb>
488
- ```
489
-
490
- ```tsx
491
- <SiriOrb size={72} accent="#64d2ff" />
492
- ```
493
-
494
- Attributes: `size` (default `44`) · `accent` (default `#0a84ff`) · `speed`.
495
-
496
- ---
497
-
498
- ### Dot orb
499
-
500
- **What it is:** a ring of shimmering dots arranged into an orb silhouette. **Good for:** orbit waits, spatial loading, gaming screens.
501
-
502
- ```html
503
- <lz-dot-orb count="12" color="#ff9f0a"></lz-dot-orb>
504
- ```
505
-
506
- ```tsx
507
- <DotOrb count={12} color="#ff9f0a" />
508
- ```
509
-
510
- Attributes: `size` (default `44`) · `count` (default `8`) · `color` · `speed`.
511
- Variables: `--lz-dot-min` · `--lz-orb-fade`.
512
-
513
- ---
514
-
515
- ### Planet orb
516
-
517
- **What it is:** a glowing planet core with small moons orbiting it. **Good for:** space motifs, science apps, sci-fi waits.
518
-
519
- ```html
520
- <lz-planet-orb count="3" accent="#bf5af2" color="#64d2ff"></lz-planet-orb>
521
- ```
522
-
523
- ```tsx
524
- <PlanetOrb count={3} accent="#bf5af2" color="#64d2ff" />
525
- ```
526
-
527
- Attributes: `size` (default `44`) · `accent` (default `#0a84ff`) · `color` · `count` (moons, default `2`) · `speed`.
528
-
529
- ---
530
-
531
- ### Aura orb
532
-
533
- **What it is:** two tinted orbs counter-rotating in overlapping orbits. **Good for:** gradient waits, brand palettes, hero backgrounds.
534
-
535
- ```html
536
- <lz-aura-orb accent="#ff375f" color="#64d2ff"></lz-aura-orb>
537
- ```
538
-
539
- ```tsx
540
- <AuraOrb accent="#ff375f" color="#64d2ff" />
541
- ```
542
-
543
- Attributes: `size` (default `44`) · `accent` (default `#0a84ff`) · `color` · `speed`.
544
-
545
- ---
546
-
547
442
  ### Eyes
548
443
 
549
444
  **What it is:** two cartoon eyes that look side to side and blink. **Good for:** fun apps, "watching" moments, kids' stuff.
@@ -703,7 +598,7 @@ Variables: `--lz-bar-width` · `--lz-gap` · `--lz-wf-min`.
703
598
 
704
599
  ### Vinyl
705
600
 
706
- **What it is:** a spinning record with a gently bobbing tonearm. **Good for:** music apps, retro waits, album screens.
601
+ **What it is:** a spinning record with a light sheen, label, spindle and a gently bobbing tonearm. **Good for:** music apps, retro waits, album screens.
707
602
 
708
603
  ```html
709
604
  <lz-vinyl accent="#fa114f"></lz-vinyl>
@@ -719,7 +614,7 @@ Attributes: `size` (default `48`) · `accent` (label/stylus, default `#0a84ff`)
719
614
 
720
615
  ### Sonar
721
616
 
722
- **What it is:** a pulsing core emitting expanding sonar rings. **Good for:** audio pulses, location pings, motion waits.
617
+ **What it is:** a pulsing core emitting expanding sonar rings. **Good for:** radar pings, location detection, motion waits.
723
618
 
724
619
  ```html
725
620
  <lz-sonar count="4" accent="#30d158"></lz-sonar>
@@ -736,7 +631,7 @@ Variables: `--lz-sonar-fade`.
736
631
 
737
632
  ### Music note
738
633
 
739
- **What it is:** musical note glyphs bobbing in a sing-song rhythm. **Good for:** music players, karaoke, playful waits.
634
+ **What it is:** drawn musical notes with heads, stems and flags bobbing in a sing-song rhythm. **Good for:** music players, karaoke, playful waits.
740
635
 
741
636
  ```html
742
637
  <lz-music-note count="3" color="#bf5af2"></lz-music-note>