@autumnsgrove/groveengine 0.7.0 → 0.8.0

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.
Files changed (160) hide show
  1. package/dist/ui/components/content/RoadmapPreview.svelte +91 -0
  2. package/dist/ui/components/content/RoadmapPreview.svelte.d.ts +36 -0
  3. package/dist/ui/components/content/index.d.ts +1 -0
  4. package/dist/ui/components/content/index.js +1 -0
  5. package/dist/ui/components/nature/Logo.svelte +224 -0
  6. package/dist/ui/components/nature/Logo.svelte.d.ts +14 -0
  7. package/dist/ui/components/nature/botanical/Acorn.svelte +48 -0
  8. package/dist/ui/components/nature/botanical/Acorn.svelte.d.ts +8 -0
  9. package/dist/ui/components/nature/botanical/Berry.svelte +67 -0
  10. package/dist/ui/components/nature/botanical/Berry.svelte.d.ts +8 -0
  11. package/dist/ui/components/nature/botanical/DandelionPuff.svelte +98 -0
  12. package/dist/ui/components/nature/botanical/DandelionPuff.svelte.d.ts +8 -0
  13. package/dist/ui/components/nature/botanical/FallingLeavesLayer.svelte +170 -0
  14. package/dist/ui/components/nature/botanical/FallingLeavesLayer.svelte.d.ts +35 -0
  15. package/dist/ui/components/nature/botanical/FallingPetalsLayer.svelte +174 -0
  16. package/dist/ui/components/nature/botanical/FallingPetalsLayer.svelte.d.ts +25 -0
  17. package/dist/ui/components/nature/botanical/Leaf.svelte +77 -0
  18. package/dist/ui/components/nature/botanical/Leaf.svelte.d.ts +10 -0
  19. package/dist/ui/components/nature/botanical/LeafFalling.svelte +186 -0
  20. package/dist/ui/components/nature/botanical/LeafFalling.svelte.d.ts +22 -0
  21. package/dist/ui/components/nature/botanical/PetalFalling.svelte +266 -0
  22. package/dist/ui/components/nature/botanical/PetalFalling.svelte.d.ts +25 -0
  23. package/dist/ui/components/nature/botanical/PineCone.svelte +61 -0
  24. package/dist/ui/components/nature/botanical/PineCone.svelte.d.ts +7 -0
  25. package/dist/ui/components/nature/botanical/Vine.svelte +102 -0
  26. package/dist/ui/components/nature/botanical/Vine.svelte.d.ts +11 -0
  27. package/dist/ui/components/nature/botanical/index.d.ts +10 -0
  28. package/dist/ui/components/nature/botanical/index.js +11 -0
  29. package/dist/ui/components/nature/creatures/Bee.svelte +78 -0
  30. package/dist/ui/components/nature/creatures/Bee.svelte.d.ts +9 -0
  31. package/dist/ui/components/nature/creatures/Bird.svelte +94 -0
  32. package/dist/ui/components/nature/creatures/Bird.svelte.d.ts +11 -0
  33. package/dist/ui/components/nature/creatures/BirdFlying.svelte +83 -0
  34. package/dist/ui/components/nature/creatures/BirdFlying.svelte.d.ts +9 -0
  35. package/dist/ui/components/nature/creatures/Bluebird.svelte +95 -0
  36. package/dist/ui/components/nature/creatures/Bluebird.svelte.d.ts +12 -0
  37. package/dist/ui/components/nature/creatures/Butterfly.svelte +87 -0
  38. package/dist/ui/components/nature/creatures/Butterfly.svelte.d.ts +9 -0
  39. package/dist/ui/components/nature/creatures/Cardinal.svelte +95 -0
  40. package/dist/ui/components/nature/creatures/Cardinal.svelte.d.ts +12 -0
  41. package/dist/ui/components/nature/creatures/Chickadee.svelte +97 -0
  42. package/dist/ui/components/nature/creatures/Chickadee.svelte.d.ts +12 -0
  43. package/dist/ui/components/nature/creatures/Deer.svelte +95 -0
  44. package/dist/ui/components/nature/creatures/Deer.svelte.d.ts +9 -0
  45. package/dist/ui/components/nature/creatures/Firefly.svelte +111 -0
  46. package/dist/ui/components/nature/creatures/Firefly.svelte.d.ts +10 -0
  47. package/dist/ui/components/nature/creatures/Owl.svelte +91 -0
  48. package/dist/ui/components/nature/creatures/Owl.svelte.d.ts +9 -0
  49. package/dist/ui/components/nature/creatures/Rabbit.svelte +90 -0
  50. package/dist/ui/components/nature/creatures/Rabbit.svelte.d.ts +9 -0
  51. package/dist/ui/components/nature/creatures/Robin.svelte +98 -0
  52. package/dist/ui/components/nature/creatures/Robin.svelte.d.ts +12 -0
  53. package/dist/ui/components/nature/creatures/Squirrel.svelte +97 -0
  54. package/dist/ui/components/nature/creatures/Squirrel.svelte.d.ts +9 -0
  55. package/dist/ui/components/nature/creatures/index.d.ts +13 -0
  56. package/dist/ui/components/nature/creatures/index.js +14 -0
  57. package/dist/ui/components/nature/ground/Bush.svelte +57 -0
  58. package/dist/ui/components/nature/ground/Bush.svelte.d.ts +10 -0
  59. package/dist/ui/components/nature/ground/Crocus.svelte +83 -0
  60. package/dist/ui/components/nature/ground/Crocus.svelte.d.ts +12 -0
  61. package/dist/ui/components/nature/ground/Daffodil.svelte +75 -0
  62. package/dist/ui/components/nature/ground/Daffodil.svelte.d.ts +11 -0
  63. package/dist/ui/components/nature/ground/Fern.svelte +72 -0
  64. package/dist/ui/components/nature/ground/Fern.svelte.d.ts +10 -0
  65. package/dist/ui/components/nature/ground/FlowerWild.svelte +60 -0
  66. package/dist/ui/components/nature/ground/FlowerWild.svelte.d.ts +10 -0
  67. package/dist/ui/components/nature/ground/GrassTuft.svelte +49 -0
  68. package/dist/ui/components/nature/ground/GrassTuft.svelte.d.ts +10 -0
  69. package/dist/ui/components/nature/ground/Log.svelte +42 -0
  70. package/dist/ui/components/nature/ground/Log.svelte.d.ts +7 -0
  71. package/dist/ui/components/nature/ground/Mushroom.svelte +48 -0
  72. package/dist/ui/components/nature/ground/Mushroom.svelte.d.ts +9 -0
  73. package/dist/ui/components/nature/ground/MushroomCluster.svelte +41 -0
  74. package/dist/ui/components/nature/ground/MushroomCluster.svelte.d.ts +8 -0
  75. package/dist/ui/components/nature/ground/Rock.svelte +59 -0
  76. package/dist/ui/components/nature/ground/Rock.svelte.d.ts +8 -0
  77. package/dist/ui/components/nature/ground/Stump.svelte +44 -0
  78. package/dist/ui/components/nature/ground/Stump.svelte.d.ts +8 -0
  79. package/dist/ui/components/nature/ground/Tulip.svelte +79 -0
  80. package/dist/ui/components/nature/ground/Tulip.svelte.d.ts +11 -0
  81. package/dist/ui/components/nature/ground/index.d.ts +12 -0
  82. package/dist/ui/components/nature/ground/index.js +13 -0
  83. package/dist/ui/components/nature/index.d.ts +28 -0
  84. package/dist/ui/components/nature/index.js +38 -0
  85. package/dist/ui/components/nature/palette.d.ts +491 -0
  86. package/dist/ui/components/nature/palette.js +384 -0
  87. package/dist/ui/components/nature/sky/Cloud.svelte +122 -0
  88. package/dist/ui/components/nature/sky/Cloud.svelte.d.ts +11 -0
  89. package/dist/ui/components/nature/sky/CloudWispy.svelte +79 -0
  90. package/dist/ui/components/nature/sky/CloudWispy.svelte.d.ts +9 -0
  91. package/dist/ui/components/nature/sky/Moon.svelte +60 -0
  92. package/dist/ui/components/nature/sky/Moon.svelte.d.ts +9 -0
  93. package/dist/ui/components/nature/sky/Rainbow.svelte +101 -0
  94. package/dist/ui/components/nature/sky/Rainbow.svelte.d.ts +8 -0
  95. package/dist/ui/components/nature/sky/Star.svelte +84 -0
  96. package/dist/ui/components/nature/sky/Star.svelte.d.ts +10 -0
  97. package/dist/ui/components/nature/sky/StarCluster.svelte +85 -0
  98. package/dist/ui/components/nature/sky/StarCluster.svelte.d.ts +9 -0
  99. package/dist/ui/components/nature/sky/StarShooting.svelte +90 -0
  100. package/dist/ui/components/nature/sky/StarShooting.svelte.d.ts +9 -0
  101. package/dist/ui/components/nature/sky/Sun.svelte +70 -0
  102. package/dist/ui/components/nature/sky/Sun.svelte.d.ts +9 -0
  103. package/dist/ui/components/nature/sky/index.d.ts +8 -0
  104. package/dist/ui/components/nature/sky/index.js +9 -0
  105. package/dist/ui/components/nature/structural/Birdhouse.svelte +53 -0
  106. package/dist/ui/components/nature/structural/Birdhouse.svelte.d.ts +8 -0
  107. package/dist/ui/components/nature/structural/Bridge.svelte +65 -0
  108. package/dist/ui/components/nature/structural/Bridge.svelte.d.ts +7 -0
  109. package/dist/ui/components/nature/structural/FencePost.svelte +54 -0
  110. package/dist/ui/components/nature/structural/FencePost.svelte.d.ts +8 -0
  111. package/dist/ui/components/nature/structural/GardenGate.svelte +70 -0
  112. package/dist/ui/components/nature/structural/GardenGate.svelte.d.ts +8 -0
  113. package/dist/ui/components/nature/structural/Lantern.svelte +113 -0
  114. package/dist/ui/components/nature/structural/Lantern.svelte.d.ts +10 -0
  115. package/dist/ui/components/nature/structural/Lattice.svelte +89 -0
  116. package/dist/ui/components/nature/structural/Lattice.svelte.d.ts +8 -0
  117. package/dist/ui/components/nature/structural/LatticeWithVine.svelte +89 -0
  118. package/dist/ui/components/nature/structural/LatticeWithVine.svelte.d.ts +11 -0
  119. package/dist/ui/components/nature/structural/StonePath.svelte +48 -0
  120. package/dist/ui/components/nature/structural/StonePath.svelte.d.ts +7 -0
  121. package/dist/ui/components/nature/structural/index.d.ts +8 -0
  122. package/dist/ui/components/nature/structural/index.js +9 -0
  123. package/dist/ui/components/nature/trees/TreeAspen.svelte +163 -0
  124. package/dist/ui/components/nature/trees/TreeAspen.svelte.d.ts +11 -0
  125. package/dist/ui/components/nature/trees/TreeBirch.svelte +186 -0
  126. package/dist/ui/components/nature/trees/TreeBirch.svelte.d.ts +11 -0
  127. package/dist/ui/components/nature/trees/TreeCherry.svelte +108 -0
  128. package/dist/ui/components/nature/trees/TreeCherry.svelte.d.ts +11 -0
  129. package/dist/ui/components/nature/trees/TreePine.svelte +79 -0
  130. package/dist/ui/components/nature/trees/TreePine.svelte.d.ts +11 -0
  131. package/dist/ui/components/nature/trees/index.d.ts +4 -0
  132. package/dist/ui/components/nature/trees/index.js +5 -0
  133. package/dist/ui/components/nature/water/LilyPad.svelte +99 -0
  134. package/dist/ui/components/nature/water/LilyPad.svelte.d.ts +10 -0
  135. package/dist/ui/components/nature/water/Pond.svelte +104 -0
  136. package/dist/ui/components/nature/water/Pond.svelte.d.ts +8 -0
  137. package/dist/ui/components/nature/water/Reeds.svelte +85 -0
  138. package/dist/ui/components/nature/water/Reeds.svelte.d.ts +11 -0
  139. package/dist/ui/components/nature/water/Stream.svelte +98 -0
  140. package/dist/ui/components/nature/water/Stream.svelte.d.ts +8 -0
  141. package/dist/ui/components/nature/water/index.d.ts +4 -0
  142. package/dist/ui/components/nature/water/index.js +5 -0
  143. package/dist/ui/components/nature/weather/SnowfallLayer.svelte +175 -0
  144. package/dist/ui/components/nature/weather/SnowfallLayer.svelte.d.ts +25 -0
  145. package/dist/ui/components/nature/weather/Snowflake.svelte +99 -0
  146. package/dist/ui/components/nature/weather/Snowflake.svelte.d.ts +11 -0
  147. package/dist/ui/components/nature/weather/SnowflakeFalling.svelte +162 -0
  148. package/dist/ui/components/nature/weather/SnowflakeFalling.svelte.d.ts +23 -0
  149. package/dist/ui/components/nature/weather/index.d.ts +3 -0
  150. package/dist/ui/components/nature/weather/index.js +4 -0
  151. package/dist/ui/components/ui/GlassLogo.svelte +422 -0
  152. package/dist/ui/components/ui/GlassLogo.svelte.d.ts +23 -0
  153. package/dist/ui/components/ui/GlassNavbar.svelte +120 -0
  154. package/dist/ui/components/ui/GlassNavbar.svelte.d.ts +42 -0
  155. package/dist/ui/components/ui/Logo.svelte +47 -52
  156. package/dist/ui/components/ui/Logo.svelte.d.ts +4 -3
  157. package/dist/ui/components/ui/index.d.ts +2 -0
  158. package/dist/ui/components/ui/index.js +2 -0
  159. package/dist/ui/styles/grove.css +15 -1
  160. package/package.json +11 -1
