@ak--47/dungeon-master 1.0.0 → 1.2.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 (104) hide show
  1. package/README.md +7 -7
  2. package/dungeons/technical/ad-spend-schema.json +128 -0
  3. package/dungeons/technical/ad-spend.js +116 -0
  4. package/dungeons/technical/anonymous-users-schema.json +92 -0
  5. package/dungeons/technical/anonymous-users.js +102 -0
  6. package/dungeons/technical/array-of-object-lookup-schema.json +191 -0
  7. package/dungeons/{array-of-object-lookup.js → technical/array-of-object-lookup.js} +12 -5
  8. package/dungeons/technical/experiments-schema.json +203 -0
  9. package/dungeons/technical/experiments.js +168 -0
  10. package/dungeons/technical/foobar-schema.json +362 -0
  11. package/dungeons/{foobar.js → technical/foobar.js} +3 -3
  12. package/dungeons/technical/group-analytics-schema.json +241 -0
  13. package/dungeons/technical/group-analytics.js +151 -0
  14. package/dungeons/technical/mirror-strategies-schema.json +84 -0
  15. package/dungeons/technical/mirror-strategies.js +126 -0
  16. package/dungeons/technical/nested-objects-schema.json +145 -0
  17. package/dungeons/technical/nested-objects.js +207 -0
  18. package/dungeons/technical/retention-cadence-schema.json +37 -0
  19. package/dungeons/{retention-cadence.js → technical/retention-cadence.js} +2 -3
  20. package/dungeons/technical/sanity-schema.json +185 -0
  21. package/dungeons/{sanity.js → technical/sanity.js} +4 -2
  22. package/dungeons/technical/scale-test-schema.json +70 -0
  23. package/dungeons/technical/scale-test.js +90 -0
  24. package/dungeons/technical/scd-schema.json +467 -0
  25. package/dungeons/{scd.js → technical/scd.js} +20 -10
  26. package/dungeons/technical/simple-schema.json +362 -0
  27. package/dungeons/{simple.js → technical/simple.js} +7 -7
  28. package/dungeons/technical/simplest-schema.json +724 -0
  29. package/dungeons/{simplest.js → technical/simplest.js} +7 -7
  30. package/dungeons/technical/text-generation-schema.json +1062 -0
  31. package/dungeons/{text-generation.js → technical/text-generation.js} +24 -11
  32. package/dungeons/vertical/community-schema.json +579 -0
  33. package/dungeons/vertical/community.js +794 -0
  34. package/dungeons/vertical/devtools-schema.json +601 -0
  35. package/dungeons/vertical/devtools.js +843 -0
  36. package/dungeons/vertical/ecommerce-schema.json +604 -0
  37. package/dungeons/{ecommerce.js → vertical/ecommerce.js} +43 -5
  38. package/dungeons/vertical/education-schema.json +5686 -0
  39. package/dungeons/{education.js → vertical/education.js} +70 -39
  40. package/dungeons/vertical/fintech-schema.json +630 -0
  41. package/dungeons/{fintech.js → vertical/fintech.js} +107 -56
  42. package/dungeons/vertical/fitness-schema.json +530 -0
  43. package/dungeons/vertical/fitness.js +808 -0
  44. package/dungeons/vertical/food-delivery-schema.json +36728 -0
  45. package/dungeons/{food.js → vertical/food-delivery.js} +67 -26
  46. package/dungeons/vertical/gaming-schema.json +438 -0
  47. package/dungeons/{gaming.js → vertical/gaming.js} +29 -16
  48. package/dungeons/vertical/healthcare-schema.json +549 -0
  49. package/dungeons/vertical/healthcare.js +775 -0
  50. package/dungeons/vertical/insurance-application-schema.json +485 -0
  51. package/dungeons/{insurance-application.js → vertical/insurance-application.js} +41 -31
  52. package/dungeons/vertical/logistics-schema.json +574 -0
  53. package/dungeons/vertical/logistics.js +799 -0
  54. package/dungeons/vertical/marketplace-schema.json +533 -0
  55. package/dungeons/vertical/marketplace.js +850 -0
  56. package/dungeons/vertical/media-schema.json +4749 -0
  57. package/dungeons/{media.js → vertical/media.js} +103 -19
  58. package/dungeons/vertical/rpg-schema.json +2491 -0
  59. package/dungeons/{rpg.js → vertical/rpg.js} +87 -60
  60. package/dungeons/vertical/sass-schema.json +3128 -0
  61. package/dungeons/{sass.js → vertical/sass.js} +65 -26
  62. package/dungeons/vertical/social-schema.json +620 -0
  63. package/dungeons/{social.js → vertical/social.js} +76 -17
  64. package/dungeons/vertical/travel-schema.json +580 -0
  65. package/dungeons/vertical/travel.js +742 -0
  66. package/index.js +20 -16
  67. package/lib/core/config-validator.js +286 -1
  68. package/lib/core/context.js +16 -5
  69. package/lib/core/storage.js +2 -0
  70. package/lib/generators/adspend.js +3 -3
  71. package/lib/generators/events.js +141 -14
  72. package/lib/generators/funnels.js +67 -7
  73. package/lib/generators/text.js +2 -2
  74. package/lib/orchestrators/user-loop.js +444 -22
  75. package/lib/templates/soup-presets.js +2 -2
  76. package/lib/utils/utils.js +4 -5
  77. package/package.json +4 -3
  78. package/scripts/dungeon-to-json.mjs +163 -0
  79. package/scripts/extract-dungeon-schema.mjs +343 -0
  80. package/scripts/json-to-dungeon.mjs +200 -0
  81. package/scripts/run-dungeon.mjs +76 -0
  82. package/scripts/run-many.mjs +118 -0
  83. package/scripts/verify-runner.mjs +42 -0
  84. package/types.d.ts +316 -1
  85. package/dungeons/array-of-object-lookup-schema.json +0 -327
  86. package/dungeons/ecommerce-schema.json +0 -462
  87. package/dungeons/education-schema.json +0 -2409
  88. package/dungeons/fintech-schema.json +0 -14034
  89. package/dungeons/foobar-schema.json +0 -403
  90. package/dungeons/food-delivery-schema.json +0 -192
  91. package/dungeons/food-delivery.js +0 -602
  92. package/dungeons/food-schema.json +0 -1152
  93. package/dungeons/gaming-schema.json +0 -1270
  94. package/dungeons/insurance-application-schema.json +0 -204
  95. package/dungeons/media-schema.json +0 -906
  96. package/dungeons/retention-cadence-schema.json +0 -78
  97. package/dungeons/rpg-schema.json +0 -4526
  98. package/dungeons/sanity-schema.json +0 -255
  99. package/dungeons/sass-schema.json +0 -1291
  100. package/dungeons/scd-schema.json +0 -919
  101. package/dungeons/simple-schema.json +0 -608
  102. package/dungeons/simplest-schema.json +0 -1418
  103. package/dungeons/social-schema.json +0 -1118
  104. package/dungeons/text-generation-schema.json +0 -3096
