create-bearminion 0.0.0-stage → 1.0.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.
Files changed (120) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +65 -2
  3. package/dist/cli.mjs +1369 -0
  4. package/package.json +55 -4
  5. package/template/.storybook/main.ts +14 -0
  6. package/template/.storybook/preview.css +8 -0
  7. package/template/.storybook/preview.ts +17 -0
  8. package/template/README.md +251 -0
  9. package/template/_gitignore +21 -0
  10. package/template/astro.config.ts +46 -0
  11. package/template/content/pages/404.json +36 -0
  12. package/template/content/pages/about.json +101 -0
  13. package/template/content/pages/index.json +463 -0
  14. package/template/content/pages/preview.json +40 -0
  15. package/template/content/site.json +117 -0
  16. package/template/package.json +37 -0
  17. package/template/src/assets/uploads/favicon.png +0 -0
  18. package/template/src/assets/uploads/hero.png +0 -0
  19. package/template/src/assets/uploads/logo.png +0 -0
  20. package/template/src/assets/uploads/og.png +0 -0
  21. package/template/src/components/atoms/Button.astro +64 -0
  22. package/template/src/components/atoms/Button.stories.ts +42 -0
  23. package/template/src/components/atoms/Emphasis.astro +24 -0
  24. package/template/src/components/atoms/Emphasis.stories.ts +25 -0
  25. package/template/src/components/atoms/Image.astro +78 -0
  26. package/template/src/components/atoms/Image.stories.ts +35 -0
  27. package/template/src/components/atoms/LogoMark.astro +53 -0
  28. package/template/src/components/atoms/LogoMark.stories.ts +25 -0
  29. package/template/src/components/atoms/Typography.astro +50 -0
  30. package/template/src/components/atoms/Typography.stories.ts +20 -0
  31. package/template/src/components/atoms/button.ts +31 -0
  32. package/template/src/components/atoms/image.ts +34 -0
  33. package/template/src/components/atoms/options.ts +39 -0
  34. package/template/src/components/atoms/typography.ts +63 -0
  35. package/template/src/components/molecules/MediaFrame.astro +71 -0
  36. package/template/src/components/molecules/MediaFrame.stories.ts +14 -0
  37. package/template/src/components/molecules/Pill.astro +24 -0
  38. package/template/src/components/molecules/Pill.stories.ts +12 -0
  39. package/template/src/components/molecules/SectionHeader.astro +63 -0
  40. package/template/src/components/molecules/SectionHeader.stories.ts +15 -0
  41. package/template/src/components/molecules/SectionShell.astro +33 -0
  42. package/template/src/components/molecules/SectionShell.stories.ts +25 -0
  43. package/template/src/components/organisms/Footer.astro +133 -0
  44. package/template/src/components/organisms/Footer.stories.ts +16 -0
  45. package/template/src/components/organisms/FooterLinks.astro +32 -0
  46. package/template/src/components/organisms/Header.astro +94 -0
  47. package/template/src/components/organisms/Header.stories.ts +27 -0
  48. package/template/src/components/organisms/MobileBranch.astro +52 -0
  49. package/template/src/components/organisms/MobileMenu.astro +110 -0
  50. package/template/src/components/organisms/MobileMenu.stories.ts +30 -0
  51. package/template/src/components/organisms/NavBranch.astro +61 -0
  52. package/template/src/components/organisms/Navigation.astro +32 -0
  53. package/template/src/components/organisms/Navigation.stories.ts +25 -0
  54. package/template/src/components/organisms/site-definition.ts +28 -0
  55. package/template/src/components/sections/SectionList.astro +53 -0
  56. package/template/src/components/sections/contact/Contact.astro +227 -0
  57. package/template/src/components/sections/contact/Contact.stories.ts +16 -0
  58. package/template/src/components/sections/contact/definition.ts +50 -0
  59. package/template/src/components/sections/contact/wireframe.ts +15 -0
  60. package/template/src/components/sections/cta/Cta.astro +181 -0
  61. package/template/src/components/sections/cta/Cta.stories.ts +19 -0
  62. package/template/src/components/sections/cta/definition.ts +35 -0
  63. package/template/src/components/sections/cta/wireframe.ts +9 -0
  64. package/template/src/components/sections/definitions.ts +54 -0
  65. package/template/src/components/sections/faq/Faq.astro +131 -0
  66. package/template/src/components/sections/faq/Faq.stories.ts +16 -0
  67. package/template/src/components/sections/faq/definition.ts +51 -0
  68. package/template/src/components/sections/faq/wireframe.ts +19 -0
  69. package/template/src/components/sections/features/Features.astro +121 -0
  70. package/template/src/components/sections/features/Features.stories.ts +19 -0
  71. package/template/src/components/sections/features/definition.ts +64 -0
  72. package/template/src/components/sections/features/wireframe.ts +19 -0
  73. package/template/src/components/sections/hero/Hero.astro +155 -0
  74. package/template/src/components/sections/hero/Hero.stories.ts +28 -0
  75. package/template/src/components/sections/hero/definition.ts +36 -0
  76. package/template/src/components/sections/hero/wireframe.ts +12 -0
  77. package/template/src/components/sections/logo-strip/LogoStrip.astro +107 -0
  78. package/template/src/components/sections/logo-strip/LogoStrip.stories.ts +20 -0
  79. package/template/src/components/sections/logo-strip/definition.ts +30 -0
  80. package/template/src/components/sections/logo-strip/wireframe.ts +11 -0
  81. package/template/src/components/sections/pricing/Pricing.astro +210 -0
  82. package/template/src/components/sections/pricing/Pricing.stories.ts +16 -0
  83. package/template/src/components/sections/pricing/definition.ts +62 -0
  84. package/template/src/components/sections/pricing/wireframe.ts +18 -0
  85. package/template/src/components/sections/registry.ts +25 -0
  86. package/template/src/components/sections/shared.ts +13 -0
  87. package/template/src/components/sections/stats/Stats.astro +110 -0
  88. package/template/src/components/sections/stats/Stats.stories.ts +16 -0
  89. package/template/src/components/sections/stats/definition.ts +41 -0
  90. package/template/src/components/sections/stats/wireframe.ts +15 -0
  91. package/template/src/components/sections/testimonials/Testimonials.astro +172 -0
  92. package/template/src/components/sections/testimonials/Testimonials.stories.ts +19 -0
  93. package/template/src/components/sections/testimonials/definition.ts +42 -0
  94. package/template/src/components/sections/testimonials/wireframe.ts +21 -0
  95. package/template/src/components/sections/text-image/TextImage.astro +109 -0
  96. package/template/src/components/sections/text-image/TextImage.stories.ts +19 -0
  97. package/template/src/components/sections/text-image/definition.ts +38 -0
  98. package/template/src/components/sections/text-image/wireframe.ts +12 -0
  99. package/template/src/components/seo/Seo.astro +63 -0
  100. package/template/src/content.config.ts +19 -0
  101. package/template/src/dev/style-guide.astro +124 -0
  102. package/template/src/dev/variants.astro +117 -0
  103. package/template/src/env.d.ts +1 -0
  104. package/template/src/layouts/Base.astro +74 -0
  105. package/template/src/lib/assets.ts +13 -0
  106. package/template/src/lib/cn.ts +6 -0
  107. package/template/src/lib/content-dir.ts +8 -0
  108. package/template/src/lib/content-model.ts +25 -0
  109. package/template/src/lib/content.ts +26 -0
  110. package/template/src/lib/link-attrs.ts +74 -0
  111. package/template/src/lib/render-preview.ts +29 -0
  112. package/template/src/lib/sitemap.ts +36 -0
  113. package/template/src/pages/404.astro +15 -0
  114. package/template/src/pages/[...slug].astro +32 -0
  115. package/template/src/pages/robots.txt.ts +10 -0
  116. package/template/src/stories/args.ts +34 -0
  117. package/template/src/stories/options.ts +63 -0
  118. package/template/src/stories/sample.ts +24 -0
  119. package/template/src/styles/global.css +379 -0
  120. package/template/tsconfig.json +8 -0