@@ -0,0 +1,59 @@
1
+ <!--
2
+ Grove — A place to Be
3
+ Copyright (c) 2025 Autumn Brown
4
+ Licensed under AGPL-3.0
5
+ -->
6
+ <script lang="ts">
7
+ import { earth } from '../palette';
8
+
9
+ interface Props {
10
+ class?: string;
11
+ color?: string;
12
+ variant?: 'round' | 'flat' | 'jagged';
13
+ }
14
+
15
+ let {
16
+ class: className = 'w-6 h-4',
17
+ color,
18
+ variant = 'round'
19
+ }: Props = $props();
20
+
21
+ const rockColor = $derived(color ?? earth.stone);
22
+ const highlightColor = earth.pebble;
23
+ const shadowColor = earth.slate;
24
+ </script>
25
+
26
+ <!-- Rock/stone - matte natural appearance -->
27
+ <svg class={className} xmlns="http://www.w3.org/2000/svg" viewBox="0 0 60 40">
28
+ {#if variant === 'round'}
29
+ <!-- Rounded boulder with natural matte finish -->
30
+ <ellipse fill={rockColor} cx="30" cy="26" rx="27" ry="14" />
31
+ <!-- Subtle surface variation instead of shiny highlight -->
32
+ <ellipse fill={highlightColor} cx="22" cy="22" rx="8" ry="4" opacity="0.15" />
33
+ <ellipse fill={highlightColor} cx="35" cy="20" rx="5" ry="3" opacity="0.1" />
34
+ <!-- Darker underside shadow -->
35
+ <ellipse fill={shadowColor} cx="30" cy="32" rx="20" ry="5" opacity="0.15" />
36
+ <!-- Surface texture marks -->
37
+ <path fill={shadowColor} d="M18 24 Q20 26 22 24" opacity="0.12" stroke={shadowColor} stroke-width="0.5" />
38
+ <path fill={shadowColor} d="M38 22 Q40 24 42 23" opacity="0.1" stroke={shadowColor} stroke-width="0.5" />
39
+ {:else if variant === 'flat'}
40
+ <!-- Flat stepping stone with weathered look -->
41
+ <ellipse fill={rockColor} cx="30" cy="28" rx="27" ry="11" />
42
+ <!-- Subtle worn surface -->
43
+ <ellipse fill={highlightColor} cx="24" cy="26" rx="12" ry="4" opacity="0.12" />
44
+ <ellipse fill={highlightColor} cx="38" cy="25" rx="6" ry="3" opacity="0.08" />
45
+ <!-- Surface cracks/weathering -->
46
+ <path fill="none" stroke={shadowColor} stroke-width="0.5" d="M20 28 L28 27" opacity="0.15" />
47
+ <path fill="none" stroke={shadowColor} stroke-width="0.5" d="M35 29 L40 28" opacity="0.12" />
48
+ {:else}
49
+ <!-- Jagged rock with rough texture -->
50
+ <polygon fill={rockColor} points="5,40 15,22 28,38 38,12 48,28 55,18 58,40" />
51
+ <!-- Muted face highlights -->
52
+ <polygon fill={highlightColor} points="15,22 28,38 38,12 32,20 24,32" opacity="0.12" />
53
+ <!-- Shadowed face -->
54
+ <polygon fill={shadowColor} points="38,12 48,28 55,18 58,40 48,38 44,25" opacity="0.15" />
55
+ <!-- Surface texture -->
56
+ <path fill="none" stroke={shadowColor} stroke-width="0.5" d="M22 30 L26 28" opacity="0.15" />
57
+ <path fill="none" stroke={shadowColor} stroke-width="0.5" d="M42 25 L46 28" opacity="0.12" />
58
+ {/if}
59
+ </svg>
@@ -0,0 +1,8 @@
1
+ interface Props {
2
+ class?: string;
3
+ color?: string;
4
+ variant?: 'round' | 'flat' | 'jagged';
5
+ }
6
+ declare const Rock: import("svelte").Component<Props, {}, "">;
7
+ type Rock = ReturnType<typeof Rock>;
8
+ export default Rock;
@@ -0,0 +1,44 @@
1
+ <!--
2
+ Grove — A place to Be
3
+ Copyright (c) 2025 Autumn Brown
4
+ Licensed under AGPL-3.0
5
+ -->
6
+ <script lang="ts">
7
+ import { bark, earth } from '../palette';
8
+
9
+ interface Props {
10
+ class?: string;
11
+ barkColor?: string;
12
+ ringColor?: string;
13
+ }
14
+
15
+ let {
16
+ class: className = 'w-8 h-6',
17
+ barkColor,
18
+ ringColor
19
+ }: Props = $props();
20
+
21
+ const barkFill = $derived(barkColor ?? bark.warmBark);
22
+ const ringFill = $derived(ringColor ?? earth.sand);
23
+ const centerColor = bark.lightBark;
24
+ </script>
25
+
26
+ <!-- Tree stump with visible rings -->
27
+ <svg class={className} xmlns="http://www.w3.org/2000/svg" viewBox="0 0 70 50">
28
+ <!-- Bark exterior -->
29
+ <path fill={barkFill} d="M10 20 Q8 35 5 50 L65 50 Q62 35 60 20 Q35 15 10 20" />
30
+
31
+ <!-- Top surface -->
32
+ <ellipse fill={ringFill} cx="35" cy="20" rx="28" ry="12" />
33
+
34
+ <!-- Tree rings -->
35
+ <ellipse fill="none" stroke={barkFill} stroke-width="1.5" cx="35" cy="20" rx="22" ry="9" opacity="0.6" />
36
+ <ellipse fill="none" stroke={barkFill} stroke-width="1" cx="35" cy="20" rx="16" ry="6" opacity="0.5" />
37
+ <ellipse fill="none" stroke={barkFill} stroke-width="1" cx="35" cy="20" rx="10" ry="4" opacity="0.4" />
38
+ <ellipse fill={centerColor} cx="35" cy="20" rx="4" ry="2" opacity="0.6" />
39
+
40
+ <!-- Bark texture lines -->
41
+ <path fill="none" stroke={bark.darkBark} stroke-width="1" d="M15 25 Q14 35 12 45" opacity="0.4" />
42
+ <path fill="none" stroke={bark.darkBark} stroke-width="1" d="M55 25 Q56 35 58 45" opacity="0.4" />
43
+ <path fill="none" stroke={bark.darkBark} stroke-width="1" d="M35 32 L35 48" opacity="0.3" />
44
+ </svg>
@@ -0,0 +1,8 @@
1
+ interface Props {
2
+ class?: string;
3
+ barkColor?: string;
4
+ ringColor?: string;
5
+ }
6
+ declare const Stump: import("svelte").Component<Props, {}, "">;
7
+ type Stump = ReturnType<typeof Stump>;
8
+ export default Stump;
@@ -0,0 +1,79 @@
1
+ <!--
2
+ Grove — A place to Be
3
+ Copyright (c) 2025 Autumn Brown
4
+ Licensed under AGPL-3.0
5
+ -->
6
+ <script lang="ts">
7
+ import { greens, spring } from '../palette';
8
+
9
+ interface Props {
10
+ class?: string;
11
+ style?: string;
12
+ petalColor?: string;
13
+ stemColor?: string;
14
+ variant?: 'red' | 'pink' | 'yellow' | 'purple';
15
+ animate?: boolean;
16
+ }
17
+
18
+ let {
19
+ class: className = 'w-4 h-8',
20
+ style,
21
+ petalColor,
22
+ stemColor,
23
+ variant = 'red',
24
+ animate = true
25
+ }: Props = $props();
26
+
27
+ // Tulip color variants
28
+ const variantColors = {
29
+ red: spring.tulipRed,
30
+ pink: spring.tulipPink,
31
+ yellow: spring.daffodil,
32
+ purple: spring.crocus
33
+ };
34
+
35
+ const petals = $derived(petalColor ?? variantColors[variant]);
36
+ const stem = $derived(stemColor ?? greens.deepGreen);
37
+
38
+ // Slightly darker shade for inner petals
39
+ const innerPetal = $derived(variant === 'red' ? '#e11d48' :
40
+ variant === 'pink' ? '#f472b6' :
41
+ variant === 'yellow' ? '#facc15' :
42
+ '#8b5cf6');
43
+ </script>
44
+
45
+ <!-- Classic tulip - spring icon -->
46
+ <svg class="{className} {animate ? 'sway' : ''}" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 40 80" style={style}>
47
+ <!-- Stem -->
48
+ <path fill="none" stroke={stem} stroke-width="3" d="M20 80 Q18 60 20 40" />
49
+
50
+ <!-- Leaves -->
51
+ <path fill={stem} d="M20 70 Q8 60 5 65 Q12 55 20 60" />
52
+ <path fill={stem} d="M20 60 Q32 50 35 55 Q28 45 20 52" />
53
+
54
+ <!-- Tulip bloom - cup shape with overlapping petals -->
55
+ <!-- Back petals -->
56
+ <path fill={innerPetal} d="M10 35 Q8 20 15 10 Q20 5 25 10 Q32 20 30 35 Q20 38 10 35" />
57
+
58
+ <!-- Side petals -->
59
+ <path fill={petals} d="M8 36 Q5 25 10 12 Q15 5 20 10 Q12 15 10 25 Q8 32 8 36" />
60
+ <path fill={petals} d="M32 36 Q35 25 30 12 Q25 5 20 10 Q28 15 30 25 Q32 32 32 36" />
61
+
62
+ <!-- Front petal -->
63
+ <path fill={petals} d="M12 38 Q10 30 15 18 Q20 12 25 18 Q30 30 28 38 Q20 42 12 38" />
64
+
65
+ <!-- Petal highlights -->
66
+ <path fill="white" d="M18 20 Q20 15 22 20 Q20 25 18 20" opacity="0.2" />
67
+ </svg>
68
+
69
+ <style>
70
+ @keyframes sway {
71
+ 0%, 100% { transform: rotate(0deg); }
72
+ 50% { transform: rotate(2deg); }
73
+ }
74
+
75
+ .sway {
76
+ transform-origin: center bottom;
77
+ animation: sway 3s ease-in-out infinite;
78
+ }
79
+ </style>
@@ -0,0 +1,11 @@
1
+ interface Props {
2
+ class?: string;
3
+ style?: string;
4
+ petalColor?: string;
5
+ stemColor?: string;
6
+ variant?: 'red' | 'pink' | 'yellow' | 'purple';
7
+ animate?: boolean;
8
+ }
9
+ declare const Tulip: import("svelte").Component<Props, {}, "">;
10
+ type Tulip = ReturnType<typeof Tulip>;
11
+ export default Tulip;
@@ -0,0 +1,12 @@
1
+ export { default as Bush } from './Bush.svelte';
2
+ export { default as Crocus } from './Crocus.svelte';
3
+ export { default as Daffodil } from './Daffodil.svelte';
4
+ export { default as Fern } from './Fern.svelte';
5
+ export { default as FlowerWild } from './FlowerWild.svelte';
6
+ export { default as GrassTuft } from './GrassTuft.svelte';
7
+ export { default as Log } from './Log.svelte';
8
+ export { default as Mushroom } from './Mushroom.svelte';
9
+ export { default as MushroomCluster } from './MushroomCluster.svelte';
10
+ export { default as Rock } from './Rock.svelte';
11
+ export { default as Stump } from './Stump.svelte';
12
+ export { default as Tulip } from './Tulip.svelte';
@@ -0,0 +1,13 @@
1
+ // Ground components - forest floor elements
2
+ export { default as Bush } from './Bush.svelte';
3
+ export { default as Crocus } from './Crocus.svelte';
4
+ export { default as Daffodil } from './Daffodil.svelte';
5
+ export { default as Fern } from './Fern.svelte';
6
+ export { default as FlowerWild } from './FlowerWild.svelte';
7
+ export { default as GrassTuft } from './GrassTuft.svelte';
8
+ export { default as Log } from './Log.svelte';
9
+ export { default as Mushroom } from './Mushroom.svelte';
10
+ export { default as MushroomCluster } from './MushroomCluster.svelte';
11
+ export { default as Rock } from './Rock.svelte';
12
+ export { default as Stump } from './Stump.svelte';
13
+ export { default as Tulip } from './Tulip.svelte';
@@ -0,0 +1,28 @@
1
+ /**
2
+ * Nature Components - Grove's organic visual library
3
+ *
4
+ * A collection of SVG components for creating atmospheric forest scenes.
5
+ * These components are seasonally-aware and support Grove's four seasons.
6
+ *
7
+ * @example
8
+ * ```svelte
9
+ * <script>
10
+ * import { Logo, TreePine, Cardinal } from '@autumnsgrove/groveengine/ui/nature';
11
+ * import { autumn } from '@autumnsgrove/groveengine/ui/nature';
12
+ * </script>
13
+ *
14
+ * <Logo season="autumn" animate />
15
+ * <TreePine season="winter" />
16
+ * <Cardinal />
17
+ * ```
18
+ */
19
+ export { default as Logo } from './Logo.svelte';
20
+ export * from './palette';
21
+ export * from './trees';
22
+ export * from './botanical';
23
+ export * from './creatures';
24
+ export * from './ground';
25
+ export * from './sky';
26
+ export * from './structural';
27
+ export * from './water';
28
+ export * from './weather';
@@ -0,0 +1,38 @@
1
+ /**
2
+ * Nature Components - Grove's organic visual library
3
+ *
4
+ * A collection of SVG components for creating atmospheric forest scenes.
5
+ * These components are seasonally-aware and support Grove's four seasons.
6
+ *
7
+ * @example
8
+ * ```svelte
9
+ * <script>
10
+ * import { Logo, TreePine, Cardinal } from '@autumnsgrove/groveengine/ui/nature';
11
+ * import { autumn } from '@autumnsgrove/groveengine/ui/nature';
12
+ * </script>
13
+ *
14
+ * <Logo season="autumn" animate />
15
+ * <TreePine season="winter" />
16
+ * <Cardinal />
17
+ * ```
18
+ */
19
+ // Logo - Grove's tree-star logo
20
+ export { default as Logo } from './Logo.svelte';
21
+ // Palette - Seasonal color system
22
+ export * from './palette';
23
+ // Trees
24
+ export * from './trees';
25
+ // Botanical elements
26
+ export * from './botanical';
27
+ // Creatures
28
+ export * from './creatures';
29
+ // Ground elements
30
+ export * from './ground';
31
+ // Sky elements
32
+ export * from './sky';
33
+ // Structural elements
34
+ export * from './structural';
35
+ // Water elements
36
+ export * from './water';
37
+ // Weather effects
38
+ export * from './weather';