@@ -0,0 +1,724 @@
1
+ {
2
+ "events": [
3
+ {
4
+ "event": "page view",
5
+ "weight": 10,
6
+ "properties": {
7
+ "page": [
8
+ "/",
9
+ "/help",
10
+ "/account",
11
+ "/pricing",
12
+ "/product",
13
+ "/about",
14
+ "/blog"
15
+ ],
16
+ "utm_source": [
17
+ "$organic",
18
+ "google",
19
+ "facebook",
20
+ "twitter",
21
+ "linkedin"
22
+ ]
23
+ }
24
+ },
25
+ {
26
+ "event": "sign up",
27
+ "isFirstEvent": true,
28
+ "properties": {
29
+ "signupMethod": [
30
+ "email",
31
+ "google",
32
+ "facebook",
33
+ "github"
34
+ ],
35
+ "referral": [
36
+ "none",
37
+ "friend",
38
+ "ad"
39
+ ]
40
+ }
41
+ },
42
+ {
43
+ "event": "login",
44
+ "weight": 8,
45
+ "properties": {
46
+ "method": [
47
+ "password",
48
+ "google",
49
+ "facebook",
50
+ "github"
51
+ ]
52
+ }
53
+ },
54
+ {
55
+ "event": "search",
56
+ "weight": 7,
57
+ "properties": {
58
+ "query_length": {
59
+ "$range": [
60
+ 7,
61
+ 45
62
+ ]
63
+ },
64
+ "resultsReturned": {
65
+ "$range": [
66
+ 19,
67
+ 79
68
+ ]
69
+ },
70
+ "category": [
71
+ "Handmade",
72
+ "Sports",
73
+ "Garden",
74
+ "Baby",
75
+ "Pet",
76
+ "Music",
77
+ "Beauty"
78
+ ]
79
+ }
80
+ },
81
+ {
82
+ "event": "view item",
83
+ "weight": 9,
84
+ "properties": {
85
+ "isFeaturedItem": [
86
+ true,
87
+ false
88
+ ],
89
+ "itemCategory": [
90
+ "Music",
91
+ "Kids",
92
+ "Beauty",
93
+ "Home",
94
+ "Appliances",
95
+ "Games",
96
+ "Office",
97
+ "Books",
98
+ "Entertainment"
99
+ ],
100
+ "price": {
101
+ "$range": [
102
+ 99,
103
+ 402
104
+ ]
105
+ },
106
+ "rating": {
107
+ "$range": [
108
+ 1,
109
+ 4
110
+ ]
111
+ }
112
+ }
113
+ },
114
+ {
115
+ "event": "add to cart",
116
+ "weight": 5,
117
+ "properties": {
118
+ "amount": {
119
+ "$range": [
120
+ 108,
121
+ 400
122
+ ]
123
+ },
124
+ "itemCategory": [
125
+ "Wedding",
126
+ "Software",
127
+ "Home",
128
+ "Outdoors",
129
+ "Handmade"
130
+ ],
131
+ "numItems": {
132
+ "$range": [
133
+ 1,
134
+ 5
135
+ ]
136
+ }
137
+ }
138
+ },
139
+ {
140
+ "event": "checkout",
141
+ "weight": 3,
142
+ "properties": {
143
+ "amount": {
144
+ "$range": [
145
+ 109,
146
+ 381
147
+ ]
148
+ },
149
+ "currency": [
150
+ "USD",
151
+ "CAD",
152
+ "EUR",
153
+ "JPY"
154
+ ],
155
+ "coupon": [
156
+ "none",
157
+ "10%OFF",
158
+ "20%OFF",
159
+ "30%OFF"
160
+ ],
161
+ "numItems": {
162
+ "$range": [
163
+ 1,
164
+ 10
165
+ ]
166
+ }
167
+ }
168
+ },
169
+ {
170
+ "event": "watch video",
171
+ "weight": 6,
172
+ "properties": {
173
+ "videoCategory": [
174
+ "news",
175
+ "educational",
176
+ "inspirational",
177
+ "cooking",
178
+ "travel",
179
+ "music"
180
+ ],
181
+ "watchTimeSec": {
182
+ "$range": [
183
+ 126,
184
+ 493
185
+ ]
186
+ },
187
+ "quality": [
188
+ "1080p",
189
+ "720p",
190
+ "480p",
191
+ "360p"
192
+ ]
193
+ }
194
+ },
195
+ {
196
+ "event": "share content",
197
+ "weight": 2,
198
+ "properties": {
199
+ "platform": [
200
+ "twitter",
201
+ "facebook",
202
+ "linkedin",
203
+ "email",
204
+ "link"
205
+ ],
206
+ "contentType": [
207
+ "video",
208
+ "product",
209
+ "article"
210
+ ]
211
+ }
212
+ },
213
+ {
214
+ "event": "rate item",
215
+ "weight": 4,
216
+ "properties": {
217
+ "rating": {
218
+ "$range": [
219
+ 1,
220
+ 5
221
+ ]
222
+ },
223
+ "itemCategory": [
224
+ "Baby",
225
+ "Appliances",
226
+ "Outdoors",
227
+ "Office",
228
+ "Software",
229
+ "Books"
230
+ ],
231
+ "hasReviewText": [
232
+ true,
233
+ false
234
+ ]
235
+ }
236
+ },
237
+ {
238
+ "event": "support ticket",
239
+ "weight": 2,
240
+ "properties": {
241
+ "priority": [
242
+ "low",
243
+ "medium",
244
+ "high"
245
+ ],
246
+ "category": [
247
+ "billing",
248
+ "technical",
249
+ "account",
250
+ "shipping",
251
+ "returns"
252
+ ]
253
+ }
254
+ },
255
+ {
256
+ "event": "add to wishlist",
257
+ "weight": 4,
258
+ "properties": {
259
+ "itemCategory": [
260
+ "Books",
261
+ "Toys",
262
+ "Entertainment",
263
+ "Appliances",
264
+ "Food",
265
+ "Software",
266
+ "Computers"
267
+ ],
268
+ "price": {
269
+ "$range": [
270
+ 100,
271
+ 413
272
+ ]
273
+ }
274
+ }
275
+ },
276
+ {
277
+ "event": "remove from cart",
278
+ "weight": 3,
279
+ "properties": {
280
+ "reason": [
281
+ "changed mind",
282
+ "too expensive",
283
+ "found better",
284
+ "duplicate"
285
+ ]
286
+ }
287
+ },
288
+ {
289
+ "event": "apply coupon",
290
+ "weight": 2,
291
+ "properties": {
292
+ "couponCode": [
293
+ "SAVE10",
294
+ "SAVE20",
295
+ "WELCOME",
296
+ "FREESHIP",
297
+ "VIP30"
298
+ ],
299
+ "discountPercent": {
300
+ "$range": [
301
+ 5,
302
+ 47
303
+ ]
304
+ }
305
+ }
306
+ },
307
+ {
308
+ "event": "notification received",
309
+ "weight": 7,
310
+ "properties": {
311
+ "channel": [
312
+ "push",
313
+ "email",
314
+ "in-app",
315
+ "sms"
316
+ ],
317
+ "type": [
318
+ "promo",
319
+ "order update",
320
+ "recommendation",
321
+ "reminder"
322
+ ]
323
+ }
324
+ },
325
+ {
326
+ "event": "notification clicked",
327
+ "weight": 5,
328
+ "properties": {
329
+ "channel": [
330
+ "push",
331
+ "email",
332
+ "in-app",
333
+ "sms"
334
+ ],
335
+ "type": [
336
+ "promo",
337
+ "order update",
338
+ "recommendation",
339
+ "reminder"
340
+ ]
341
+ }
342
+ },
343
+ {
344
+ "event": "add payment method",
345
+ "properties": {
346
+ "type": [
347
+ "credit card",
348
+ "debit card",
349
+ "paypal",
350
+ "apple pay",
351
+ "google pay"
352
+ ]
353
+ }
354
+ },
355
+ {
356
+ "event": "update profile",
357
+ "weight": 3,
358
+ "properties": {
359
+ "field": [
360
+ "avatar",
361
+ "name",
362
+ "email",
363
+ "address",
364
+ "phone",
365
+ "preferences"
366
+ ]
367
+ }
368
+ },
369
+ {
370
+ "event": "invite friend",
371
+ "properties": {
372
+ "method": [
373
+ "email",
374
+ "link",
375
+ "sms"
376
+ ]
377
+ }
378
+ },
379
+ {
380
+ "event": "view category",
381
+ "weight": 8,
382
+ "properties": {
383
+ "category": [
384
+ "Games",
385
+ "Smart Home",
386
+ "Computers",
387
+ "Outdoors",
388
+ "Home",
389
+ "Electronics",
390
+ "Entertainment",
391
+ "Health",
392
+ "Baby"
393
+ ],
394
+ "sortBy": [
395
+ "popular",
396
+ "newest",
397
+ "price low",
398
+ "price high",
399
+ "rating"
400
+ ]
401
+ }
402
+ },
403
+ {
404
+ "event": "save address",
405
+ "properties": {
406
+ "type": [
407
+ "home",
408
+ "work",
409
+ "other"
410
+ ]
411
+ }
412
+ },
413
+ {
414
+ "event": "compare items",
415
+ "weight": 3,
416
+ "properties": {
417
+ "numItems": {
418
+ "$range": [
419
+ 2,
420
+ 5
421
+ ]
422
+ },
423
+ "itemCategory": [
424
+ "Books",
425
+ "Games",
426
+ "Beauty",
427
+ "Toys",
428
+ "Software",
429
+ "Movies",
430
+ "Office"
431
+ ]
432
+ }
433
+ },
434
+ {
435
+ "event": "subscribe newsletter",
436
+ "properties": {
437
+ "frequency": [
438
+ "daily",
439
+ "weekly",
440
+ "monthly"
441
+ ],
442
+ "topics": [
443
+ "deals",
444
+ "new arrivals",
445
+ "recommendations"
446
+ ]
447
+ }
448
+ },
449
+ {
450
+ "event": "leave review",
451
+ "weight": 2,
452
+ "properties": {
453
+ "rating": {
454
+ "$range": [
455
+ 1,
456
+ 4
457
+ ]
458
+ },
459
+ "wordCount": {
460
+ "$range": [
461
+ 51,
462
+ 157
463
+ ]
464
+ },
465
+ "hasPhotos": [
466
+ true,
467
+ false
468
+ ]
469
+ }
470
+ },
471
+ {
472
+ "event": "redeem reward",
473
+ "properties": {
474
+ "rewardType": [
475
+ "discount",
476
+ "free shipping",
477
+ "free item",
478
+ "points bonus"
479
+ ],
480
+ "pointsUsed": {
481
+ "$range": [
482
+ 1169,
483
+ 3988
484
+ ]
485
+ }
486
+ }
487
+ }
488
+ ],
489
+ "funnels": [
490
+ {
491
+ "sequence": [
492
+ "page view",
493
+ "sign up"
494
+ ],
495
+ "name": "Signup Funnel",
496
+ "isFirstFunnel": true,
497
+ "conversionRate": 55,
498
+ "timeToConvert": 1,
499
+ "weight": 5
500
+ },
501
+ {
502
+ "sequence": [
503
+ "search",
504
+ "view item",
505
+ "add to cart",
506
+ "checkout"
507
+ ],
508
+ "name": "Purchase Funnel",
509
+ "conversionRate": 35,
510
+ "timeToConvert": 3,
511
+ "weight": 8
512
+ },
513
+ {
514
+ "sequence": [
515
+ "page view",
516
+ "watch video",
517
+ "share content"
518
+ ],
519
+ "name": "Content Engagement",
520
+ "conversionRate": 40,
521
+ "timeToConvert": 2,
522
+ "weight": 6
523
+ },
524
+ {
525
+ "sequence": [
526
+ "view item",
527
+ "rate item"
528
+ ],
529
+ "name": "Review Funnel",
530
+ "conversionRate": 25,
531
+ "timeToConvert": 5,
532
+ "weight": 3
533
+ },
534
+ {
535
+ "sequence": [
536
+ "view category",
537
+ "view item",
538
+ "compare items",
539
+ "add to cart"
540
+ ],
541
+ "name": "Browse to Cart",
542
+ "conversionRate": 30,
543
+ "timeToConvert": 3,
544
+ "weight": 7
545
+ },
546
+ {
547
+ "sequence": [
548
+ "notification received",
549
+ "notification clicked",
550
+ "view item"
551
+ ],
552
+ "name": "Notification Engagement",
553
+ "conversionRate": 45,
554
+ "timeToConvert": 1,
555
+ "weight": 4
556
+ },
557
+ {
558
+ "sequence": [
559
+ "view item",
560
+ "add to wishlist",
561
+ "apply coupon",
562
+ "add to cart",
563
+ "checkout"
564
+ ],
565
+ "name": "Wishlist to Purchase",
566
+ "conversionRate": 20,
567
+ "timeToConvert": 7,
568
+ "weight": 2
569
+ },
570
+ {
571
+ "sequence": [
572
+ "checkout",
573
+ "leave review",
574
+ "invite friend"
575
+ ],
576
+ "name": "Post-Purchase Advocacy",
577
+ "conversionRate": 15,
578
+ "timeToConvert": 14
579
+ },
580
+ {
581
+ "sequence": [
582
+ "login",
583
+ "view item",
584
+ "add to cart",
585
+ "apply coupon",
586
+ "checkout"
587
+ ],
588
+ "name": "Coupon Purchase Flow",
589
+ "conversionRate": 30,
590
+ "timeToConvert": 2,
591
+ "weight": 9
592
+ },
593
+ {
594
+ "sequence": [
595
+ "subscribe newsletter",
596
+ "notification received",
597
+ "notification clicked",
598
+ "checkout"
599
+ ],
600
+ "name": "Newsletter to Purchase",
601
+ "conversionRate": 10,
602
+ "timeToConvert": 14,
603
+ "weight": 3
604
+ },
605
+ {
606
+ "sequence": [
607
+ "support ticket",
608
+ "update profile",
609
+ "checkout"
610
+ ],
611
+ "name": "Support Recovery",
612
+ "conversionRate": 20,
613
+ "timeToConvert": 7,
614
+ "weight": 10
615
+ }
616
+ ],
617
+ "superProps": {
618
+ "theme": [
619
+ "light",
620
+ "dark",
621
+ "custom"
622
+ ]
623
+ },
624
+ "userProps": {
625
+ "title": {
626
+ "$type": "string"
627
+ },
628
+ "luckyNumber": {
629
+ "$range": [
630
+ 117,
631
+ 346
632
+ ]
633
+ },
634
+ "spiritAnimal": [
635
+ "duck",
636
+ "dog",
637
+ "otter",
638
+ "penguin",
639
+ "cat",
640
+ "elephant",
641
+ "lion",
642
+ "cheetah",
643
+ "giraffe",
644
+ "zebra",
645
+ "rhino",
646
+ "hippo",
647
+ "whale",
648
+ "dolphin",
649
+ "shark",
650
+ "octopus",
651
+ "squid",
652
+ "jellyfish",
653
+ "starfish",
654
+ "seahorse",
655
+ "crab",
656
+ "lobster",
657
+ "shrimp",
658
+ "clam",
659
+ "snail",
660
+ "slug",
661
+ "butterfly",
662
+ "moth",
663
+ "bee",
664
+ "wasp",
665
+ "ant",
666
+ "beetle",
667
+ "ladybug",
668
+ "caterpillar",
669
+ "centipede",
670
+ "millipede",
671
+ "scorpion",
672
+ "spider",
673
+ "tarantula",
674
+ "tick",
675
+ "mite",
676
+ "mosquito",
677
+ "fly",
678
+ "dragonfly",
679
+ "damselfly",
680
+ "grasshopper",
681
+ "cricket",
682
+ "locust",
683
+ "mantis",
684
+ "cockroach",
685
+ "termite",
686
+ "praying mantis",
687
+ "walking stick",
688
+ "stick bug",
689
+ "leaf insect",
690
+ "lacewing",
691
+ "aphid",
692
+ "cicada",
693
+ "thrips",
694
+ "psyllid",
695
+ "scale insect",
696
+ "whitefly",
697
+ "mealybug",
698
+ "planthopper",
699
+ "leafhopper",
700
+ "treehopper",
701
+ "flea",
702
+ "louse",
703
+ "bedbug",
704
+ "flea beetle",
705
+ "weevil",
706
+ "longhorn beetle",
707
+ "leaf beetle",
708
+ "tiger beetle",
709
+ "ground beetle",
710
+ "lady beetle",
711
+ "firefly",
712
+ "click beetle",
713
+ "rove beetle",
714
+ "scarab beetle",
715
+ "dung beetle",
716
+ "stag beetle",
717
+ "rhinoceros beetle",
718
+ "hercules beetle",
719
+ "goliath beetle",
720
+ "jewel beetle",
721
+ "tortoise beetle"
722
+ ]
723
+ }
724
+ }