@@ -0,0 +1,463 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "sections": [
4
+ {
5
+ "anchor": "hero",
6
+ "id": "hero",
7
+ "props": {
8
+ "eyebrow": "Your TAGLINE",
9
+ "heading": "Say what you do in one line.",
10
+ "image": {
11
+ "alt": "Image",
12
+ "fit": "auto",
13
+ "src": "src/assets/uploads/hero.png"
14
+ },
15
+ "marks": [
16
+ {
17
+ "end": 28,
18
+ "font": "serif",
19
+ "italic": true,
20
+ "start": 19
21
+ }
22
+ ],
23
+ "primary": {
24
+ "href": "#cta",
25
+ "label": "Primary action"
26
+ },
27
+ "secondary": {
28
+ "href": "#features",
29
+ "label": "Secondary action",
30
+ "style": "tertiary"
31
+ },
32
+ "sub": "Use this *paragraph* to say who it is for and what they get. Keep it to two sentences, with **one key phrase in bold** and a [link for the curious](https://astro.build)."
33
+ },
34
+ "tone": "base",
35
+ "type": "hero",
36
+ "variant": "split"
37
+ },
38
+ {
39
+ "anchor": "logos",
40
+ "id": "logos",
41
+ "props": {
42
+ "label": "Trusted by teams like yours",
43
+ "logos": [
44
+ {
45
+ "alt": "Partner logo 1",
46
+ "src": "placeholder"
47
+ },
48
+ {
49
+ "alt": "Partner logo 2",
50
+ "src": "placeholder"
51
+ },
52
+ {
53
+ "alt": "Partner logo 3",
54
+ "src": "placeholder"
55
+ },
56
+ {
57
+ "alt": "Partner logo 4",
58
+ "src": "placeholder"
59
+ },
60
+ {
61
+ "alt": "Partner logo 5",
62
+ "src": "placeholder"
63
+ },
64
+ {
65
+ "alt": "Partner logo 6",
66
+ "src": "placeholder"
67
+ }
68
+ ]
69
+ },
70
+ "tone": "base",
71
+ "type": "logoStrip",
72
+ "variant": "marquee"
73
+ },
74
+ {
75
+ "anchor": "features",
76
+ "id": "features",
77
+ "props": {
78
+ "eyebrow": "Features",
79
+ "heading": "Four reasons to choose you",
80
+ "intro": "Introduce the list in a sentence. Each card takes a short title, a description and an optional image.",
81
+ "items": [
82
+ {
83
+ "description": "Describe one benefit in a sentence or two. Lead with what the reader gets.",
84
+ "image": {
85
+ "alt": "",
86
+ "src": "placeholder"
87
+ },
88
+ "title": "First benefit"
89
+ },
90
+ {
91
+ "description": "Keep each description about the same length so the cards line up.",
92
+ "image": {
93
+ "alt": "",
94
+ "src": "placeholder"
95
+ },
96
+ "title": "Second benefit"
97
+ },
98
+ {
99
+ "description": "Name a concrete outcome, a number or a time saved, not a feature list.",
100
+ "image": {
101
+ "alt": "",
102
+ "src": "placeholder"
103
+ },
104
+ "title": "Third benefit"
105
+ },
106
+ {
107
+ "description": "Close with the point that removes the last doubt before someone gets in touch.",
108
+ "image": {
109
+ "alt": "",
110
+ "src": "placeholder"
111
+ },
112
+ "title": "Fourth benefit"
113
+ }
114
+ ],
115
+ "link": {
116
+ "href": "#workflow",
117
+ "label": "See all features"
118
+ },
119
+ "marks": [
120
+ {
121
+ "end": 12,
122
+ "font": "serif",
123
+ "italic": true,
124
+ "start": 5
125
+ }
126
+ ]
127
+ },
128
+ "tone": "base",
129
+ "type": "features",
130
+ "variant": "bento"
131
+ },
132
+ {
133
+ "anchor": "workflow",
134
+ "id": "workflow",
135
+ "props": {
136
+ "body": "A paragraph that walks through how the product or service works, from the first contact to the result.",
137
+ "eyebrow": "How it works",
138
+ "heading": "Explain it in three steps.",
139
+ "image": {
140
+ "alt": "",
141
+ "src": "placeholder"
142
+ },
143
+ "link": {
144
+ "href": "#faq",
145
+ "label": "Learn more"
146
+ },
147
+ "marks": [
148
+ {
149
+ "end": 26,
150
+ "font": "serif",
151
+ "italic": true,
152
+ "start": 14
153
+ }
154
+ ],
155
+ "points": [
156
+ "Step one: what happens first",
157
+ "Step two: what you do for them",
158
+ "Step three: what they end up with"
159
+ ]
160
+ },
161
+ "tone": "subtle",
162
+ "type": "textImage",
163
+ "variant": "right"
164
+ },
165
+ {
166
+ "anchor": "stats",
167
+ "id": "stats",
168
+ "props": {
169
+ "body": "Pick three or four numbers you can stand behind, and say in a few words what each one counts.",
170
+ "eyebrow": "By the numbers",
171
+ "heading": "Figures that build trust.",
172
+ "items": [
173
+ {
174
+ "label": "customers since launch",
175
+ "value": "120+"
176
+ },
177
+ {
178
+ "label": "would recommend us",
179
+ "value": "98%"
180
+ },
181
+ {
182
+ "label": "average reply time",
183
+ "value": "24 h"
184
+ },
185
+ {
186
+ "label": "in business",
187
+ "value": "10 yrs"
188
+ }
189
+ ],
190
+ "marks": [
191
+ {
192
+ "end": 25,
193
+ "font": "serif",
194
+ "italic": true,
195
+ "start": 13
196
+ }
197
+ ]
198
+ },
199
+ "tone": "inverse",
200
+ "type": "stats",
201
+ "variant": "row"
202
+ },
203
+ {
204
+ "anchor": "testimonials",
205
+ "id": "testimonials",
206
+ "props": {
207
+ "eyebrow": "Testimonials",
208
+ "heading": "What people say",
209
+ "items": [
210
+ {
211
+ "name": "Alex Morgan",
212
+ "quote": "A short quote from a happy customer. One or two sentences that sound like a real person.",
213
+ "role": "Role, Company"
214
+ },
215
+ {
216
+ "name": "Sam Rivera",
217
+ "quote": "Quotes work best when they name a specific result, not just a compliment.",
218
+ "role": "Role, Company"
219
+ },
220
+ {
221
+ "name": "Jordan Lee",
222
+ "quote": "Ask for permission before you publish a name, and add a photo if you have one.",
223
+ "role": "Role, Company"
224
+ }
225
+ ],
226
+ "marks": [
227
+ {
228
+ "end": 15,
229
+ "font": "serif",
230
+ "italic": true,
231
+ "start": 5
232
+ }
233
+ ]
234
+ },
235
+ "tone": "base",
236
+ "type": "testimonials",
237
+ "variant": "carousel"
238
+ },
239
+ {
240
+ "anchor": "pricing",
241
+ "id": "pricing",
242
+ "props": {
243
+ "eyebrow": "Pricing",
244
+ "heading": "Simple plans, no surprises.",
245
+ "intro": "Say what every plan includes, then let the table below cover the differences.",
246
+ "marks": [
247
+ {
248
+ "end": 27,
249
+ "font": "serif",
250
+ "italic": true,
251
+ "start": 14
252
+ }
253
+ ],
254
+ "plans": [
255
+ {
256
+ "blurb": "For trying things out.",
257
+ "cta": {
258
+ "href": "#contact",
259
+ "label": "Start free"
260
+ },
261
+ "features": [
262
+ "Core features",
263
+ "One project",
264
+ "Community support"
265
+ ],
266
+ "monthly": 0,
267
+ "name": "Starter"
268
+ },
269
+ {
270
+ "blurb": "For growing teams.",
271
+ "cta": {
272
+ "href": "#contact",
273
+ "label": "Choose Pro"
274
+ },
275
+ "featured": true,
276
+ "features": [
277
+ "Everything in Starter",
278
+ "Unlimited projects",
279
+ "Priority email support",
280
+ "Team members"
281
+ ],
282
+ "monthly": 19,
283
+ "name": "Pro"
284
+ },
285
+ {
286
+ "blurb": "For larger organisations.",
287
+ "cta": {
288
+ "href": "#contact",
289
+ "label": "Contact sales"
290
+ },
291
+ "features": [
292
+ "Everything in Pro",
293
+ "Custom onboarding",
294
+ "Dedicated contact"
295
+ ],
296
+ "monthly": 49,
297
+ "name": "Business"
298
+ }
299
+ ],
300
+ "rows": [
301
+ [
302
+ "Core features",
303
+ true,
304
+ true,
305
+ true
306
+ ],
307
+ [
308
+ "Projects",
309
+ "1",
310
+ "Unlimited",
311
+ "Unlimited"
312
+ ],
313
+ [
314
+ "Team members",
315
+ false,
316
+ true,
317
+ true
318
+ ],
319
+ [
320
+ "Custom onboarding",
321
+ false,
322
+ false,
323
+ true
324
+ ],
325
+ [
326
+ "Support",
327
+ "Community",
328
+ "Email",
329
+ "Dedicated"
330
+ ]
331
+ ],
332
+ "singleHeading": "One plan with everything included.",
333
+ "yearlyDiscount": 0.2
334
+ },
335
+ "tone": "subtle",
336
+ "type": "pricing",
337
+ "variant": "tiers"
338
+ },
339
+ {
340
+ "anchor": "faq",
341
+ "id": "faq",
342
+ "props": {
343
+ "eyebrow": "FAQ",
344
+ "heading": "Questions, answered plainly.",
345
+ "items": [
346
+ {
347
+ "a": "Answer the question people ask most before they buy. Keep each answer to two or three sentences.",
348
+ "q": "What is included?"
349
+ },
350
+ {
351
+ "a": "Give a realistic time frame and say what the reader needs to have ready.",
352
+ "q": "How long does it take to get started?"
353
+ },
354
+ {
355
+ "a": "Explain how upgrades, downgrades and billing changes work.",
356
+ "q": "Can I change plans later?"
357
+ },
358
+ {
359
+ "a": "State the policy in plain words, with the time limit if there is one.",
360
+ "q": "Do you offer refunds?"
361
+ },
362
+ {
363
+ "a": "Say where data lives and who can access it. Link to the privacy policy for the details.",
364
+ "q": "Where is my data stored?"
365
+ },
366
+ {
367
+ "a": "List the ways to reach you and how quickly people can expect a reply.",
368
+ "q": "How do I get help?"
369
+ }
370
+ ],
371
+ "marks": [
372
+ {
373
+ "end": 28,
374
+ "font": "serif",
375
+ "italic": true,
376
+ "start": 11
377
+ }
378
+ ],
379
+ "more": "Still have a question? The contact section below reaches a person."
380
+ },
381
+ "tone": "base",
382
+ "type": "faq",
383
+ "variant": "split"
384
+ },
385
+ {
386
+ "anchor": "cta",
387
+ "id": "cta",
388
+ "props": {
389
+ "body": "One sentence that repeats the main benefit and tells the reader what happens next.",
390
+ "heading": "Ready to get started?",
391
+ "marks": [
392
+ {
393
+ "end": 21,
394
+ "font": "serif",
395
+ "italic": true,
396
+ "start": 9
397
+ }
398
+ ],
399
+ "primary": {
400
+ "href": "#contact",
401
+ "label": "Primary action"
402
+ },
403
+ "secondary": {
404
+ "href": "#features",
405
+ "label": "Secondary action"
406
+ }
407
+ },
408
+ "tone": "base",
409
+ "type": "cta",
410
+ "variant": "band"
411
+ },
412
+ {
413
+ "anchor": "contact",
414
+ "id": "contact",
415
+ "props": {
416
+ "body": "Tell people what they can contact you about and when they will hear back.",
417
+ "details": [
418
+ {
419
+ "label": "Email",
420
+ "value": "hello@example.com"
421
+ },
422
+ {
423
+ "label": "Phone",
424
+ "value": "+1 555 010 0100"
425
+ },
426
+ {
427
+ "label": "Hours",
428
+ "value": "Monday to Friday, 9:00 to 17:00"
429
+ }
430
+ ],
431
+ "eyebrow": "Contact",
432
+ "heading": "Get in touch.",
433
+ "marks": [
434
+ {
435
+ "end": 13,
436
+ "font": "serif",
437
+ "italic": true,
438
+ "start": 4
439
+ }
440
+ ],
441
+ "note": "We only use your details to reply to you.",
442
+ "thanks": "Thanks, your message is on its way. We will reply within two working days.",
443
+ "topics": [
444
+ "General",
445
+ "Sales",
446
+ "Support"
447
+ ]
448
+ },
449
+ "tone": "subtle",
450
+ "type": "contact",
451
+ "variant": "split"
452
+ }
453
+ ],
454
+ "seo": {
455
+ "description": "A short summary of your site for search results and link previews. Aim for one or two sentences.",
456
+ "nofollow": false,
457
+ "noindex": false,
458
+ "ogImage": "src/assets/uploads/og.png",
459
+ "title": "Home"
460
+ },
461
+ "slug": "index",
462
+ "title": "Home"
463
+ }
@@ -0,0 +1,40 @@
1
+ {
2
+ "sections": [
3
+ {
4
+ "anchor": "hero",
5
+ "id": "hero",
6
+ "props": {
7
+ "eyebrow": "Draft",
8
+ "heading": "This page is hidden from search.",
9
+ "marks": [
10
+ {
11
+ "end": 32,
12
+ "font": "serif",
13
+ "italic": true,
14
+ "start": 13
15
+ }
16
+ ],
17
+ "primary": {
18
+ "href": "/",
19
+ "label": "Back home"
20
+ },
21
+ "secondary": {
22
+ "href": "/about",
23
+ "label": "About"
24
+ },
25
+ "sub": "Turn on noindex in the page settings to keep a page out of search results and the sitemap while it is a draft."
26
+ },
27
+ "tone": "base",
28
+ "type": "hero",
29
+ "variant": "centered"
30
+ }
31
+ ],
32
+ "seo": {
33
+ "description": "A draft page kept out of search results.",
34
+ "nofollow": true,
35
+ "noindex": true,
36
+ "title": "Preview"
37
+ },
38
+ "slug": "preview",
39
+ "title": "Preview"
40
+ }
@@ -0,0 +1,117 @@
1
+ {
2
+ "brandLogo": {
3
+ "alt": "BearMinion",
4
+ "height": 32,
5
+ "src": "src/assets/uploads/logo.png"
6
+ },
7
+ "favicon": {
8
+ "alt": "",
9
+ "src": "src/assets/uploads/favicon.png"
10
+ },
11
+ "footer": {
12
+ "badge": "Built with BearMinion",
13
+ "columns": [
14
+ {
15
+ "links": [
16
+ {
17
+ "href": "/#features",
18
+ "label": "Features"
19
+ },
20
+ {
21
+ "href": "/#pricing",
22
+ "label": "Pricing"
23
+ },
24
+ {
25
+ "href": "/#faq",
26
+ "label": "FAQ"
27
+ }
28
+ ],
29
+ "title": "Product"
30
+ },
31
+ {
32
+ "links": [
33
+ {
34
+ "href": "/about",
35
+ "label": "About"
36
+ },
37
+ {
38
+ "href": "/#contact",
39
+ "label": "Contact"
40
+ }
41
+ ],
42
+ "title": "Company"
43
+ },
44
+ {
45
+ "links": [
46
+ {
47
+ "href": "#",
48
+ "label": "Privacy"
49
+ },
50
+ {
51
+ "href": "#",
52
+ "label": "Terms"
53
+ }
54
+ ],
55
+ "title": "Legal"
56
+ }
57
+ ],
58
+ "legal": "© 2026 Your Company. All rights reserved.",
59
+ "text": "One or two sentences about your company, so people know who is behind the site.",
60
+ "tone": "base",
61
+ "variant": "wordmark"
62
+ },
63
+ "header": {
64
+ "actions": [
65
+ {
66
+ "href": "/#contact",
67
+ "label": "Get started"
68
+ }
69
+ ],
70
+ "links": [
71
+ {
72
+ "children": [
73
+ {
74
+ "href": "/#workflow",
75
+ "label": "How it works"
76
+ }
77
+ ],
78
+ "href": "/#features",
79
+ "label": "Features"
80
+ },
81
+ {
82
+ "href": "/#pricing",
83
+ "label": "Pricing"
84
+ },
85
+ {
86
+ "href": "/#faq",
87
+ "label": "FAQ"
88
+ },
89
+ {
90
+ "href": "/about",
91
+ "label": "About"
92
+ }
93
+ ],
94
+ "sticky": true,
95
+ "tone": "subtle",
96
+ "variant": "floating"
97
+ },
98
+ "name": "BearMinion",
99
+ "nameMarks": [
100
+ {
101
+ "end": 10,
102
+ "font": "serif",
103
+ "italic": true,
104
+ "start": 4
105
+ }
106
+ ],
107
+ "seo": {
108
+ "description": "A site built with BearMinion. Replace this description in the Site settings.",
109
+ "ogImage": "src/assets/uploads/og.png",
110
+ "titleTemplate": "%s · BearMinion"
111
+ },
112
+ "theme": {
113
+ "mode": "light",
114
+ "motion": true
115
+ },
116
+ "url": "https://example.com"
117
+ }
@@ -0,0 +1,37 @@
1
+ {
2
+ "name": "bearminion-site",
3
+ "version": "0.0.0",
4
+ "private": true,
5
+ "description": "A BearMinion site: Astro and Tailwind render the JSON in content/, and the dev editor writes it.",
6
+ "type": "module",
7
+ "scripts": {
8
+ "dev": "astro dev",
9
+ "build": "astro build",
10
+ "preview": "astro preview",
11
+ "typecheck": "astro check",
12
+ "storybook": "storybook dev -p 6006",
13
+ "build-storybook": "storybook build"
14
+ },
15
+ "dependencies": {
16
+ "@astrojs/sitemap": "^3.7.4",
17
+ "@fontsource-variable/bricolage-grotesque": "^5.3.0",
18
+ "@fontsource/instrument-serif": "^5.3.0",
19
+ "@fontsource/jetbrains-mono": "^5.3.0",
20
+ "@tailwindcss/vite": "^4.1.12",
21
+ "astro": "^7.3.8",
22
+ "bearminion": "^1.0.1",
23
+ "class-variance-authority": "^0.7.1",
24
+ "sharp": "^0.35.5",
25
+ "tailwind-merge": "^3.7.0",
26
+ "tailwindcss": "^4.1.12",
27
+ "zod": "^4.6.7"
28
+ },
29
+ "devDependencies": {
30
+ "@astrojs/check": "^0.9.5",
31
+ "@storybook-astro/framework": "^1.12.0",
32
+ "@storybook/builder-vite": "^10.6.2",
33
+ "@types/node": "^22.19.0",
34
+ "storybook": "^10.6.2",
35
+ "typescript": "~5.9.3"
36
+ }
37
+ }