create-better-fullstack 2.1.8 → 2.3.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.
- package/README.md +4 -4
- package/dist/{add-handler-ztNjzoMN.mjs → add-handler-z4NCxoq6.mjs} +9 -8
- package/dist/addons-setup-COE1e1db.mjs +7 -0
- package/dist/{addons-setup-LaAj43NP.mjs → addons-setup-DKtiNexf.mjs} +1 -1
- package/dist/{analytics-DVltG11u.mjs → analytics-BD8hZvIj.mjs} +1 -1
- package/dist/{bts-config-DQVWvPDs.mjs → bts-config-Bwd6GB7B.mjs} +59 -0
- package/dist/cli.mjs +2 -2
- package/dist/command-exists-DtX9ldL8.mjs +15 -0
- package/dist/{config-processing-D9-F2Us9.mjs → config-processing-B-RT_mVE.mjs} +32 -3
- package/dist/{doctor-a4ca3SMd.mjs → doctor-LmNs-hDr.mjs} +4 -3
- package/dist/{file-formatter-gvmrpd-g.mjs → file-formatter-DxF56-mO.mjs} +550 -24
- package/dist/{gen-CCClL7Ve.mjs → gen-CQfQU0uZ.mjs} +1 -1
- package/dist/{generated-checks-BV9jol5h.mjs → generated-checks-BUcI5VM2.mjs} +55 -22
- package/dist/index.d.mts +741 -211
- package/dist/index.mjs +30 -9
- package/dist/{install-dependencies-RoUyaE8o.mjs → install-dependencies-CJiUklm3.mjs} +132 -23
- package/dist/{mcp-492OkjcS.mjs → mcp-BBammItk.mjs} +5 -5
- package/dist/mcp-entry.mjs +76 -236
- package/dist/{registry-DSf2CEaU.mjs → registry-D0JfLCoH.mjs} +1 -1
- package/dist/{run-T6g1jkfy.mjs → run-BAIeghcU.mjs} +1948 -318
- package/dist/run-CAl4L4uU.mjs +16 -0
- package/dist/scaffold-manifest-CQwvyttq.mjs +4 -0
- package/dist/{scaffold-manifest-Dyi0voqE.mjs → scaffold-manifest-Dr3Anmlf.mjs} +34 -5
- package/dist/{update-DJ8CI5KW.mjs → update-CnrBdWrh.mjs} +182 -25
- package/package.json +24 -7
- package/dist/addons-setup-DnLjAzTw.mjs +0 -7
- package/dist/run-CD8f7PHh.mjs +0 -15
- package/dist/scaffold-manifest-DGRyepdb.mjs +0 -4
- /package/dist/{update-deps-aD-iQw4U.mjs → update-deps-G3FgqBlW.mjs} +0 -0
package/dist/index.d.mts
CHANGED
|
@@ -41,11 +41,11 @@ declare const router: {
|
|
|
41
41
|
create: _orpc_server0.Procedure<_orpc_server0.MergedInitialContext<Record<never, never>, Record<never, never>, Record<never, never>>, Record<never, never>, z.ZodTuple<[z.ZodOptional<z.ZodString>, z.ZodObject<{
|
|
42
42
|
template: z.ZodOptional<z.ZodEnum<{
|
|
43
43
|
none: "none";
|
|
44
|
-
uniwind: "uniwind";
|
|
45
44
|
mern: "mern";
|
|
46
45
|
pern: "pern";
|
|
47
46
|
t3: "t3";
|
|
48
47
|
saas: "saas";
|
|
48
|
+
uniwind: "uniwind";
|
|
49
49
|
}>>;
|
|
50
50
|
fromHistory: z.ZodOptional<z.ZodNumber>;
|
|
51
51
|
config: z.ZodOptional<z.ZodString>;
|
|
@@ -96,6 +96,7 @@ declare const router: {
|
|
|
96
96
|
auth0: "auth0";
|
|
97
97
|
workos: "workos";
|
|
98
98
|
kinde: "kinde";
|
|
99
|
+
passport: "passport";
|
|
99
100
|
}>>;
|
|
100
101
|
payments: z.ZodOptional<z.ZodEnum<{
|
|
101
102
|
none: "none";
|
|
@@ -104,6 +105,7 @@ declare const router: {
|
|
|
104
105
|
stripe: "stripe";
|
|
105
106
|
"lemon-squeezy": "lemon-squeezy";
|
|
106
107
|
paddle: "paddle";
|
|
108
|
+
paypal: "paypal";
|
|
107
109
|
dodo: "dodo";
|
|
108
110
|
creem: "creem";
|
|
109
111
|
autumn: "autumn";
|
|
@@ -127,8 +129,8 @@ declare const router: {
|
|
|
127
129
|
uppy: "uppy";
|
|
128
130
|
}>>;
|
|
129
131
|
effect: z.ZodOptional<z.ZodEnum<{
|
|
130
|
-
effect: "effect";
|
|
131
132
|
none: "none";
|
|
133
|
+
effect: "effect";
|
|
132
134
|
"effect-full": "effect-full";
|
|
133
135
|
}>>;
|
|
134
136
|
stateManagement: z.ZodOptional<z.ZodEnum<{
|
|
@@ -168,6 +170,7 @@ declare const router: {
|
|
|
168
170
|
playwright: "playwright";
|
|
169
171
|
"vitest-playwright": "vitest-playwright";
|
|
170
172
|
jest: "jest";
|
|
173
|
+
mocha: "mocha";
|
|
171
174
|
cypress: "cypress";
|
|
172
175
|
}>>;
|
|
173
176
|
ai: z.ZodOptional<z.ZodEnum<{
|
|
@@ -177,6 +180,8 @@ declare const router: {
|
|
|
177
180
|
voltagent: "voltagent";
|
|
178
181
|
langgraph: "langgraph";
|
|
179
182
|
"openai-agents": "openai-agents";
|
|
183
|
+
"openai-sdk": "openai-sdk";
|
|
184
|
+
"anthropic-sdk": "anthropic-sdk";
|
|
180
185
|
"google-adk": "google-adk";
|
|
181
186
|
modelfusion: "modelfusion";
|
|
182
187
|
langchain: "langchain";
|
|
@@ -187,6 +192,7 @@ declare const router: {
|
|
|
187
192
|
realtime: z.ZodOptional<z.ZodEnum<{
|
|
188
193
|
none: "none";
|
|
189
194
|
"socket-io": "socket-io";
|
|
195
|
+
ws: "ws";
|
|
190
196
|
partykit: "partykit";
|
|
191
197
|
ably: "ably";
|
|
192
198
|
pusher: "pusher";
|
|
@@ -236,6 +242,7 @@ declare const router: {
|
|
|
236
242
|
posthog: "posthog";
|
|
237
243
|
plausible: "plausible";
|
|
238
244
|
umami: "umami";
|
|
245
|
+
ga4: "ga4";
|
|
239
246
|
}>>;
|
|
240
247
|
cms: z.ZodOptional<z.ZodEnum<{
|
|
241
248
|
none: "none";
|
|
@@ -245,6 +252,7 @@ declare const router: {
|
|
|
245
252
|
tinacms: "tinacms";
|
|
246
253
|
directus: "directus";
|
|
247
254
|
keystatic: "keystatic";
|
|
255
|
+
contentful: "contentful";
|
|
248
256
|
}>>;
|
|
249
257
|
caching: z.ZodOptional<z.ZodEnum<{
|
|
250
258
|
none: "none";
|
|
@@ -293,9 +301,9 @@ declare const router: {
|
|
|
293
301
|
}>>;
|
|
294
302
|
mobileUI: z.ZodOptional<z.ZodEnum<{
|
|
295
303
|
none: "none";
|
|
304
|
+
uniwind: "uniwind";
|
|
296
305
|
tamagui: "tamagui";
|
|
297
306
|
"gluestack-ui": "gluestack-ui";
|
|
298
|
-
uniwind: "uniwind";
|
|
299
307
|
unistyles: "unistyles";
|
|
300
308
|
}>>;
|
|
301
309
|
mobileStorage: z.ZodOptional<z.ZodEnum<{
|
|
@@ -320,11 +328,36 @@ declare const router: {
|
|
|
320
328
|
none: "none";
|
|
321
329
|
"expo-linking": "expo-linking";
|
|
322
330
|
}>>;
|
|
331
|
+
mobileLibraries: z.ZodOptional<z.ZodArray<z.ZodEnum<{
|
|
332
|
+
none: "none";
|
|
333
|
+
"expo-sqlite": "expo-sqlite";
|
|
334
|
+
"expo-camera": "expo-camera";
|
|
335
|
+
"expo-image-picker": "expo-image-picker";
|
|
336
|
+
"expo-location": "expo-location";
|
|
337
|
+
"expo-sensors": "expo-sensors";
|
|
338
|
+
"expo-file-system": "expo-file-system";
|
|
339
|
+
"expo-image": "expo-image";
|
|
340
|
+
"expo-audio": "expo-audio";
|
|
341
|
+
"expo-video": "expo-video";
|
|
342
|
+
"expo-contacts": "expo-contacts";
|
|
343
|
+
"expo-calendar": "expo-calendar";
|
|
344
|
+
"expo-local-authentication": "expo-local-authentication";
|
|
345
|
+
"expo-sharing": "expo-sharing";
|
|
346
|
+
"expo-clipboard": "expo-clipboard";
|
|
347
|
+
"expo-task-manager": "expo-task-manager";
|
|
348
|
+
"expo-background-task": "expo-background-task";
|
|
349
|
+
"expo-maps": "expo-maps";
|
|
350
|
+
"expo-brightness": "expo-brightness";
|
|
351
|
+
"expo-battery": "expo-battery";
|
|
352
|
+
"expo-screen-capture": "expo-screen-capture";
|
|
353
|
+
}>>>;
|
|
323
354
|
frontend: z.ZodOptional<z.ZodArray<z.ZodEnum<{
|
|
324
355
|
none: "none";
|
|
325
356
|
"tanstack-router": "tanstack-router";
|
|
326
357
|
"react-router": "react-router";
|
|
327
358
|
"react-vite": "react-vite";
|
|
359
|
+
"vanilla-vite": "vanilla-vite";
|
|
360
|
+
vue: "vue";
|
|
328
361
|
"tanstack-start": "tanstack-start";
|
|
329
362
|
next: "next";
|
|
330
363
|
vinext: "vinext";
|
|
@@ -343,10 +376,10 @@ declare const router: {
|
|
|
343
376
|
}>>>;
|
|
344
377
|
astroIntegration: z.ZodOptional<z.ZodEnum<{
|
|
345
378
|
none: "none";
|
|
379
|
+
vue: "vue";
|
|
346
380
|
svelte: "svelte";
|
|
347
381
|
solid: "solid";
|
|
348
382
|
react: "react";
|
|
349
|
-
vue: "vue";
|
|
350
383
|
}>>;
|
|
351
384
|
addons: z.ZodOptional<z.ZodArray<z.ZodEnum<{
|
|
352
385
|
none: "none";
|
|
@@ -378,10 +411,19 @@ declare const router: {
|
|
|
378
411
|
devcontainer: "devcontainer";
|
|
379
412
|
"docker-compose": "docker-compose";
|
|
380
413
|
"github-actions": "github-actions";
|
|
414
|
+
eslint: "eslint";
|
|
415
|
+
prettier: "prettier";
|
|
416
|
+
axios: "axios";
|
|
417
|
+
firebase: "firebase";
|
|
418
|
+
"graphql-codegen": "graphql-codegen";
|
|
419
|
+
"openapi-typescript": "openapi-typescript";
|
|
420
|
+
"apollo-client": "apollo-client";
|
|
421
|
+
electron: "electron";
|
|
422
|
+
capacitor: "capacitor";
|
|
381
423
|
}>>>;
|
|
382
424
|
examples: z.ZodOptional<z.ZodArray<z.ZodEnum<{
|
|
383
|
-
ai: "ai";
|
|
384
425
|
none: "none";
|
|
426
|
+
ai: "ai";
|
|
385
427
|
"chat-sdk": "chat-sdk";
|
|
386
428
|
"tanstack-showcase": "tanstack-showcase";
|
|
387
429
|
}>>>;
|
|
@@ -415,13 +457,13 @@ declare const router: {
|
|
|
415
457
|
docker: "docker";
|
|
416
458
|
}>>;
|
|
417
459
|
backend: z.ZodOptional<z.ZodEnum<{
|
|
418
|
-
effect: "effect";
|
|
419
460
|
none: "none";
|
|
420
461
|
hono: "hono";
|
|
421
462
|
express: "express";
|
|
422
463
|
fastify: "fastify";
|
|
423
464
|
elysia: "elysia";
|
|
424
465
|
fets: "fets";
|
|
466
|
+
effect: "effect";
|
|
425
467
|
nestjs: "nestjs";
|
|
426
468
|
adonisjs: "adonisjs";
|
|
427
469
|
nitro: "nitro";
|
|
@@ -451,6 +493,7 @@ declare const router: {
|
|
|
451
493
|
scss: "scss";
|
|
452
494
|
less: "less";
|
|
453
495
|
"postcss-only": "postcss-only";
|
|
496
|
+
"styled-components": "styled-components";
|
|
454
497
|
}>>;
|
|
455
498
|
uiLibrary: z.ZodOptional<z.ZodEnum<{
|
|
456
499
|
none: "none";
|
|
@@ -535,8 +578,8 @@ declare const router: {
|
|
|
535
578
|
"geist-mono": "geist-mono";
|
|
536
579
|
}>>;
|
|
537
580
|
shadcnRadius: z.ZodOptional<z.ZodEnum<{
|
|
538
|
-
default: "default";
|
|
539
581
|
none: "none";
|
|
582
|
+
default: "default";
|
|
540
583
|
small: "small";
|
|
541
584
|
medium: "medium";
|
|
542
585
|
large: "large";
|
|
@@ -564,10 +607,10 @@ declare const router: {
|
|
|
564
607
|
vercel: "vercel";
|
|
565
608
|
}>>;
|
|
566
609
|
directoryConflict: z.ZodOptional<z.ZodEnum<{
|
|
567
|
-
error: "error";
|
|
568
610
|
merge: "merge";
|
|
569
611
|
overwrite: "overwrite";
|
|
570
612
|
increment: "increment";
|
|
613
|
+
error: "error";
|
|
571
614
|
}>>;
|
|
572
615
|
renderTitle: z.ZodOptional<z.ZodBoolean>;
|
|
573
616
|
disableAnalytics: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
@@ -579,22 +622,29 @@ declare const router: {
|
|
|
579
622
|
rocket: "rocket";
|
|
580
623
|
poem: "poem";
|
|
581
624
|
loco: "loco";
|
|
625
|
+
warp: "warp";
|
|
626
|
+
salvo: "salvo";
|
|
582
627
|
}>>;
|
|
583
628
|
rustFrontend: z.ZodOptional<z.ZodEnum<{
|
|
584
629
|
none: "none";
|
|
585
630
|
leptos: "leptos";
|
|
586
631
|
dioxus: "dioxus";
|
|
632
|
+
yew: "yew";
|
|
587
633
|
}>>;
|
|
588
634
|
rustOrm: z.ZodOptional<z.ZodEnum<{
|
|
589
635
|
none: "none";
|
|
636
|
+
mongodb: "mongodb";
|
|
590
637
|
"sea-orm": "sea-orm";
|
|
591
638
|
sqlx: "sqlx";
|
|
592
639
|
diesel: "diesel";
|
|
640
|
+
rusqlite: "rusqlite";
|
|
641
|
+
"tokio-postgres": "tokio-postgres";
|
|
593
642
|
}>>;
|
|
594
643
|
rustApi: z.ZodOptional<z.ZodEnum<{
|
|
595
644
|
none: "none";
|
|
596
645
|
tonic: "tonic";
|
|
597
646
|
"async-graphql": "async-graphql";
|
|
647
|
+
jsonrpsee: "jsonrpsee";
|
|
598
648
|
}>>;
|
|
599
649
|
rustCli: z.ZodOptional<z.ZodEnum<{
|
|
600
650
|
none: "none";
|
|
@@ -602,12 +652,12 @@ declare const router: {
|
|
|
602
652
|
ratatui: "ratatui";
|
|
603
653
|
}>>;
|
|
604
654
|
rustLibraries: z.ZodOptional<z.ZodArray<z.ZodEnum<{
|
|
605
|
-
config: "config";
|
|
606
655
|
none: "none";
|
|
607
656
|
serde: "serde";
|
|
608
657
|
uuid: "uuid";
|
|
609
658
|
chrono: "chrono";
|
|
610
659
|
reqwest: "reqwest";
|
|
660
|
+
config: "config";
|
|
611
661
|
dashmap: "dashmap";
|
|
612
662
|
"parking-lot": "parking-lot";
|
|
613
663
|
secrecy: "secrecy";
|
|
@@ -620,6 +670,13 @@ declare const router: {
|
|
|
620
670
|
mockall: "mockall";
|
|
621
671
|
proptest: "proptest";
|
|
622
672
|
insta: "insta";
|
|
673
|
+
rand: "rand";
|
|
674
|
+
regex: "regex";
|
|
675
|
+
rayon: "rayon";
|
|
676
|
+
itertools: "itertools";
|
|
677
|
+
rstest: "rstest";
|
|
678
|
+
"cargo-nextest": "cargo-nextest";
|
|
679
|
+
"cargo-audit": "cargo-audit";
|
|
623
680
|
}>>>;
|
|
624
681
|
rustLogging: z.ZodOptional<z.ZodEnum<{
|
|
625
682
|
none: "none";
|
|
@@ -640,6 +697,8 @@ declare const router: {
|
|
|
640
697
|
none: "none";
|
|
641
698
|
oauth2: "oauth2";
|
|
642
699
|
torii: "torii";
|
|
700
|
+
openidconnect: "openidconnect";
|
|
701
|
+
"tower-sessions": "tower-sessions";
|
|
643
702
|
}>>;
|
|
644
703
|
rustRealtime: z.ZodOptional<z.ZodEnum<{
|
|
645
704
|
none: "none";
|
|
@@ -648,15 +707,19 @@ declare const router: {
|
|
|
648
707
|
rustMessageQueue: z.ZodOptional<z.ZodEnum<{
|
|
649
708
|
none: "none";
|
|
650
709
|
lapin: "lapin";
|
|
710
|
+
rdkafka: "rdkafka";
|
|
711
|
+
"async-nats": "async-nats";
|
|
651
712
|
}>>;
|
|
652
713
|
rustObservability: z.ZodOptional<z.ZodEnum<{
|
|
653
714
|
none: "none";
|
|
654
715
|
opentelemetry: "opentelemetry";
|
|
716
|
+
metrics: "metrics";
|
|
655
717
|
}>>;
|
|
656
718
|
rustTemplating: z.ZodOptional<z.ZodEnum<{
|
|
657
719
|
none: "none";
|
|
658
720
|
askama: "askama";
|
|
659
721
|
tera: "tera";
|
|
722
|
+
minijinja: "minijinja";
|
|
660
723
|
}>>;
|
|
661
724
|
pythonWebFramework: z.ZodOptional<z.ZodEnum<{
|
|
662
725
|
none: "none";
|
|
@@ -665,6 +728,8 @@ declare const router: {
|
|
|
665
728
|
flask: "flask";
|
|
666
729
|
litestar: "litestar";
|
|
667
730
|
starlette: "starlette";
|
|
731
|
+
aiohttp: "aiohttp";
|
|
732
|
+
streamlit: "streamlit";
|
|
668
733
|
}>>;
|
|
669
734
|
pythonOrm: z.ZodOptional<z.ZodEnum<{
|
|
670
735
|
none: "none";
|
|
@@ -672,6 +737,7 @@ declare const router: {
|
|
|
672
737
|
sqlmodel: "sqlmodel";
|
|
673
738
|
"tortoise-orm": "tortoise-orm";
|
|
674
739
|
peewee: "peewee";
|
|
740
|
+
pymongo: "pymongo";
|
|
675
741
|
}>>;
|
|
676
742
|
pythonValidation: z.ZodOptional<z.ZodEnum<{
|
|
677
743
|
none: "none";
|
|
@@ -679,21 +745,27 @@ declare const router: {
|
|
|
679
745
|
}>>;
|
|
680
746
|
pythonAi: z.ZodOptional<z.ZodArray<z.ZodEnum<{
|
|
681
747
|
none: "none";
|
|
748
|
+
mcp: "mcp";
|
|
682
749
|
langgraph: "langgraph";
|
|
750
|
+
"openai-sdk": "openai-sdk";
|
|
751
|
+
"anthropic-sdk": "anthropic-sdk";
|
|
683
752
|
"google-adk": "google-adk";
|
|
684
753
|
langchain: "langchain";
|
|
685
754
|
llamaindex: "llamaindex";
|
|
686
|
-
"openai-sdk": "openai-sdk";
|
|
687
|
-
"anthropic-sdk": "anthropic-sdk";
|
|
688
755
|
crewai: "crewai";
|
|
689
756
|
haystack: "haystack";
|
|
690
757
|
"pydantic-ai": "pydantic-ai";
|
|
691
758
|
smolagents: "smolagents";
|
|
759
|
+
pytorch: "pytorch";
|
|
760
|
+
transformers: "transformers";
|
|
761
|
+
"scikit-learn": "scikit-learn";
|
|
762
|
+
tensorflow: "tensorflow";
|
|
692
763
|
}>>>;
|
|
693
764
|
pythonAuth: z.ZodOptional<z.ZodEnum<{
|
|
694
765
|
none: "none";
|
|
695
766
|
authlib: "authlib";
|
|
696
767
|
jwt: "jwt";
|
|
768
|
+
pyjwt: "pyjwt";
|
|
697
769
|
"fastapi-users": "fastapi-users";
|
|
698
770
|
}>>;
|
|
699
771
|
pythonApi: z.ZodOptional<z.ZodEnum<{
|
|
@@ -724,6 +796,7 @@ declare const router: {
|
|
|
724
796
|
none: "none";
|
|
725
797
|
pytest: "pytest";
|
|
726
798
|
hypothesis: "hypothesis";
|
|
799
|
+
"pytest-cov": "pytest-cov";
|
|
727
800
|
}>>>;
|
|
728
801
|
pythonCaching: z.ZodOptional<z.ZodEnum<{
|
|
729
802
|
none: "none";
|
|
@@ -738,6 +811,7 @@ declare const router: {
|
|
|
738
811
|
pythonObservability: z.ZodOptional<z.ZodEnum<{
|
|
739
812
|
none: "none";
|
|
740
813
|
opentelemetry: "opentelemetry";
|
|
814
|
+
"prometheus-client": "prometheus-client";
|
|
741
815
|
}>>;
|
|
742
816
|
pythonCli: z.ZodOptional<z.ZodArray<z.ZodEnum<{
|
|
743
817
|
none: "none";
|
|
@@ -745,6 +819,37 @@ declare const router: {
|
|
|
745
819
|
click: "click";
|
|
746
820
|
rich: "rich";
|
|
747
821
|
}>>>;
|
|
822
|
+
pythonCloudSdk: z.ZodOptional<z.ZodEnum<{
|
|
823
|
+
none: "none";
|
|
824
|
+
boto3: "boto3";
|
|
825
|
+
}>>;
|
|
826
|
+
pythonHttpClient: z.ZodOptional<z.ZodEnum<{
|
|
827
|
+
none: "none";
|
|
828
|
+
requests: "requests";
|
|
829
|
+
}>>;
|
|
830
|
+
pythonData: z.ZodOptional<z.ZodArray<z.ZodEnum<{
|
|
831
|
+
none: "none";
|
|
832
|
+
numpy: "numpy";
|
|
833
|
+
pandas: "pandas";
|
|
834
|
+
scipy: "scipy";
|
|
835
|
+
}>>>;
|
|
836
|
+
pythonMedia: z.ZodOptional<z.ZodEnum<{
|
|
837
|
+
none: "none";
|
|
838
|
+
pillow: "pillow";
|
|
839
|
+
}>>;
|
|
840
|
+
pythonServer: z.ZodOptional<z.ZodEnum<{
|
|
841
|
+
none: "none";
|
|
842
|
+
gunicorn: "gunicorn";
|
|
843
|
+
}>>;
|
|
844
|
+
pythonPackageManager: z.ZodOptional<z.ZodEnum<{
|
|
845
|
+
none: "none";
|
|
846
|
+
uv: "uv";
|
|
847
|
+
poetry: "poetry";
|
|
848
|
+
}>>;
|
|
849
|
+
pythonMessageQueue: z.ZodOptional<z.ZodEnum<{
|
|
850
|
+
none: "none";
|
|
851
|
+
"confluent-kafka": "confluent-kafka";
|
|
852
|
+
}>>;
|
|
748
853
|
goWebFramework: z.ZodOptional<z.ZodEnum<{
|
|
749
854
|
none: "none";
|
|
750
855
|
gin: "gin";
|
|
@@ -752,10 +857,14 @@ declare const router: {
|
|
|
752
857
|
fiber: "fiber";
|
|
753
858
|
chi: "chi";
|
|
754
859
|
stdlib: "stdlib";
|
|
860
|
+
"go-zero": "go-zero";
|
|
861
|
+
kratos: "kratos";
|
|
862
|
+
httprouter: "httprouter";
|
|
755
863
|
}>>;
|
|
756
864
|
goOrm: z.ZodOptional<z.ZodEnum<{
|
|
757
865
|
none: "none";
|
|
758
866
|
bun: "bun";
|
|
867
|
+
sqlx: "sqlx";
|
|
759
868
|
gorm: "gorm";
|
|
760
869
|
sqlc: "sqlc";
|
|
761
870
|
ent: "ent";
|
|
@@ -764,6 +873,9 @@ declare const router: {
|
|
|
764
873
|
none: "none";
|
|
765
874
|
"grpc-go": "grpc-go";
|
|
766
875
|
gqlgen: "gqlgen";
|
|
876
|
+
"grpc-gateway": "grpc-gateway";
|
|
877
|
+
"connect-go": "connect-go";
|
|
878
|
+
"oapi-codegen": "oapi-codegen";
|
|
767
879
|
}>>;
|
|
768
880
|
goCli: z.ZodOptional<z.ZodEnum<{
|
|
769
881
|
none: "none";
|
|
@@ -780,6 +892,7 @@ declare const router: {
|
|
|
780
892
|
}>>;
|
|
781
893
|
goAuth: z.ZodOptional<z.ZodEnum<{
|
|
782
894
|
none: "none";
|
|
895
|
+
oauth2: "oauth2";
|
|
783
896
|
jwt: "jwt";
|
|
784
897
|
casbin: "casbin";
|
|
785
898
|
goth: "goth";
|
|
@@ -788,6 +901,9 @@ declare const router: {
|
|
|
788
901
|
none: "none";
|
|
789
902
|
testify: "testify";
|
|
790
903
|
gomock: "gomock";
|
|
904
|
+
testcontainers: "testcontainers";
|
|
905
|
+
"ginkgo-gomega": "ginkgo-gomega";
|
|
906
|
+
mockery: "mockery";
|
|
791
907
|
}>>>;
|
|
792
908
|
goRealtime: z.ZodOptional<z.ZodEnum<{
|
|
793
909
|
none: "none";
|
|
@@ -798,6 +914,8 @@ declare const router: {
|
|
|
798
914
|
none: "none";
|
|
799
915
|
nats: "nats";
|
|
800
916
|
watermill: "watermill";
|
|
917
|
+
"kafka-go": "kafka-go";
|
|
918
|
+
asynq: "asynq";
|
|
801
919
|
}>>;
|
|
802
920
|
goCaching: z.ZodOptional<z.ZodEnum<{
|
|
803
921
|
none: "none";
|
|
@@ -812,6 +930,31 @@ declare const router: {
|
|
|
812
930
|
goObservability: z.ZodOptional<z.ZodEnum<{
|
|
813
931
|
none: "none";
|
|
814
932
|
opentelemetry: "opentelemetry";
|
|
933
|
+
prometheus: "prometheus";
|
|
934
|
+
}>>;
|
|
935
|
+
goValidation: z.ZodOptional<z.ZodEnum<{
|
|
936
|
+
none: "none";
|
|
937
|
+
validator: "validator";
|
|
938
|
+
}>>;
|
|
939
|
+
goQuality: z.ZodOptional<z.ZodEnum<{
|
|
940
|
+
none: "none";
|
|
941
|
+
"golangci-lint": "golangci-lint";
|
|
942
|
+
}>>;
|
|
943
|
+
goMigrations: z.ZodOptional<z.ZodEnum<{
|
|
944
|
+
none: "none";
|
|
945
|
+
"golang-migrate": "golang-migrate";
|
|
946
|
+
}>>;
|
|
947
|
+
goTemplating: z.ZodOptional<z.ZodEnum<{
|
|
948
|
+
none: "none";
|
|
949
|
+
templ: "templ";
|
|
950
|
+
}>>;
|
|
951
|
+
goProtoTooling: z.ZodOptional<z.ZodEnum<{
|
|
952
|
+
none: "none";
|
|
953
|
+
buf: "buf";
|
|
954
|
+
}>>;
|
|
955
|
+
goDI: z.ZodOptional<z.ZodEnum<{
|
|
956
|
+
none: "none";
|
|
957
|
+
fx: "fx";
|
|
815
958
|
}>>;
|
|
816
959
|
javaWebFramework: z.ZodOptional<z.ZodEnum<{
|
|
817
960
|
none: "none";
|
|
@@ -870,12 +1013,32 @@ declare const router: {
|
|
|
870
1013
|
thymeleaf: "thymeleaf";
|
|
871
1014
|
"spring-amqp": "spring-amqp";
|
|
872
1015
|
"opentelemetry-java": "opentelemetry-java";
|
|
1016
|
+
"spring-data-redis": "spring-data-redis";
|
|
1017
|
+
"spring-data-mongodb": "spring-data-mongodb";
|
|
1018
|
+
"spring-data-elasticsearch": "spring-data-elasticsearch";
|
|
1019
|
+
"spring-data-neo4j": "spring-data-neo4j";
|
|
1020
|
+
"spring-data-cassandra": "spring-data-cassandra";
|
|
1021
|
+
"spring-data-couchbase": "spring-data-couchbase";
|
|
1022
|
+
"spring-data-jdbc": "spring-data-jdbc";
|
|
1023
|
+
"spring-data-rest": "spring-data-rest";
|
|
1024
|
+
"spring-quartz": "spring-quartz";
|
|
1025
|
+
"spring-pulsar": "spring-pulsar";
|
|
1026
|
+
"spring-integration": "spring-integration";
|
|
1027
|
+
"spring-websocket": "spring-websocket";
|
|
1028
|
+
"spring-rsocket": "spring-rsocket";
|
|
1029
|
+
"spring-hateoas": "spring-hateoas";
|
|
1030
|
+
"spring-session-redis": "spring-session-redis";
|
|
1031
|
+
"spring-session-jdbc": "spring-session-jdbc";
|
|
1032
|
+
"spring-ldap": "spring-ldap";
|
|
1033
|
+
"spring-oauth2-client": "spring-oauth2-client";
|
|
1034
|
+
"spring-saml2": "spring-saml2";
|
|
1035
|
+
"spring-restclient": "spring-restclient";
|
|
873
1036
|
}>>>;
|
|
874
1037
|
javaTestingLibraries: z.ZodOptional<z.ZodArray<z.ZodEnum<{
|
|
875
1038
|
none: "none";
|
|
1039
|
+
testcontainers: "testcontainers";
|
|
876
1040
|
junit5: "junit5";
|
|
877
1041
|
mockito: "mockito";
|
|
878
|
-
testcontainers: "testcontainers";
|
|
879
1042
|
assertj: "assertj";
|
|
880
1043
|
"rest-assured": "rest-assured";
|
|
881
1044
|
wiremock: "wiremock";
|
|
@@ -947,6 +1110,29 @@ declare const router: {
|
|
|
947
1110
|
azure: "azure";
|
|
948
1111
|
aws: "aws";
|
|
949
1112
|
}>>;
|
|
1113
|
+
dotnetLibraries: z.ZodOptional<z.ZodArray<z.ZodEnum<{
|
|
1114
|
+
none: "none";
|
|
1115
|
+
sentry: "sentry";
|
|
1116
|
+
automapper: "automapper";
|
|
1117
|
+
mediatr: "mediatr";
|
|
1118
|
+
fastendpoints: "fastendpoints";
|
|
1119
|
+
"api-versioning": "api-versioning";
|
|
1120
|
+
scalar: "scalar";
|
|
1121
|
+
polly: "polly";
|
|
1122
|
+
masstransit: "masstransit";
|
|
1123
|
+
rebus: "rebus";
|
|
1124
|
+
coravel: "coravel";
|
|
1125
|
+
"magic-onion": "magic-onion";
|
|
1126
|
+
"prometheus-net": "prometheus-net";
|
|
1127
|
+
seq: "seq";
|
|
1128
|
+
"application-insights": "application-insights";
|
|
1129
|
+
"mongodb-driver": "mongodb-driver";
|
|
1130
|
+
nhibernate: "nhibernate";
|
|
1131
|
+
mapster: "mapster";
|
|
1132
|
+
scrutor: "scrutor";
|
|
1133
|
+
refit: "refit";
|
|
1134
|
+
"fluent-email": "fluent-email";
|
|
1135
|
+
}>>>;
|
|
950
1136
|
elixirWebFramework: z.ZodOptional<z.ZodEnum<{
|
|
951
1137
|
none: "none";
|
|
952
1138
|
phoenix: "phoenix";
|
|
@@ -956,18 +1142,22 @@ declare const router: {
|
|
|
956
1142
|
none: "none";
|
|
957
1143
|
ecto: "ecto";
|
|
958
1144
|
"ecto-sql": "ecto-sql";
|
|
1145
|
+
myxql: "myxql";
|
|
1146
|
+
ecto_sqlite3: "ecto_sqlite3";
|
|
959
1147
|
}>>;
|
|
960
1148
|
elixirAuth: z.ZodOptional<z.ZodEnum<{
|
|
961
1149
|
none: "none";
|
|
962
1150
|
"phx-gen-auth": "phx-gen-auth";
|
|
963
1151
|
ueberauth: "ueberauth";
|
|
964
1152
|
guardian: "guardian";
|
|
1153
|
+
pow: "pow";
|
|
965
1154
|
}>>;
|
|
966
1155
|
elixirApi: z.ZodOptional<z.ZodEnum<{
|
|
967
1156
|
none: "none";
|
|
968
1157
|
grpc: "grpc";
|
|
969
1158
|
rest: "rest";
|
|
970
1159
|
absinthe: "absinthe";
|
|
1160
|
+
open_api_spex: "open_api_spex";
|
|
971
1161
|
}>>;
|
|
972
1162
|
elixirRealtime: z.ZodOptional<z.ZodEnum<{
|
|
973
1163
|
none: "none";
|
|
@@ -990,6 +1180,7 @@ declare const router: {
|
|
|
990
1180
|
none: "none";
|
|
991
1181
|
req: "req";
|
|
992
1182
|
finch: "finch";
|
|
1183
|
+
tesla: "tesla";
|
|
993
1184
|
}>>;
|
|
994
1185
|
elixirJson: z.ZodOptional<z.ZodEnum<{
|
|
995
1186
|
none: "none";
|
|
@@ -998,15 +1189,18 @@ declare const router: {
|
|
|
998
1189
|
elixirEmail: z.ZodOptional<z.ZodEnum<{
|
|
999
1190
|
none: "none";
|
|
1000
1191
|
swoosh: "swoosh";
|
|
1192
|
+
bamboo: "bamboo";
|
|
1001
1193
|
}>>;
|
|
1002
1194
|
elixirCaching: z.ZodOptional<z.ZodEnum<{
|
|
1003
1195
|
none: "none";
|
|
1004
1196
|
cachex: "cachex";
|
|
1005
1197
|
nebulex: "nebulex";
|
|
1198
|
+
redix: "redix";
|
|
1006
1199
|
}>>;
|
|
1007
1200
|
elixirObservability: z.ZodOptional<z.ZodEnum<{
|
|
1008
1201
|
none: "none";
|
|
1009
1202
|
opentelemetry: "opentelemetry";
|
|
1203
|
+
sentry: "sentry";
|
|
1010
1204
|
telemetry: "telemetry";
|
|
1011
1205
|
prom_ex: "prom_ex";
|
|
1012
1206
|
}>>;
|
|
@@ -1016,12 +1210,37 @@ declare const router: {
|
|
|
1016
1210
|
mox: "mox";
|
|
1017
1211
|
bypass: "bypass";
|
|
1018
1212
|
wallaby: "wallaby";
|
|
1213
|
+
stream_data: "stream_data";
|
|
1214
|
+
ex_machina: "ex_machina";
|
|
1019
1215
|
}>>;
|
|
1020
1216
|
elixirQuality: z.ZodOptional<z.ZodEnum<{
|
|
1021
1217
|
none: "none";
|
|
1022
1218
|
credo: "credo";
|
|
1023
1219
|
dialyxir: "dialyxir";
|
|
1024
1220
|
sobelow: "sobelow";
|
|
1221
|
+
excoveralls: "excoveralls";
|
|
1222
|
+
mix_audit: "mix_audit";
|
|
1223
|
+
}>>;
|
|
1224
|
+
elixirI18n: z.ZodOptional<z.ZodEnum<{
|
|
1225
|
+
none: "none";
|
|
1226
|
+
gettext: "gettext";
|
|
1227
|
+
}>>;
|
|
1228
|
+
elixirHttpServer: z.ZodOptional<z.ZodEnum<{
|
|
1229
|
+
none: "none";
|
|
1230
|
+
bandit: "bandit";
|
|
1231
|
+
cowboy: "cowboy";
|
|
1232
|
+
}>>;
|
|
1233
|
+
elixirApplicationFramework: z.ZodOptional<z.ZodEnum<{
|
|
1234
|
+
none: "none";
|
|
1235
|
+
ash: "ash";
|
|
1236
|
+
}>>;
|
|
1237
|
+
elixirDocumentation: z.ZodOptional<z.ZodEnum<{
|
|
1238
|
+
none: "none";
|
|
1239
|
+
ex_doc: "ex_doc";
|
|
1240
|
+
}>>;
|
|
1241
|
+
elixirClustering: z.ZodOptional<z.ZodEnum<{
|
|
1242
|
+
none: "none";
|
|
1243
|
+
libcluster: "libcluster";
|
|
1025
1244
|
}>>;
|
|
1026
1245
|
elixirDeploy: z.ZodOptional<z.ZodEnum<{
|
|
1027
1246
|
none: "none";
|
|
@@ -1034,6 +1253,9 @@ declare const router: {
|
|
|
1034
1253
|
none: "none";
|
|
1035
1254
|
nx: "nx";
|
|
1036
1255
|
broadway: "broadway";
|
|
1256
|
+
ex_aws: "ex_aws";
|
|
1257
|
+
floki: "floki";
|
|
1258
|
+
rustler: "rustler";
|
|
1037
1259
|
}>>>;
|
|
1038
1260
|
aiDocs: z.ZodOptional<z.ZodArray<z.ZodEnum<{
|
|
1039
1261
|
none: "none";
|
|
@@ -1052,11 +1274,11 @@ declare const router: {
|
|
|
1052
1274
|
orm: "none" | "drizzle" | "prisma" | "mongoose" | "typeorm" | "kysely" | "mikroorm" | "sequelize";
|
|
1053
1275
|
backend: "effect" | "none" | "hono" | "express" | "fastify" | "elysia" | "fets" | "nestjs" | "adonisjs" | "nitro" | "encore" | "convex" | "self";
|
|
1054
1276
|
runtime: "none" | "bun" | "node" | "workers";
|
|
1055
|
-
frontend: ("none" | "tanstack-router" | "react-router" | "react-vite" | "tanstack-start" | "next" | "vinext" | "nuxt" | "native-bare" | "native-uniwind" | "native-unistyles" | "svelte" | "solid" | "solid-start" | "astro" | "qwik" | "angular" | "redwood" | "fresh")[];
|
|
1056
|
-
addons: ("none" | "pwa" | "tauri" | "starlight" | "biome" | "lefthook" | "husky" | "ruler" | "mcp" | "skills" | "turborepo" | "nx" | "fumadocs" | "ultracite" | "oxlint" | "opentui" | "wxt" | "msw" | "storybook" | "swr" | "tanstack-query" | "tanstack-table" | "tanstack-virtual" | "tanstack-db" | "tanstack-pacer" | "backend-utils" | "devcontainer" | "docker-compose" | "github-actions")[];
|
|
1277
|
+
frontend: ("none" | "tanstack-router" | "react-router" | "react-vite" | "vanilla-vite" | "vue" | "tanstack-start" | "next" | "vinext" | "nuxt" | "native-bare" | "native-uniwind" | "native-unistyles" | "svelte" | "solid" | "solid-start" | "astro" | "qwik" | "angular" | "redwood" | "fresh")[];
|
|
1278
|
+
addons: ("none" | "pwa" | "tauri" | "starlight" | "biome" | "lefthook" | "husky" | "ruler" | "mcp" | "skills" | "turborepo" | "nx" | "fumadocs" | "ultracite" | "oxlint" | "opentui" | "wxt" | "msw" | "storybook" | "swr" | "tanstack-query" | "tanstack-table" | "tanstack-virtual" | "tanstack-db" | "tanstack-pacer" | "backend-utils" | "devcontainer" | "docker-compose" | "github-actions" | "eslint" | "prettier" | "axios" | "firebase" | "graphql-codegen" | "openapi-typescript" | "apollo-client" | "electron" | "capacitor")[];
|
|
1057
1279
|
examples: ("ai" | "none" | "chat-sdk" | "tanstack-showcase")[];
|
|
1058
|
-
auth: "none" | "better-auth" | "better-auth-organizations" | "go-better-auth" | "clerk" | "nextauth" | "stack-auth" | "supabase-auth" | "auth0" | "workos" | "kinde";
|
|
1059
|
-
payments: "none" | "revenuecat" | "polar" | "stripe" | "lemon-squeezy" | "paddle" | "dodo" | "creem" | "autumn" | "commet";
|
|
1280
|
+
auth: "none" | "better-auth" | "better-auth-organizations" | "go-better-auth" | "clerk" | "nextauth" | "stack-auth" | "supabase-auth" | "auth0" | "workos" | "kinde" | "passport";
|
|
1281
|
+
payments: "none" | "revenuecat" | "polar" | "stripe" | "lemon-squeezy" | "paddle" | "paypal" | "dodo" | "creem" | "autumn" | "commet";
|
|
1060
1282
|
git: boolean;
|
|
1061
1283
|
packageManager: "bun" | "npm" | "pnpm" | "yarn";
|
|
1062
1284
|
versionChannel: "stable" | "latest" | "beta";
|
|
@@ -1065,24 +1287,24 @@ declare const router: {
|
|
|
1065
1287
|
api: "none" | "trpc" | "orpc" | "ts-rest" | "garph" | "graphql-yoga" | "apollo-server" | "openapi";
|
|
1066
1288
|
webDeploy: "none" | "docker" | "cloudflare" | "fly" | "railway" | "render" | "netlify" | "sst" | "vercel";
|
|
1067
1289
|
serverDeploy: "none" | "docker" | "cloudflare" | "fly" | "railway" | "render" | "netlify" | "sst" | "vercel";
|
|
1068
|
-
ai: "none" | "langgraph" | "google-adk" | "langchain" | "llamaindex" | "vercel-ai" | "mastra" | "voltagent" | "openai-agents" | "modelfusion" | "tanstack-ai" | "ai-cli";
|
|
1290
|
+
ai: "none" | "langgraph" | "openai-sdk" | "anthropic-sdk" | "google-adk" | "langchain" | "llamaindex" | "vercel-ai" | "mastra" | "voltagent" | "openai-agents" | "modelfusion" | "tanstack-ai" | "ai-cli";
|
|
1069
1291
|
effect: "effect" | "none" | "effect-full";
|
|
1070
1292
|
stateManagement: "none" | "zustand" | "jotai" | "nanostores" | "redux-toolkit" | "mobx" | "xstate" | "valtio" | "tanstack-store" | "legend-state";
|
|
1071
1293
|
forms: "none" | "tanstack-form" | "react-hook-form" | "formik" | "final-form" | "conform" | "modular-forms";
|
|
1072
|
-
testing: "none" | "vitest" | "playwright" | "vitest-playwright" | "jest" | "cypress";
|
|
1294
|
+
testing: "none" | "vitest" | "playwright" | "vitest-playwright" | "jest" | "mocha" | "cypress";
|
|
1073
1295
|
email: "none" | "react-email" | "resend" | "nodemailer" | "postmark" | "sendgrid" | "aws-ses" | "mailgun" | "plunk";
|
|
1074
|
-
cssFramework: "none" | "tailwind" | "scss" | "less" | "postcss-only";
|
|
1296
|
+
cssFramework: "none" | "tailwind" | "scss" | "less" | "postcss-only" | "styled-components";
|
|
1075
1297
|
uiLibrary: "none" | "shadcn-ui" | "shadcn-svelte" | "daisyui" | "radix-ui" | "headless-ui" | "park-ui" | "chakra-ui" | "nextui" | "mantine" | "mui" | "antd" | "base-ui" | "ark-ui" | "react-aria";
|
|
1076
1298
|
validation: "none" | "zod" | "valibot" | "arktype" | "typebox" | "typia" | "runtypes" | "effect-schema";
|
|
1077
|
-
realtime: "none" | "socket-io" | "partykit" | "ably" | "pusher" | "liveblocks" | "yjs";
|
|
1299
|
+
realtime: "none" | "socket-io" | "ws" | "partykit" | "ably" | "pusher" | "liveblocks" | "yjs";
|
|
1078
1300
|
jobQueue: "none" | "bullmq" | "trigger-dev" | "inngest" | "temporal";
|
|
1079
1301
|
animation: "none" | "framer-motion" | "gsap" | "react-spring" | "auto-animate" | "lottie";
|
|
1080
1302
|
fileUpload: "none" | "uploadthing" | "filepond" | "uppy";
|
|
1081
1303
|
logging: "none" | "pino" | "winston" | "evlog";
|
|
1082
|
-
observability: "none" | "
|
|
1304
|
+
observability: "none" | "sentry" | "opentelemetry" | "grafana" | "datadog" | "axiom" | "betterstack";
|
|
1083
1305
|
featureFlags: "none" | "growthbook" | "posthog" | "launchdarkly" | "flagsmith" | "unleash";
|
|
1084
|
-
analytics: "none" | "posthog" | "plausible" | "umami";
|
|
1085
|
-
cms: "none" | "payload" | "sanity" | "strapi" | "tinacms" | "directus" | "keystatic";
|
|
1306
|
+
analytics: "none" | "posthog" | "plausible" | "umami" | "ga4";
|
|
1307
|
+
cms: "none" | "payload" | "sanity" | "strapi" | "tinacms" | "directus" | "keystatic" | "contentful";
|
|
1086
1308
|
caching: "none" | "redis" | "upstash-redis";
|
|
1087
1309
|
rateLimit: "none" | "arcjet" | "upstash-ratelimit";
|
|
1088
1310
|
i18n: "none" | "paraglide" | "i18next" | "next-intl" | "intlayer";
|
|
@@ -1096,54 +1318,68 @@ declare const router: {
|
|
|
1096
1318
|
mobilePush: "none" | "expo-notifications";
|
|
1097
1319
|
mobileOTA: "none" | "expo-updates";
|
|
1098
1320
|
mobileDeepLinking: "none" | "expo-linking";
|
|
1099
|
-
|
|
1100
|
-
|
|
1101
|
-
|
|
1102
|
-
|
|
1321
|
+
mobileLibraries: ("none" | "expo-sqlite" | "expo-camera" | "expo-image-picker" | "expo-location" | "expo-sensors" | "expo-file-system" | "expo-image" | "expo-audio" | "expo-video" | "expo-contacts" | "expo-calendar" | "expo-local-authentication" | "expo-sharing" | "expo-clipboard" | "expo-task-manager" | "expo-background-task" | "expo-maps" | "expo-brightness" | "expo-battery" | "expo-screen-capture")[];
|
|
1322
|
+
rustWebFramework: "none" | "axum" | "actix-web" | "rocket" | "poem" | "loco" | "warp" | "salvo";
|
|
1323
|
+
rustFrontend: "none" | "leptos" | "dioxus" | "yew";
|
|
1324
|
+
rustOrm: "none" | "mongodb" | "sea-orm" | "sqlx" | "diesel" | "rusqlite" | "tokio-postgres";
|
|
1325
|
+
rustApi: "none" | "tonic" | "async-graphql" | "jsonrpsee";
|
|
1103
1326
|
rustCli: "none" | "clap" | "ratatui";
|
|
1104
|
-
rustLibraries: ("config" | "none" | "serde" | "uuid" | "chrono" | "reqwest" | "dashmap" | "parking-lot" | "secrecy" | "tokio-util" | "utoipa" | "validator" | "jsonwebtoken" | "argon2" | "tokio-test" | "mockall" | "proptest" | "insta")[];
|
|
1327
|
+
rustLibraries: ("config" | "none" | "serde" | "uuid" | "chrono" | "reqwest" | "dashmap" | "parking-lot" | "secrecy" | "tokio-util" | "utoipa" | "validator" | "jsonwebtoken" | "argon2" | "tokio-test" | "mockall" | "proptest" | "insta" | "rand" | "regex" | "rayon" | "itertools" | "rstest" | "cargo-nextest" | "cargo-audit")[];
|
|
1105
1328
|
rustLogging: "none" | "tracing" | "env-logger";
|
|
1106
1329
|
rustErrorHandling: "none" | "anyhow-thiserror" | "eyre";
|
|
1107
1330
|
rustCaching: "none" | "redis" | "moka";
|
|
1108
|
-
rustAuth: "none" | "oauth2" | "torii";
|
|
1331
|
+
rustAuth: "none" | "oauth2" | "torii" | "openidconnect" | "tower-sessions";
|
|
1109
1332
|
rustRealtime: "none" | "tokio-tungstenite";
|
|
1110
|
-
rustMessageQueue: "none" | "lapin";
|
|
1111
|
-
rustObservability: "none" | "opentelemetry";
|
|
1112
|
-
rustTemplating: "none" | "askama" | "tera";
|
|
1113
|
-
pythonWebFramework: "none" | "fastapi" | "django" | "flask" | "litestar" | "starlette";
|
|
1114
|
-
pythonOrm: "none" | "sqlalchemy" | "sqlmodel" | "tortoise-orm" | "peewee";
|
|
1333
|
+
rustMessageQueue: "none" | "lapin" | "rdkafka" | "async-nats";
|
|
1334
|
+
rustObservability: "none" | "opentelemetry" | "metrics";
|
|
1335
|
+
rustTemplating: "none" | "askama" | "tera" | "minijinja";
|
|
1336
|
+
pythonWebFramework: "none" | "fastapi" | "django" | "flask" | "litestar" | "starlette" | "aiohttp" | "streamlit";
|
|
1337
|
+
pythonOrm: "none" | "sqlalchemy" | "sqlmodel" | "tortoise-orm" | "peewee" | "pymongo";
|
|
1115
1338
|
pythonValidation: "none" | "pydantic";
|
|
1116
|
-
pythonAi: ("none" | "langgraph" | "
|
|
1117
|
-
pythonAuth: "none" | "authlib" | "jwt" | "fastapi-users";
|
|
1339
|
+
pythonAi: ("none" | "mcp" | "langgraph" | "openai-sdk" | "anthropic-sdk" | "google-adk" | "langchain" | "llamaindex" | "crewai" | "haystack" | "pydantic-ai" | "smolagents" | "pytorch" | "transformers" | "scikit-learn" | "tensorflow")[];
|
|
1340
|
+
pythonAuth: "none" | "authlib" | "jwt" | "pyjwt" | "fastapi-users";
|
|
1118
1341
|
pythonApi: "none" | "django-rest-framework" | "django-ninja";
|
|
1119
1342
|
pythonTaskQueue: "none" | "celery" | "rq" | "dramatiq" | "huey" | "taskiq";
|
|
1120
1343
|
pythonGraphql: "none" | "strawberry" | "ariadne";
|
|
1121
1344
|
pythonQuality: "none" | "ruff" | "mypy" | "pyright";
|
|
1122
|
-
pythonTesting: ("none" | "pytest" | "hypothesis")[];
|
|
1345
|
+
pythonTesting: ("none" | "pytest" | "hypothesis" | "pytest-cov")[];
|
|
1123
1346
|
pythonCaching: "none" | "redis" | "aiocache";
|
|
1124
1347
|
pythonRealtime: "none" | "python-socketio" | "websockets";
|
|
1125
|
-
pythonObservability: "none" | "opentelemetry";
|
|
1348
|
+
pythonObservability: "none" | "opentelemetry" | "prometheus-client";
|
|
1126
1349
|
pythonCli: ("none" | "typer" | "click" | "rich")[];
|
|
1127
|
-
|
|
1128
|
-
|
|
1129
|
-
|
|
1350
|
+
pythonCloudSdk: "none" | "boto3";
|
|
1351
|
+
pythonHttpClient: "none" | "requests";
|
|
1352
|
+
pythonData: ("none" | "numpy" | "pandas" | "scipy")[];
|
|
1353
|
+
pythonMedia: "none" | "pillow";
|
|
1354
|
+
pythonServer: "none" | "gunicorn";
|
|
1355
|
+
pythonPackageManager: "none" | "uv" | "poetry";
|
|
1356
|
+
pythonMessageQueue: "none" | "confluent-kafka";
|
|
1357
|
+
goWebFramework: "none" | "gin" | "echo" | "fiber" | "chi" | "stdlib" | "go-zero" | "kratos" | "httprouter";
|
|
1358
|
+
goOrm: "none" | "bun" | "sqlx" | "gorm" | "sqlc" | "ent";
|
|
1359
|
+
goApi: "none" | "grpc-go" | "gqlgen" | "grpc-gateway" | "connect-go" | "oapi-codegen";
|
|
1130
1360
|
goCli: "none" | "cobra" | "bubbletea" | "urfave-cli";
|
|
1131
1361
|
goLogging: "none" | "zap" | "zerolog" | "slog" | "logrus";
|
|
1132
|
-
goAuth: "none" | "jwt" | "casbin" | "goth";
|
|
1133
|
-
goTesting: ("none" | "testify" | "gomock")[];
|
|
1362
|
+
goAuth: "none" | "oauth2" | "jwt" | "casbin" | "goth";
|
|
1363
|
+
goTesting: ("none" | "testify" | "gomock" | "testcontainers" | "ginkgo-gomega" | "mockery")[];
|
|
1134
1364
|
goRealtime: "none" | "gorilla-websocket" | "centrifuge";
|
|
1135
|
-
goMessageQueue: "none" | "nats" | "watermill";
|
|
1365
|
+
goMessageQueue: "none" | "nats" | "watermill" | "kafka-go" | "asynq";
|
|
1136
1366
|
goCaching: "none" | "redis" | "ristretto";
|
|
1137
1367
|
goConfig: "none" | "viper" | "koanf";
|
|
1138
|
-
goObservability: "none" | "opentelemetry";
|
|
1368
|
+
goObservability: "none" | "opentelemetry" | "prometheus";
|
|
1369
|
+
goValidation: "none" | "validator";
|
|
1370
|
+
goQuality: "none" | "golangci-lint";
|
|
1371
|
+
goMigrations: "none" | "golang-migrate";
|
|
1372
|
+
goTemplating: "none" | "templ";
|
|
1373
|
+
goProtoTooling: "none" | "buf";
|
|
1374
|
+
goDI: "none" | "fx";
|
|
1139
1375
|
javaWebFramework: "none" | "spring-boot" | "quarkus" | "micronaut";
|
|
1140
1376
|
javaBuildTool: "none" | "maven" | "gradle";
|
|
1141
1377
|
javaOrm: "none" | "spring-data-jpa" | "jooq" | "mybatis";
|
|
1142
1378
|
javaAuth: "none" | "spring-security" | "keycloak";
|
|
1143
1379
|
javaApi: "none" | "spring-graphql" | "openapi-generator" | "grpc";
|
|
1144
1380
|
javaLogging: "none" | "logback" | "log4j2";
|
|
1145
|
-
javaLibraries: ("none" | "spring-actuator" | "spring-validation" | "flyway" | "liquibase" | "springdoc-openapi" | "lombok" | "mapstruct" | "caffeine" | "resilience4j" | "spring-webflux" | "spring-batch" | "spring-kafka" | "spring-mail" | "spring-devtools" | "micrometer-prometheus" | "thymeleaf" | "spring-amqp" | "opentelemetry-java")[];
|
|
1146
|
-
javaTestingLibraries: ("none" | "
|
|
1381
|
+
javaLibraries: ("none" | "spring-actuator" | "spring-validation" | "flyway" | "liquibase" | "springdoc-openapi" | "lombok" | "mapstruct" | "caffeine" | "resilience4j" | "spring-webflux" | "spring-batch" | "spring-kafka" | "spring-mail" | "spring-devtools" | "micrometer-prometheus" | "thymeleaf" | "spring-amqp" | "opentelemetry-java" | "spring-data-redis" | "spring-data-mongodb" | "spring-data-elasticsearch" | "spring-data-neo4j" | "spring-data-cassandra" | "spring-data-couchbase" | "spring-data-jdbc" | "spring-data-rest" | "spring-quartz" | "spring-pulsar" | "spring-integration" | "spring-websocket" | "spring-rsocket" | "spring-hateoas" | "spring-session-redis" | "spring-session-jdbc" | "spring-ldap" | "spring-oauth2-client" | "spring-saml2" | "spring-restclient")[];
|
|
1382
|
+
javaTestingLibraries: ("none" | "testcontainers" | "junit5" | "mockito" | "assertj" | "rest-assured" | "wiremock" | "awaitility" | "archunit" | "jqwik")[];
|
|
1147
1383
|
dotnetWebFramework: "none" | "aspnet-minimal" | "aspnet-mvc" | "aspnet-blazor";
|
|
1148
1384
|
dotnetOrm: "none" | "ef-core" | "dapper" | "linq2db";
|
|
1149
1385
|
dotnetAuth: "none" | "aspnet-identity" | "duende-identityserver" | "auth0-aspnet";
|
|
@@ -1155,25 +1391,31 @@ declare const router: {
|
|
|
1155
1391
|
dotnetValidation: "none" | "fluentvalidation" | "data-annotations";
|
|
1156
1392
|
dotnetCaching: "none" | "redis" | "memory-cache";
|
|
1157
1393
|
dotnetDeploy: "none" | "docker" | "azure" | "aws";
|
|
1394
|
+
dotnetLibraries: ("none" | "sentry" | "automapper" | "mediatr" | "fastendpoints" | "api-versioning" | "scalar" | "polly" | "masstransit" | "rebus" | "coravel" | "magic-onion" | "prometheus-net" | "seq" | "application-insights" | "mongodb-driver" | "nhibernate" | "mapster" | "scrutor" | "refit" | "fluent-email")[];
|
|
1158
1395
|
elixirWebFramework: "none" | "phoenix" | "phoenix-live-view";
|
|
1159
|
-
elixirOrm: "none" | "ecto" | "ecto-sql";
|
|
1160
|
-
elixirAuth: "none" | "phx-gen-auth" | "ueberauth" | "guardian";
|
|
1161
|
-
elixirApi: "none" | "grpc" | "rest" | "absinthe";
|
|
1396
|
+
elixirOrm: "none" | "ecto" | "ecto-sql" | "myxql" | "ecto_sqlite3";
|
|
1397
|
+
elixirAuth: "none" | "phx-gen-auth" | "ueberauth" | "guardian" | "pow";
|
|
1398
|
+
elixirApi: "none" | "grpc" | "rest" | "absinthe" | "open_api_spex";
|
|
1162
1399
|
elixirRealtime: "none" | "channels" | "presence" | "pubsub" | "live-view-streams";
|
|
1163
1400
|
elixirJobs: "none" | "oban" | "quantum";
|
|
1164
1401
|
elixirValidation: "none" | "ecto-changesets" | "nimble-options";
|
|
1165
|
-
elixirHttp: "none" | "req" | "finch";
|
|
1402
|
+
elixirHttp: "none" | "req" | "finch" | "tesla";
|
|
1166
1403
|
elixirJson: "none" | "jason";
|
|
1167
|
-
elixirEmail: "none" | "swoosh";
|
|
1168
|
-
elixirCaching: "none" | "cachex" | "nebulex";
|
|
1169
|
-
elixirObservability: "none" | "opentelemetry" | "telemetry" | "prom_ex";
|
|
1170
|
-
elixirTesting: "none" | "ex_unit" | "mox" | "bypass" | "wallaby";
|
|
1171
|
-
elixirQuality: "none" | "credo" | "dialyxir" | "sobelow";
|
|
1404
|
+
elixirEmail: "none" | "swoosh" | "bamboo";
|
|
1405
|
+
elixirCaching: "none" | "cachex" | "nebulex" | "redix";
|
|
1406
|
+
elixirObservability: "none" | "sentry" | "opentelemetry" | "telemetry" | "prom_ex";
|
|
1407
|
+
elixirTesting: "none" | "ex_unit" | "mox" | "bypass" | "wallaby" | "stream_data" | "ex_machina";
|
|
1408
|
+
elixirQuality: "none" | "credo" | "dialyxir" | "sobelow" | "excoveralls" | "mix_audit";
|
|
1409
|
+
elixirI18n: "none" | "gettext";
|
|
1410
|
+
elixirHttpServer: "none" | "bandit" | "cowboy";
|
|
1411
|
+
elixirApplicationFramework: "none" | "ash";
|
|
1412
|
+
elixirDocumentation: "none" | "ex_doc";
|
|
1413
|
+
elixirClustering: "none" | "libcluster";
|
|
1172
1414
|
elixirDeploy: "none" | "docker" | "fly" | "gigalixir" | "mix-release";
|
|
1173
|
-
elixirLibraries: ("none" | "nx" | "broadway")[];
|
|
1415
|
+
elixirLibraries: ("none" | "nx" | "broadway" | "ex_aws" | "floki" | "rustler")[];
|
|
1174
1416
|
aiDocs: ("none" | "claude-md" | "agents-md" | "cursorrules")[];
|
|
1175
1417
|
workspaceShape?: "monorepo" | "single-app" | undefined;
|
|
1176
|
-
astroIntegration?: "none" | "
|
|
1418
|
+
astroIntegration?: "none" | "vue" | "svelte" | "solid" | "react" | undefined;
|
|
1177
1419
|
shadcnBase?: "radix" | "base" | undefined;
|
|
1178
1420
|
shadcnStyle?: "vega" | "nova" | "maia" | "lyra" | "mira" | "luma" | "sera" | undefined;
|
|
1179
1421
|
shadcnIconLibrary?: "lucide" | "tabler" | "hugeicons" | "phosphor" | "remixicon" | "heroicons" | "react-icons" | undefined;
|
|
@@ -1184,7 +1426,7 @@ declare const router: {
|
|
|
1184
1426
|
javaLanguage?: "java" | "kotlin" | undefined;
|
|
1185
1427
|
stackParts?: {
|
|
1186
1428
|
id: string;
|
|
1187
|
-
role: "api" | "runtime" | "backend" | "database" | "orm" | "dbSetup" | "auth" | "payments" | "email" | "fileUpload" | "logging" | "observability" | "stateManagement" | "forms" | "validation" | "testing" | "realtime" | "jobQueue" | "caching" | "rateLimit" | "i18n" | "search" | "vectorDb" | "fileStorage" | "animation" | "cms" | "featureFlags" | "analytics" | "codeQuality" | "documentation" | "examples" | "ai" | "effect" | "config" | "frontend" | "
|
|
1429
|
+
role: "api" | "runtime" | "backend" | "database" | "orm" | "dbSetup" | "auth" | "payments" | "email" | "fileUpload" | "logging" | "observability" | "stateManagement" | "forms" | "validation" | "testing" | "realtime" | "jobQueue" | "caching" | "rateLimit" | "i18n" | "search" | "vectorDb" | "fileStorage" | "animation" | "cms" | "featureFlags" | "analytics" | "codeQuality" | "documentation" | "packageManager" | "examples" | "ai" | "effect" | "config" | "frontend" | "mobile" | "graphql" | "deploy" | "migrations" | "navigation" | "ui" | "css" | "storage" | "push" | "ota" | "deepLinking" | "appPlatform" | "dataFetching" | "workspaceTooling" | "language" | "buildTool" | "cli" | "errorHandling" | "httpClient" | "libraries" | "templating" | "cloudSdk" | "data" | "media" | "server" | "messageQueue";
|
|
1188
1430
|
toolId: string;
|
|
1189
1431
|
ecosystem: "typescript" | "react-native" | "rust" | "python" | "go" | "java" | "elixir" | "dotnet" | "universal";
|
|
1190
1432
|
source: "selected" | "defaulted" | "provided" | "legacy" | "adjusted";
|
|
@@ -1216,11 +1458,11 @@ declare const router: {
|
|
|
1216
1458
|
orm: "none" | "drizzle" | "prisma" | "mongoose" | "typeorm" | "kysely" | "mikroorm" | "sequelize";
|
|
1217
1459
|
backend: "effect" | "none" | "hono" | "express" | "fastify" | "elysia" | "fets" | "nestjs" | "adonisjs" | "nitro" | "encore" | "convex" | "self";
|
|
1218
1460
|
runtime: "none" | "bun" | "node" | "workers";
|
|
1219
|
-
frontend: ("none" | "tanstack-router" | "react-router" | "react-vite" | "tanstack-start" | "next" | "vinext" | "nuxt" | "native-bare" | "native-uniwind" | "native-unistyles" | "svelte" | "solid" | "solid-start" | "astro" | "qwik" | "angular" | "redwood" | "fresh")[];
|
|
1220
|
-
addons: ("none" | "pwa" | "tauri" | "starlight" | "biome" | "lefthook" | "husky" | "ruler" | "mcp" | "skills" | "turborepo" | "nx" | "fumadocs" | "ultracite" | "oxlint" | "opentui" | "wxt" | "msw" | "storybook" | "swr" | "tanstack-query" | "tanstack-table" | "tanstack-virtual" | "tanstack-db" | "tanstack-pacer" | "backend-utils" | "devcontainer" | "docker-compose" | "github-actions")[];
|
|
1461
|
+
frontend: ("none" | "tanstack-router" | "react-router" | "react-vite" | "vanilla-vite" | "vue" | "tanstack-start" | "next" | "vinext" | "nuxt" | "native-bare" | "native-uniwind" | "native-unistyles" | "svelte" | "solid" | "solid-start" | "astro" | "qwik" | "angular" | "redwood" | "fresh")[];
|
|
1462
|
+
addons: ("none" | "pwa" | "tauri" | "starlight" | "biome" | "lefthook" | "husky" | "ruler" | "mcp" | "skills" | "turborepo" | "nx" | "fumadocs" | "ultracite" | "oxlint" | "opentui" | "wxt" | "msw" | "storybook" | "swr" | "tanstack-query" | "tanstack-table" | "tanstack-virtual" | "tanstack-db" | "tanstack-pacer" | "backend-utils" | "devcontainer" | "docker-compose" | "github-actions" | "eslint" | "prettier" | "axios" | "firebase" | "graphql-codegen" | "openapi-typescript" | "apollo-client" | "electron" | "capacitor")[];
|
|
1221
1463
|
examples: ("ai" | "none" | "chat-sdk" | "tanstack-showcase")[];
|
|
1222
|
-
auth: "none" | "better-auth" | "better-auth-organizations" | "go-better-auth" | "clerk" | "nextauth" | "stack-auth" | "supabase-auth" | "auth0" | "workos" | "kinde";
|
|
1223
|
-
payments: "none" | "revenuecat" | "polar" | "stripe" | "lemon-squeezy" | "paddle" | "dodo" | "creem" | "autumn" | "commet";
|
|
1464
|
+
auth: "none" | "better-auth" | "better-auth-organizations" | "go-better-auth" | "clerk" | "nextauth" | "stack-auth" | "supabase-auth" | "auth0" | "workos" | "kinde" | "passport";
|
|
1465
|
+
payments: "none" | "revenuecat" | "polar" | "stripe" | "lemon-squeezy" | "paddle" | "paypal" | "dodo" | "creem" | "autumn" | "commet";
|
|
1224
1466
|
git: boolean;
|
|
1225
1467
|
packageManager: "bun" | "npm" | "pnpm" | "yarn";
|
|
1226
1468
|
versionChannel: "stable" | "latest" | "beta";
|
|
@@ -1229,24 +1471,24 @@ declare const router: {
|
|
|
1229
1471
|
api: "none" | "trpc" | "orpc" | "ts-rest" | "garph" | "graphql-yoga" | "apollo-server" | "openapi";
|
|
1230
1472
|
webDeploy: "none" | "docker" | "cloudflare" | "fly" | "railway" | "render" | "netlify" | "sst" | "vercel";
|
|
1231
1473
|
serverDeploy: "none" | "docker" | "cloudflare" | "fly" | "railway" | "render" | "netlify" | "sst" | "vercel";
|
|
1232
|
-
ai: "none" | "langgraph" | "google-adk" | "langchain" | "llamaindex" | "vercel-ai" | "mastra" | "voltagent" | "openai-agents" | "modelfusion" | "tanstack-ai" | "ai-cli";
|
|
1474
|
+
ai: "none" | "langgraph" | "openai-sdk" | "anthropic-sdk" | "google-adk" | "langchain" | "llamaindex" | "vercel-ai" | "mastra" | "voltagent" | "openai-agents" | "modelfusion" | "tanstack-ai" | "ai-cli";
|
|
1233
1475
|
effect: "effect" | "none" | "effect-full";
|
|
1234
1476
|
stateManagement: "none" | "zustand" | "jotai" | "nanostores" | "redux-toolkit" | "mobx" | "xstate" | "valtio" | "tanstack-store" | "legend-state";
|
|
1235
1477
|
forms: "none" | "tanstack-form" | "react-hook-form" | "formik" | "final-form" | "conform" | "modular-forms";
|
|
1236
|
-
testing: "none" | "vitest" | "playwright" | "vitest-playwright" | "jest" | "cypress";
|
|
1478
|
+
testing: "none" | "vitest" | "playwright" | "vitest-playwright" | "jest" | "mocha" | "cypress";
|
|
1237
1479
|
email: "none" | "react-email" | "resend" | "nodemailer" | "postmark" | "sendgrid" | "aws-ses" | "mailgun" | "plunk";
|
|
1238
|
-
cssFramework: "none" | "tailwind" | "scss" | "less" | "postcss-only";
|
|
1480
|
+
cssFramework: "none" | "tailwind" | "scss" | "less" | "postcss-only" | "styled-components";
|
|
1239
1481
|
uiLibrary: "none" | "shadcn-ui" | "shadcn-svelte" | "daisyui" | "radix-ui" | "headless-ui" | "park-ui" | "chakra-ui" | "nextui" | "mantine" | "mui" | "antd" | "base-ui" | "ark-ui" | "react-aria";
|
|
1240
1482
|
validation: "none" | "zod" | "valibot" | "arktype" | "typebox" | "typia" | "runtypes" | "effect-schema";
|
|
1241
|
-
realtime: "none" | "socket-io" | "partykit" | "ably" | "pusher" | "liveblocks" | "yjs";
|
|
1483
|
+
realtime: "none" | "socket-io" | "ws" | "partykit" | "ably" | "pusher" | "liveblocks" | "yjs";
|
|
1242
1484
|
jobQueue: "none" | "bullmq" | "trigger-dev" | "inngest" | "temporal";
|
|
1243
1485
|
animation: "none" | "framer-motion" | "gsap" | "react-spring" | "auto-animate" | "lottie";
|
|
1244
1486
|
fileUpload: "none" | "uploadthing" | "filepond" | "uppy";
|
|
1245
1487
|
logging: "none" | "pino" | "winston" | "evlog";
|
|
1246
|
-
observability: "none" | "
|
|
1488
|
+
observability: "none" | "sentry" | "opentelemetry" | "grafana" | "datadog" | "axiom" | "betterstack";
|
|
1247
1489
|
featureFlags: "none" | "growthbook" | "posthog" | "launchdarkly" | "flagsmith" | "unleash";
|
|
1248
|
-
analytics: "none" | "posthog" | "plausible" | "umami";
|
|
1249
|
-
cms: "none" | "payload" | "sanity" | "strapi" | "tinacms" | "directus" | "keystatic";
|
|
1490
|
+
analytics: "none" | "posthog" | "plausible" | "umami" | "ga4";
|
|
1491
|
+
cms: "none" | "payload" | "sanity" | "strapi" | "tinacms" | "directus" | "keystatic" | "contentful";
|
|
1250
1492
|
caching: "none" | "redis" | "upstash-redis";
|
|
1251
1493
|
rateLimit: "none" | "arcjet" | "upstash-ratelimit";
|
|
1252
1494
|
i18n: "none" | "paraglide" | "i18next" | "next-intl" | "intlayer";
|
|
@@ -1260,54 +1502,68 @@ declare const router: {
|
|
|
1260
1502
|
mobilePush: "none" | "expo-notifications";
|
|
1261
1503
|
mobileOTA: "none" | "expo-updates";
|
|
1262
1504
|
mobileDeepLinking: "none" | "expo-linking";
|
|
1263
|
-
|
|
1264
|
-
|
|
1265
|
-
|
|
1266
|
-
|
|
1505
|
+
mobileLibraries: ("none" | "expo-sqlite" | "expo-camera" | "expo-image-picker" | "expo-location" | "expo-sensors" | "expo-file-system" | "expo-image" | "expo-audio" | "expo-video" | "expo-contacts" | "expo-calendar" | "expo-local-authentication" | "expo-sharing" | "expo-clipboard" | "expo-task-manager" | "expo-background-task" | "expo-maps" | "expo-brightness" | "expo-battery" | "expo-screen-capture")[];
|
|
1506
|
+
rustWebFramework: "none" | "axum" | "actix-web" | "rocket" | "poem" | "loco" | "warp" | "salvo";
|
|
1507
|
+
rustFrontend: "none" | "leptos" | "dioxus" | "yew";
|
|
1508
|
+
rustOrm: "none" | "mongodb" | "sea-orm" | "sqlx" | "diesel" | "rusqlite" | "tokio-postgres";
|
|
1509
|
+
rustApi: "none" | "tonic" | "async-graphql" | "jsonrpsee";
|
|
1267
1510
|
rustCli: "none" | "clap" | "ratatui";
|
|
1268
|
-
rustLibraries: ("config" | "none" | "serde" | "uuid" | "chrono" | "reqwest" | "dashmap" | "parking-lot" | "secrecy" | "tokio-util" | "utoipa" | "validator" | "jsonwebtoken" | "argon2" | "tokio-test" | "mockall" | "proptest" | "insta")[];
|
|
1511
|
+
rustLibraries: ("config" | "none" | "serde" | "uuid" | "chrono" | "reqwest" | "dashmap" | "parking-lot" | "secrecy" | "tokio-util" | "utoipa" | "validator" | "jsonwebtoken" | "argon2" | "tokio-test" | "mockall" | "proptest" | "insta" | "rand" | "regex" | "rayon" | "itertools" | "rstest" | "cargo-nextest" | "cargo-audit")[];
|
|
1269
1512
|
rustLogging: "none" | "tracing" | "env-logger";
|
|
1270
1513
|
rustErrorHandling: "none" | "anyhow-thiserror" | "eyre";
|
|
1271
1514
|
rustCaching: "none" | "redis" | "moka";
|
|
1272
|
-
rustAuth: "none" | "oauth2" | "torii";
|
|
1515
|
+
rustAuth: "none" | "oauth2" | "torii" | "openidconnect" | "tower-sessions";
|
|
1273
1516
|
rustRealtime: "none" | "tokio-tungstenite";
|
|
1274
|
-
rustMessageQueue: "none" | "lapin";
|
|
1275
|
-
rustObservability: "none" | "opentelemetry";
|
|
1276
|
-
rustTemplating: "none" | "askama" | "tera";
|
|
1277
|
-
pythonWebFramework: "none" | "fastapi" | "django" | "flask" | "litestar" | "starlette";
|
|
1278
|
-
pythonOrm: "none" | "sqlalchemy" | "sqlmodel" | "tortoise-orm" | "peewee";
|
|
1517
|
+
rustMessageQueue: "none" | "lapin" | "rdkafka" | "async-nats";
|
|
1518
|
+
rustObservability: "none" | "opentelemetry" | "metrics";
|
|
1519
|
+
rustTemplating: "none" | "askama" | "tera" | "minijinja";
|
|
1520
|
+
pythonWebFramework: "none" | "fastapi" | "django" | "flask" | "litestar" | "starlette" | "aiohttp" | "streamlit";
|
|
1521
|
+
pythonOrm: "none" | "sqlalchemy" | "sqlmodel" | "tortoise-orm" | "peewee" | "pymongo";
|
|
1279
1522
|
pythonValidation: "none" | "pydantic";
|
|
1280
|
-
pythonAi: ("none" | "langgraph" | "
|
|
1281
|
-
pythonAuth: "none" | "authlib" | "jwt" | "fastapi-users";
|
|
1523
|
+
pythonAi: ("none" | "mcp" | "langgraph" | "openai-sdk" | "anthropic-sdk" | "google-adk" | "langchain" | "llamaindex" | "crewai" | "haystack" | "pydantic-ai" | "smolagents" | "pytorch" | "transformers" | "scikit-learn" | "tensorflow")[];
|
|
1524
|
+
pythonAuth: "none" | "authlib" | "jwt" | "pyjwt" | "fastapi-users";
|
|
1282
1525
|
pythonApi: "none" | "django-rest-framework" | "django-ninja";
|
|
1283
1526
|
pythonTaskQueue: "none" | "celery" | "rq" | "dramatiq" | "huey" | "taskiq";
|
|
1284
1527
|
pythonGraphql: "none" | "strawberry" | "ariadne";
|
|
1285
1528
|
pythonQuality: "none" | "ruff" | "mypy" | "pyright";
|
|
1286
|
-
pythonTesting: ("none" | "pytest" | "hypothesis")[];
|
|
1529
|
+
pythonTesting: ("none" | "pytest" | "hypothesis" | "pytest-cov")[];
|
|
1287
1530
|
pythonCaching: "none" | "redis" | "aiocache";
|
|
1288
1531
|
pythonRealtime: "none" | "python-socketio" | "websockets";
|
|
1289
|
-
pythonObservability: "none" | "opentelemetry";
|
|
1532
|
+
pythonObservability: "none" | "opentelemetry" | "prometheus-client";
|
|
1290
1533
|
pythonCli: ("none" | "typer" | "click" | "rich")[];
|
|
1291
|
-
|
|
1292
|
-
|
|
1293
|
-
|
|
1534
|
+
pythonCloudSdk: "none" | "boto3";
|
|
1535
|
+
pythonHttpClient: "none" | "requests";
|
|
1536
|
+
pythonData: ("none" | "numpy" | "pandas" | "scipy")[];
|
|
1537
|
+
pythonMedia: "none" | "pillow";
|
|
1538
|
+
pythonServer: "none" | "gunicorn";
|
|
1539
|
+
pythonPackageManager: "none" | "uv" | "poetry";
|
|
1540
|
+
pythonMessageQueue: "none" | "confluent-kafka";
|
|
1541
|
+
goWebFramework: "none" | "gin" | "echo" | "fiber" | "chi" | "stdlib" | "go-zero" | "kratos" | "httprouter";
|
|
1542
|
+
goOrm: "none" | "bun" | "sqlx" | "gorm" | "sqlc" | "ent";
|
|
1543
|
+
goApi: "none" | "grpc-go" | "gqlgen" | "grpc-gateway" | "connect-go" | "oapi-codegen";
|
|
1294
1544
|
goCli: "none" | "cobra" | "bubbletea" | "urfave-cli";
|
|
1295
1545
|
goLogging: "none" | "zap" | "zerolog" | "slog" | "logrus";
|
|
1296
|
-
goAuth: "none" | "jwt" | "casbin" | "goth";
|
|
1297
|
-
goTesting: ("none" | "testify" | "gomock")[];
|
|
1546
|
+
goAuth: "none" | "oauth2" | "jwt" | "casbin" | "goth";
|
|
1547
|
+
goTesting: ("none" | "testify" | "gomock" | "testcontainers" | "ginkgo-gomega" | "mockery")[];
|
|
1298
1548
|
goRealtime: "none" | "gorilla-websocket" | "centrifuge";
|
|
1299
|
-
goMessageQueue: "none" | "nats" | "watermill";
|
|
1549
|
+
goMessageQueue: "none" | "nats" | "watermill" | "kafka-go" | "asynq";
|
|
1300
1550
|
goCaching: "none" | "redis" | "ristretto";
|
|
1301
1551
|
goConfig: "none" | "viper" | "koanf";
|
|
1302
|
-
goObservability: "none" | "opentelemetry";
|
|
1552
|
+
goObservability: "none" | "opentelemetry" | "prometheus";
|
|
1553
|
+
goValidation: "none" | "validator";
|
|
1554
|
+
goQuality: "none" | "golangci-lint";
|
|
1555
|
+
goMigrations: "none" | "golang-migrate";
|
|
1556
|
+
goTemplating: "none" | "templ";
|
|
1557
|
+
goProtoTooling: "none" | "buf";
|
|
1558
|
+
goDI: "none" | "fx";
|
|
1303
1559
|
javaWebFramework: "none" | "spring-boot" | "quarkus" | "micronaut";
|
|
1304
1560
|
javaBuildTool: "none" | "maven" | "gradle";
|
|
1305
1561
|
javaOrm: "none" | "spring-data-jpa" | "jooq" | "mybatis";
|
|
1306
1562
|
javaAuth: "none" | "spring-security" | "keycloak";
|
|
1307
1563
|
javaApi: "none" | "spring-graphql" | "openapi-generator" | "grpc";
|
|
1308
1564
|
javaLogging: "none" | "logback" | "log4j2";
|
|
1309
|
-
javaLibraries: ("none" | "spring-actuator" | "spring-validation" | "flyway" | "liquibase" | "springdoc-openapi" | "lombok" | "mapstruct" | "caffeine" | "resilience4j" | "spring-webflux" | "spring-batch" | "spring-kafka" | "spring-mail" | "spring-devtools" | "micrometer-prometheus" | "thymeleaf" | "spring-amqp" | "opentelemetry-java")[];
|
|
1310
|
-
javaTestingLibraries: ("none" | "
|
|
1565
|
+
javaLibraries: ("none" | "spring-actuator" | "spring-validation" | "flyway" | "liquibase" | "springdoc-openapi" | "lombok" | "mapstruct" | "caffeine" | "resilience4j" | "spring-webflux" | "spring-batch" | "spring-kafka" | "spring-mail" | "spring-devtools" | "micrometer-prometheus" | "thymeleaf" | "spring-amqp" | "opentelemetry-java" | "spring-data-redis" | "spring-data-mongodb" | "spring-data-elasticsearch" | "spring-data-neo4j" | "spring-data-cassandra" | "spring-data-couchbase" | "spring-data-jdbc" | "spring-data-rest" | "spring-quartz" | "spring-pulsar" | "spring-integration" | "spring-websocket" | "spring-rsocket" | "spring-hateoas" | "spring-session-redis" | "spring-session-jdbc" | "spring-ldap" | "spring-oauth2-client" | "spring-saml2" | "spring-restclient")[];
|
|
1566
|
+
javaTestingLibraries: ("none" | "testcontainers" | "junit5" | "mockito" | "assertj" | "rest-assured" | "wiremock" | "awaitility" | "archunit" | "jqwik")[];
|
|
1311
1567
|
dotnetWebFramework: "none" | "aspnet-minimal" | "aspnet-mvc" | "aspnet-blazor";
|
|
1312
1568
|
dotnetOrm: "none" | "ef-core" | "dapper" | "linq2db";
|
|
1313
1569
|
dotnetAuth: "none" | "aspnet-identity" | "duende-identityserver" | "auth0-aspnet";
|
|
@@ -1319,25 +1575,31 @@ declare const router: {
|
|
|
1319
1575
|
dotnetValidation: "none" | "fluentvalidation" | "data-annotations";
|
|
1320
1576
|
dotnetCaching: "none" | "redis" | "memory-cache";
|
|
1321
1577
|
dotnetDeploy: "none" | "docker" | "azure" | "aws";
|
|
1578
|
+
dotnetLibraries: ("none" | "sentry" | "automapper" | "mediatr" | "fastendpoints" | "api-versioning" | "scalar" | "polly" | "masstransit" | "rebus" | "coravel" | "magic-onion" | "prometheus-net" | "seq" | "application-insights" | "mongodb-driver" | "nhibernate" | "mapster" | "scrutor" | "refit" | "fluent-email")[];
|
|
1322
1579
|
elixirWebFramework: "none" | "phoenix" | "phoenix-live-view";
|
|
1323
|
-
elixirOrm: "none" | "ecto" | "ecto-sql";
|
|
1324
|
-
elixirAuth: "none" | "phx-gen-auth" | "ueberauth" | "guardian";
|
|
1325
|
-
elixirApi: "none" | "grpc" | "rest" | "absinthe";
|
|
1580
|
+
elixirOrm: "none" | "ecto" | "ecto-sql" | "myxql" | "ecto_sqlite3";
|
|
1581
|
+
elixirAuth: "none" | "phx-gen-auth" | "ueberauth" | "guardian" | "pow";
|
|
1582
|
+
elixirApi: "none" | "grpc" | "rest" | "absinthe" | "open_api_spex";
|
|
1326
1583
|
elixirRealtime: "none" | "channels" | "presence" | "pubsub" | "live-view-streams";
|
|
1327
1584
|
elixirJobs: "none" | "oban" | "quantum";
|
|
1328
1585
|
elixirValidation: "none" | "ecto-changesets" | "nimble-options";
|
|
1329
|
-
elixirHttp: "none" | "req" | "finch";
|
|
1586
|
+
elixirHttp: "none" | "req" | "finch" | "tesla";
|
|
1330
1587
|
elixirJson: "none" | "jason";
|
|
1331
|
-
elixirEmail: "none" | "swoosh";
|
|
1332
|
-
elixirCaching: "none" | "cachex" | "nebulex";
|
|
1333
|
-
elixirObservability: "none" | "opentelemetry" | "telemetry" | "prom_ex";
|
|
1334
|
-
elixirTesting: "none" | "ex_unit" | "mox" | "bypass" | "wallaby";
|
|
1335
|
-
elixirQuality: "none" | "credo" | "dialyxir" | "sobelow";
|
|
1588
|
+
elixirEmail: "none" | "swoosh" | "bamboo";
|
|
1589
|
+
elixirCaching: "none" | "cachex" | "nebulex" | "redix";
|
|
1590
|
+
elixirObservability: "none" | "sentry" | "opentelemetry" | "telemetry" | "prom_ex";
|
|
1591
|
+
elixirTesting: "none" | "ex_unit" | "mox" | "bypass" | "wallaby" | "stream_data" | "ex_machina";
|
|
1592
|
+
elixirQuality: "none" | "credo" | "dialyxir" | "sobelow" | "excoveralls" | "mix_audit";
|
|
1593
|
+
elixirI18n: "none" | "gettext";
|
|
1594
|
+
elixirHttpServer: "none" | "bandit" | "cowboy";
|
|
1595
|
+
elixirApplicationFramework: "none" | "ash";
|
|
1596
|
+
elixirDocumentation: "none" | "ex_doc";
|
|
1597
|
+
elixirClustering: "none" | "libcluster";
|
|
1336
1598
|
elixirDeploy: "none" | "docker" | "fly" | "gigalixir" | "mix-release";
|
|
1337
|
-
elixirLibraries: ("none" | "nx" | "broadway")[];
|
|
1599
|
+
elixirLibraries: ("none" | "nx" | "broadway" | "ex_aws" | "floki" | "rustler")[];
|
|
1338
1600
|
aiDocs: ("none" | "claude-md" | "agents-md" | "cursorrules")[];
|
|
1339
1601
|
workspaceShape?: "monorepo" | "single-app" | undefined;
|
|
1340
|
-
astroIntegration?: "none" | "
|
|
1602
|
+
astroIntegration?: "none" | "vue" | "svelte" | "solid" | "react" | undefined;
|
|
1341
1603
|
shadcnBase?: "radix" | "base" | undefined;
|
|
1342
1604
|
shadcnStyle?: "vega" | "nova" | "maia" | "lyra" | "mira" | "luma" | "sera" | undefined;
|
|
1343
1605
|
shadcnIconLibrary?: "lucide" | "tabler" | "hugeicons" | "phosphor" | "remixicon" | "heroicons" | "react-icons" | undefined;
|
|
@@ -1348,7 +1610,7 @@ declare const router: {
|
|
|
1348
1610
|
javaLanguage?: "java" | "kotlin" | undefined;
|
|
1349
1611
|
stackParts?: {
|
|
1350
1612
|
id: string;
|
|
1351
|
-
role: "api" | "runtime" | "backend" | "database" | "orm" | "dbSetup" | "auth" | "payments" | "email" | "fileUpload" | "logging" | "observability" | "stateManagement" | "forms" | "validation" | "testing" | "realtime" | "jobQueue" | "caching" | "rateLimit" | "i18n" | "search" | "vectorDb" | "fileStorage" | "animation" | "cms" | "featureFlags" | "analytics" | "codeQuality" | "documentation" | "examples" | "ai" | "effect" | "config" | "frontend" | "
|
|
1613
|
+
role: "api" | "runtime" | "backend" | "database" | "orm" | "dbSetup" | "auth" | "payments" | "email" | "fileUpload" | "logging" | "observability" | "stateManagement" | "forms" | "validation" | "testing" | "realtime" | "jobQueue" | "caching" | "rateLimit" | "i18n" | "search" | "vectorDb" | "fileStorage" | "animation" | "cms" | "featureFlags" | "analytics" | "codeQuality" | "documentation" | "packageManager" | "examples" | "ai" | "effect" | "config" | "frontend" | "mobile" | "graphql" | "deploy" | "migrations" | "navigation" | "ui" | "css" | "storage" | "push" | "ota" | "deepLinking" | "appPlatform" | "dataFetching" | "workspaceTooling" | "language" | "buildTool" | "cli" | "errorHandling" | "httpClient" | "libraries" | "templating" | "cloudSdk" | "data" | "media" | "server" | "messageQueue";
|
|
1352
1614
|
toolId: string;
|
|
1353
1615
|
ecosystem: "typescript" | "react-native" | "rust" | "python" | "go" | "java" | "elixir" | "dotnet" | "universal";
|
|
1354
1616
|
source: "selected" | "defaulted" | "provided" | "legacy" | "adjusted";
|
|
@@ -1394,11 +1656,11 @@ declare const router: {
|
|
|
1394
1656
|
orm: "none" | "drizzle" | "prisma" | "mongoose" | "typeorm" | "kysely" | "mikroorm" | "sequelize";
|
|
1395
1657
|
backend: "effect" | "none" | "hono" | "express" | "fastify" | "elysia" | "fets" | "nestjs" | "adonisjs" | "nitro" | "encore" | "convex" | "self";
|
|
1396
1658
|
runtime: "none" | "bun" | "node" | "workers";
|
|
1397
|
-
frontend: ("none" | "tanstack-router" | "react-router" | "react-vite" | "tanstack-start" | "next" | "vinext" | "nuxt" | "native-bare" | "native-uniwind" | "native-unistyles" | "svelte" | "solid" | "solid-start" | "astro" | "qwik" | "angular" | "redwood" | "fresh")[];
|
|
1398
|
-
addons: ("none" | "pwa" | "tauri" | "starlight" | "biome" | "lefthook" | "husky" | "ruler" | "mcp" | "skills" | "turborepo" | "nx" | "fumadocs" | "ultracite" | "oxlint" | "opentui" | "wxt" | "msw" | "storybook" | "swr" | "tanstack-query" | "tanstack-table" | "tanstack-virtual" | "tanstack-db" | "tanstack-pacer" | "backend-utils" | "devcontainer" | "docker-compose" | "github-actions")[];
|
|
1659
|
+
frontend: ("none" | "tanstack-router" | "react-router" | "react-vite" | "vanilla-vite" | "vue" | "tanstack-start" | "next" | "vinext" | "nuxt" | "native-bare" | "native-uniwind" | "native-unistyles" | "svelte" | "solid" | "solid-start" | "astro" | "qwik" | "angular" | "redwood" | "fresh")[];
|
|
1660
|
+
addons: ("none" | "pwa" | "tauri" | "starlight" | "biome" | "lefthook" | "husky" | "ruler" | "mcp" | "skills" | "turborepo" | "nx" | "fumadocs" | "ultracite" | "oxlint" | "opentui" | "wxt" | "msw" | "storybook" | "swr" | "tanstack-query" | "tanstack-table" | "tanstack-virtual" | "tanstack-db" | "tanstack-pacer" | "backend-utils" | "devcontainer" | "docker-compose" | "github-actions" | "eslint" | "prettier" | "axios" | "firebase" | "graphql-codegen" | "openapi-typescript" | "apollo-client" | "electron" | "capacitor")[];
|
|
1399
1661
|
examples: ("ai" | "none" | "chat-sdk" | "tanstack-showcase")[];
|
|
1400
|
-
auth: "none" | "better-auth" | "better-auth-organizations" | "go-better-auth" | "clerk" | "nextauth" | "stack-auth" | "supabase-auth" | "auth0" | "workos" | "kinde";
|
|
1401
|
-
payments: "none" | "revenuecat" | "polar" | "stripe" | "lemon-squeezy" | "paddle" | "dodo" | "creem" | "autumn" | "commet";
|
|
1662
|
+
auth: "none" | "better-auth" | "better-auth-organizations" | "go-better-auth" | "clerk" | "nextauth" | "stack-auth" | "supabase-auth" | "auth0" | "workos" | "kinde" | "passport";
|
|
1663
|
+
payments: "none" | "revenuecat" | "polar" | "stripe" | "lemon-squeezy" | "paddle" | "paypal" | "dodo" | "creem" | "autumn" | "commet";
|
|
1402
1664
|
git: boolean;
|
|
1403
1665
|
packageManager: "bun" | "npm" | "pnpm" | "yarn";
|
|
1404
1666
|
versionChannel: "stable" | "latest" | "beta";
|
|
@@ -1407,24 +1669,24 @@ declare const router: {
|
|
|
1407
1669
|
api: "none" | "trpc" | "orpc" | "ts-rest" | "garph" | "graphql-yoga" | "apollo-server" | "openapi";
|
|
1408
1670
|
webDeploy: "none" | "docker" | "cloudflare" | "fly" | "railway" | "render" | "netlify" | "sst" | "vercel";
|
|
1409
1671
|
serverDeploy: "none" | "docker" | "cloudflare" | "fly" | "railway" | "render" | "netlify" | "sst" | "vercel";
|
|
1410
|
-
ai: "none" | "langgraph" | "google-adk" | "langchain" | "llamaindex" | "vercel-ai" | "mastra" | "voltagent" | "openai-agents" | "modelfusion" | "tanstack-ai" | "ai-cli";
|
|
1672
|
+
ai: "none" | "langgraph" | "openai-sdk" | "anthropic-sdk" | "google-adk" | "langchain" | "llamaindex" | "vercel-ai" | "mastra" | "voltagent" | "openai-agents" | "modelfusion" | "tanstack-ai" | "ai-cli";
|
|
1411
1673
|
effect: "effect" | "none" | "effect-full";
|
|
1412
1674
|
stateManagement: "none" | "zustand" | "jotai" | "nanostores" | "redux-toolkit" | "mobx" | "xstate" | "valtio" | "tanstack-store" | "legend-state";
|
|
1413
1675
|
forms: "none" | "tanstack-form" | "react-hook-form" | "formik" | "final-form" | "conform" | "modular-forms";
|
|
1414
|
-
testing: "none" | "vitest" | "playwright" | "vitest-playwright" | "jest" | "cypress";
|
|
1676
|
+
testing: "none" | "vitest" | "playwright" | "vitest-playwright" | "jest" | "mocha" | "cypress";
|
|
1415
1677
|
email: "none" | "react-email" | "resend" | "nodemailer" | "postmark" | "sendgrid" | "aws-ses" | "mailgun" | "plunk";
|
|
1416
|
-
cssFramework: "none" | "tailwind" | "scss" | "less" | "postcss-only";
|
|
1678
|
+
cssFramework: "none" | "tailwind" | "scss" | "less" | "postcss-only" | "styled-components";
|
|
1417
1679
|
uiLibrary: "none" | "shadcn-ui" | "shadcn-svelte" | "daisyui" | "radix-ui" | "headless-ui" | "park-ui" | "chakra-ui" | "nextui" | "mantine" | "mui" | "antd" | "base-ui" | "ark-ui" | "react-aria";
|
|
1418
1680
|
validation: "none" | "zod" | "valibot" | "arktype" | "typebox" | "typia" | "runtypes" | "effect-schema";
|
|
1419
|
-
realtime: "none" | "socket-io" | "partykit" | "ably" | "pusher" | "liveblocks" | "yjs";
|
|
1681
|
+
realtime: "none" | "socket-io" | "ws" | "partykit" | "ably" | "pusher" | "liveblocks" | "yjs";
|
|
1420
1682
|
jobQueue: "none" | "bullmq" | "trigger-dev" | "inngest" | "temporal";
|
|
1421
1683
|
animation: "none" | "framer-motion" | "gsap" | "react-spring" | "auto-animate" | "lottie";
|
|
1422
1684
|
fileUpload: "none" | "uploadthing" | "filepond" | "uppy";
|
|
1423
1685
|
logging: "none" | "pino" | "winston" | "evlog";
|
|
1424
|
-
observability: "none" | "
|
|
1686
|
+
observability: "none" | "sentry" | "opentelemetry" | "grafana" | "datadog" | "axiom" | "betterstack";
|
|
1425
1687
|
featureFlags: "none" | "growthbook" | "posthog" | "launchdarkly" | "flagsmith" | "unleash";
|
|
1426
|
-
analytics: "none" | "posthog" | "plausible" | "umami";
|
|
1427
|
-
cms: "none" | "payload" | "sanity" | "strapi" | "tinacms" | "directus" | "keystatic";
|
|
1688
|
+
analytics: "none" | "posthog" | "plausible" | "umami" | "ga4";
|
|
1689
|
+
cms: "none" | "payload" | "sanity" | "strapi" | "tinacms" | "directus" | "keystatic" | "contentful";
|
|
1428
1690
|
caching: "none" | "redis" | "upstash-redis";
|
|
1429
1691
|
rateLimit: "none" | "arcjet" | "upstash-ratelimit";
|
|
1430
1692
|
i18n: "none" | "paraglide" | "i18next" | "next-intl" | "intlayer";
|
|
@@ -1438,54 +1700,68 @@ declare const router: {
|
|
|
1438
1700
|
mobilePush: "none" | "expo-notifications";
|
|
1439
1701
|
mobileOTA: "none" | "expo-updates";
|
|
1440
1702
|
mobileDeepLinking: "none" | "expo-linking";
|
|
1441
|
-
|
|
1442
|
-
|
|
1443
|
-
|
|
1444
|
-
|
|
1703
|
+
mobileLibraries: ("none" | "expo-sqlite" | "expo-camera" | "expo-image-picker" | "expo-location" | "expo-sensors" | "expo-file-system" | "expo-image" | "expo-audio" | "expo-video" | "expo-contacts" | "expo-calendar" | "expo-local-authentication" | "expo-sharing" | "expo-clipboard" | "expo-task-manager" | "expo-background-task" | "expo-maps" | "expo-brightness" | "expo-battery" | "expo-screen-capture")[];
|
|
1704
|
+
rustWebFramework: "none" | "axum" | "actix-web" | "rocket" | "poem" | "loco" | "warp" | "salvo";
|
|
1705
|
+
rustFrontend: "none" | "leptos" | "dioxus" | "yew";
|
|
1706
|
+
rustOrm: "none" | "mongodb" | "sea-orm" | "sqlx" | "diesel" | "rusqlite" | "tokio-postgres";
|
|
1707
|
+
rustApi: "none" | "tonic" | "async-graphql" | "jsonrpsee";
|
|
1445
1708
|
rustCli: "none" | "clap" | "ratatui";
|
|
1446
|
-
rustLibraries: ("config" | "none" | "serde" | "uuid" | "chrono" | "reqwest" | "dashmap" | "parking-lot" | "secrecy" | "tokio-util" | "utoipa" | "validator" | "jsonwebtoken" | "argon2" | "tokio-test" | "mockall" | "proptest" | "insta")[];
|
|
1709
|
+
rustLibraries: ("config" | "none" | "serde" | "uuid" | "chrono" | "reqwest" | "dashmap" | "parking-lot" | "secrecy" | "tokio-util" | "utoipa" | "validator" | "jsonwebtoken" | "argon2" | "tokio-test" | "mockall" | "proptest" | "insta" | "rand" | "regex" | "rayon" | "itertools" | "rstest" | "cargo-nextest" | "cargo-audit")[];
|
|
1447
1710
|
rustLogging: "none" | "tracing" | "env-logger";
|
|
1448
1711
|
rustErrorHandling: "none" | "anyhow-thiserror" | "eyre";
|
|
1449
1712
|
rustCaching: "none" | "redis" | "moka";
|
|
1450
|
-
rustAuth: "none" | "oauth2" | "torii";
|
|
1713
|
+
rustAuth: "none" | "oauth2" | "torii" | "openidconnect" | "tower-sessions";
|
|
1451
1714
|
rustRealtime: "none" | "tokio-tungstenite";
|
|
1452
|
-
rustMessageQueue: "none" | "lapin";
|
|
1453
|
-
rustObservability: "none" | "opentelemetry";
|
|
1454
|
-
rustTemplating: "none" | "askama" | "tera";
|
|
1455
|
-
pythonWebFramework: "none" | "fastapi" | "django" | "flask" | "litestar" | "starlette";
|
|
1456
|
-
pythonOrm: "none" | "sqlalchemy" | "sqlmodel" | "tortoise-orm" | "peewee";
|
|
1715
|
+
rustMessageQueue: "none" | "lapin" | "rdkafka" | "async-nats";
|
|
1716
|
+
rustObservability: "none" | "opentelemetry" | "metrics";
|
|
1717
|
+
rustTemplating: "none" | "askama" | "tera" | "minijinja";
|
|
1718
|
+
pythonWebFramework: "none" | "fastapi" | "django" | "flask" | "litestar" | "starlette" | "aiohttp" | "streamlit";
|
|
1719
|
+
pythonOrm: "none" | "sqlalchemy" | "sqlmodel" | "tortoise-orm" | "peewee" | "pymongo";
|
|
1457
1720
|
pythonValidation: "none" | "pydantic";
|
|
1458
|
-
pythonAi: ("none" | "langgraph" | "
|
|
1459
|
-
pythonAuth: "none" | "authlib" | "jwt" | "fastapi-users";
|
|
1721
|
+
pythonAi: ("none" | "mcp" | "langgraph" | "openai-sdk" | "anthropic-sdk" | "google-adk" | "langchain" | "llamaindex" | "crewai" | "haystack" | "pydantic-ai" | "smolagents" | "pytorch" | "transformers" | "scikit-learn" | "tensorflow")[];
|
|
1722
|
+
pythonAuth: "none" | "authlib" | "jwt" | "pyjwt" | "fastapi-users";
|
|
1460
1723
|
pythonApi: "none" | "django-rest-framework" | "django-ninja";
|
|
1461
1724
|
pythonTaskQueue: "none" | "celery" | "rq" | "dramatiq" | "huey" | "taskiq";
|
|
1462
1725
|
pythonGraphql: "none" | "strawberry" | "ariadne";
|
|
1463
1726
|
pythonQuality: "none" | "ruff" | "mypy" | "pyright";
|
|
1464
|
-
pythonTesting: ("none" | "pytest" | "hypothesis")[];
|
|
1727
|
+
pythonTesting: ("none" | "pytest" | "hypothesis" | "pytest-cov")[];
|
|
1465
1728
|
pythonCaching: "none" | "redis" | "aiocache";
|
|
1466
1729
|
pythonRealtime: "none" | "python-socketio" | "websockets";
|
|
1467
|
-
pythonObservability: "none" | "opentelemetry";
|
|
1730
|
+
pythonObservability: "none" | "opentelemetry" | "prometheus-client";
|
|
1468
1731
|
pythonCli: ("none" | "typer" | "click" | "rich")[];
|
|
1469
|
-
|
|
1470
|
-
|
|
1471
|
-
|
|
1732
|
+
pythonCloudSdk: "none" | "boto3";
|
|
1733
|
+
pythonHttpClient: "none" | "requests";
|
|
1734
|
+
pythonData: ("none" | "numpy" | "pandas" | "scipy")[];
|
|
1735
|
+
pythonMedia: "none" | "pillow";
|
|
1736
|
+
pythonServer: "none" | "gunicorn";
|
|
1737
|
+
pythonPackageManager: "none" | "uv" | "poetry";
|
|
1738
|
+
pythonMessageQueue: "none" | "confluent-kafka";
|
|
1739
|
+
goWebFramework: "none" | "gin" | "echo" | "fiber" | "chi" | "stdlib" | "go-zero" | "kratos" | "httprouter";
|
|
1740
|
+
goOrm: "none" | "bun" | "sqlx" | "gorm" | "sqlc" | "ent";
|
|
1741
|
+
goApi: "none" | "grpc-go" | "gqlgen" | "grpc-gateway" | "connect-go" | "oapi-codegen";
|
|
1472
1742
|
goCli: "none" | "cobra" | "bubbletea" | "urfave-cli";
|
|
1473
1743
|
goLogging: "none" | "zap" | "zerolog" | "slog" | "logrus";
|
|
1474
|
-
goAuth: "none" | "jwt" | "casbin" | "goth";
|
|
1475
|
-
goTesting: ("none" | "testify" | "gomock")[];
|
|
1744
|
+
goAuth: "none" | "oauth2" | "jwt" | "casbin" | "goth";
|
|
1745
|
+
goTesting: ("none" | "testify" | "gomock" | "testcontainers" | "ginkgo-gomega" | "mockery")[];
|
|
1476
1746
|
goRealtime: "none" | "gorilla-websocket" | "centrifuge";
|
|
1477
|
-
goMessageQueue: "none" | "nats" | "watermill";
|
|
1747
|
+
goMessageQueue: "none" | "nats" | "watermill" | "kafka-go" | "asynq";
|
|
1478
1748
|
goCaching: "none" | "redis" | "ristretto";
|
|
1479
1749
|
goConfig: "none" | "viper" | "koanf";
|
|
1480
|
-
goObservability: "none" | "opentelemetry";
|
|
1750
|
+
goObservability: "none" | "opentelemetry" | "prometheus";
|
|
1751
|
+
goValidation: "none" | "validator";
|
|
1752
|
+
goQuality: "none" | "golangci-lint";
|
|
1753
|
+
goMigrations: "none" | "golang-migrate";
|
|
1754
|
+
goTemplating: "none" | "templ";
|
|
1755
|
+
goProtoTooling: "none" | "buf";
|
|
1756
|
+
goDI: "none" | "fx";
|
|
1481
1757
|
javaWebFramework: "none" | "spring-boot" | "quarkus" | "micronaut";
|
|
1482
1758
|
javaBuildTool: "none" | "maven" | "gradle";
|
|
1483
1759
|
javaOrm: "none" | "spring-data-jpa" | "jooq" | "mybatis";
|
|
1484
1760
|
javaAuth: "none" | "spring-security" | "keycloak";
|
|
1485
1761
|
javaApi: "none" | "spring-graphql" | "openapi-generator" | "grpc";
|
|
1486
1762
|
javaLogging: "none" | "logback" | "log4j2";
|
|
1487
|
-
javaLibraries: ("none" | "spring-actuator" | "spring-validation" | "flyway" | "liquibase" | "springdoc-openapi" | "lombok" | "mapstruct" | "caffeine" | "resilience4j" | "spring-webflux" | "spring-batch" | "spring-kafka" | "spring-mail" | "spring-devtools" | "micrometer-prometheus" | "thymeleaf" | "spring-amqp" | "opentelemetry-java")[];
|
|
1488
|
-
javaTestingLibraries: ("none" | "
|
|
1763
|
+
javaLibraries: ("none" | "spring-actuator" | "spring-validation" | "flyway" | "liquibase" | "springdoc-openapi" | "lombok" | "mapstruct" | "caffeine" | "resilience4j" | "spring-webflux" | "spring-batch" | "spring-kafka" | "spring-mail" | "spring-devtools" | "micrometer-prometheus" | "thymeleaf" | "spring-amqp" | "opentelemetry-java" | "spring-data-redis" | "spring-data-mongodb" | "spring-data-elasticsearch" | "spring-data-neo4j" | "spring-data-cassandra" | "spring-data-couchbase" | "spring-data-jdbc" | "spring-data-rest" | "spring-quartz" | "spring-pulsar" | "spring-integration" | "spring-websocket" | "spring-rsocket" | "spring-hateoas" | "spring-session-redis" | "spring-session-jdbc" | "spring-ldap" | "spring-oauth2-client" | "spring-saml2" | "spring-restclient")[];
|
|
1764
|
+
javaTestingLibraries: ("none" | "testcontainers" | "junit5" | "mockito" | "assertj" | "rest-assured" | "wiremock" | "awaitility" | "archunit" | "jqwik")[];
|
|
1489
1765
|
dotnetWebFramework: "none" | "aspnet-minimal" | "aspnet-mvc" | "aspnet-blazor";
|
|
1490
1766
|
dotnetOrm: "none" | "ef-core" | "dapper" | "linq2db";
|
|
1491
1767
|
dotnetAuth: "none" | "aspnet-identity" | "duende-identityserver" | "auth0-aspnet";
|
|
@@ -1497,25 +1773,31 @@ declare const router: {
|
|
|
1497
1773
|
dotnetValidation: "none" | "fluentvalidation" | "data-annotations";
|
|
1498
1774
|
dotnetCaching: "none" | "redis" | "memory-cache";
|
|
1499
1775
|
dotnetDeploy: "none" | "docker" | "azure" | "aws";
|
|
1776
|
+
dotnetLibraries: ("none" | "sentry" | "automapper" | "mediatr" | "fastendpoints" | "api-versioning" | "scalar" | "polly" | "masstransit" | "rebus" | "coravel" | "magic-onion" | "prometheus-net" | "seq" | "application-insights" | "mongodb-driver" | "nhibernate" | "mapster" | "scrutor" | "refit" | "fluent-email")[];
|
|
1500
1777
|
elixirWebFramework: "none" | "phoenix" | "phoenix-live-view";
|
|
1501
|
-
elixirOrm: "none" | "ecto" | "ecto-sql";
|
|
1502
|
-
elixirAuth: "none" | "phx-gen-auth" | "ueberauth" | "guardian";
|
|
1503
|
-
elixirApi: "none" | "grpc" | "rest" | "absinthe";
|
|
1778
|
+
elixirOrm: "none" | "ecto" | "ecto-sql" | "myxql" | "ecto_sqlite3";
|
|
1779
|
+
elixirAuth: "none" | "phx-gen-auth" | "ueberauth" | "guardian" | "pow";
|
|
1780
|
+
elixirApi: "none" | "grpc" | "rest" | "absinthe" | "open_api_spex";
|
|
1504
1781
|
elixirRealtime: "none" | "channels" | "presence" | "pubsub" | "live-view-streams";
|
|
1505
1782
|
elixirJobs: "none" | "oban" | "quantum";
|
|
1506
1783
|
elixirValidation: "none" | "ecto-changesets" | "nimble-options";
|
|
1507
|
-
elixirHttp: "none" | "req" | "finch";
|
|
1784
|
+
elixirHttp: "none" | "req" | "finch" | "tesla";
|
|
1508
1785
|
elixirJson: "none" | "jason";
|
|
1509
|
-
elixirEmail: "none" | "swoosh";
|
|
1510
|
-
elixirCaching: "none" | "cachex" | "nebulex";
|
|
1511
|
-
elixirObservability: "none" | "opentelemetry" | "telemetry" | "prom_ex";
|
|
1512
|
-
elixirTesting: "none" | "ex_unit" | "mox" | "bypass" | "wallaby";
|
|
1513
|
-
elixirQuality: "none" | "credo" | "dialyxir" | "sobelow";
|
|
1786
|
+
elixirEmail: "none" | "swoosh" | "bamboo";
|
|
1787
|
+
elixirCaching: "none" | "cachex" | "nebulex" | "redix";
|
|
1788
|
+
elixirObservability: "none" | "sentry" | "opentelemetry" | "telemetry" | "prom_ex";
|
|
1789
|
+
elixirTesting: "none" | "ex_unit" | "mox" | "bypass" | "wallaby" | "stream_data" | "ex_machina";
|
|
1790
|
+
elixirQuality: "none" | "credo" | "dialyxir" | "sobelow" | "excoveralls" | "mix_audit";
|
|
1791
|
+
elixirI18n: "none" | "gettext";
|
|
1792
|
+
elixirHttpServer: "none" | "bandit" | "cowboy";
|
|
1793
|
+
elixirApplicationFramework: "none" | "ash";
|
|
1794
|
+
elixirDocumentation: "none" | "ex_doc";
|
|
1795
|
+
elixirClustering: "none" | "libcluster";
|
|
1514
1796
|
elixirDeploy: "none" | "docker" | "fly" | "gigalixir" | "mix-release";
|
|
1515
|
-
elixirLibraries: ("none" | "nx" | "broadway")[];
|
|
1797
|
+
elixirLibraries: ("none" | "nx" | "broadway" | "ex_aws" | "floki" | "rustler")[];
|
|
1516
1798
|
aiDocs: ("none" | "claude-md" | "agents-md" | "cursorrules")[];
|
|
1517
1799
|
workspaceShape?: "monorepo" | "single-app" | undefined;
|
|
1518
|
-
astroIntegration?: "none" | "
|
|
1800
|
+
astroIntegration?: "none" | "vue" | "svelte" | "solid" | "react" | undefined;
|
|
1519
1801
|
shadcnBase?: "radix" | "base" | undefined;
|
|
1520
1802
|
shadcnStyle?: "vega" | "nova" | "maia" | "lyra" | "mira" | "luma" | "sera" | undefined;
|
|
1521
1803
|
shadcnIconLibrary?: "lucide" | "tabler" | "hugeicons" | "phosphor" | "remixicon" | "heroicons" | "react-icons" | undefined;
|
|
@@ -1526,7 +1808,7 @@ declare const router: {
|
|
|
1526
1808
|
javaLanguage?: "java" | "kotlin" | undefined;
|
|
1527
1809
|
stackParts?: {
|
|
1528
1810
|
id: string;
|
|
1529
|
-
role: "api" | "runtime" | "backend" | "database" | "orm" | "dbSetup" | "auth" | "payments" | "email" | "fileUpload" | "logging" | "observability" | "stateManagement" | "forms" | "validation" | "testing" | "realtime" | "jobQueue" | "caching" | "rateLimit" | "i18n" | "search" | "vectorDb" | "fileStorage" | "animation" | "cms" | "featureFlags" | "analytics" | "codeQuality" | "documentation" | "examples" | "ai" | "effect" | "config" | "frontend" | "
|
|
1811
|
+
role: "api" | "runtime" | "backend" | "database" | "orm" | "dbSetup" | "auth" | "payments" | "email" | "fileUpload" | "logging" | "observability" | "stateManagement" | "forms" | "validation" | "testing" | "realtime" | "jobQueue" | "caching" | "rateLimit" | "i18n" | "search" | "vectorDb" | "fileStorage" | "animation" | "cms" | "featureFlags" | "analytics" | "codeQuality" | "documentation" | "packageManager" | "examples" | "ai" | "effect" | "config" | "frontend" | "mobile" | "graphql" | "deploy" | "migrations" | "navigation" | "ui" | "css" | "storage" | "push" | "ota" | "deepLinking" | "appPlatform" | "dataFetching" | "workspaceTooling" | "language" | "buildTool" | "cli" | "errorHandling" | "httpClient" | "libraries" | "templating" | "cloudSdk" | "data" | "media" | "server" | "messageQueue";
|
|
1530
1812
|
toolId: string;
|
|
1531
1813
|
ecosystem: "typescript" | "react-native" | "rust" | "python" | "go" | "java" | "elixir" | "dotnet" | "universal";
|
|
1532
1814
|
source: "selected" | "defaulted" | "provided" | "legacy" | "adjusted";
|
|
@@ -1558,11 +1840,11 @@ declare const router: {
|
|
|
1558
1840
|
orm: "none" | "drizzle" | "prisma" | "mongoose" | "typeorm" | "kysely" | "mikroorm" | "sequelize";
|
|
1559
1841
|
backend: "effect" | "none" | "hono" | "express" | "fastify" | "elysia" | "fets" | "nestjs" | "adonisjs" | "nitro" | "encore" | "convex" | "self";
|
|
1560
1842
|
runtime: "none" | "bun" | "node" | "workers";
|
|
1561
|
-
frontend: ("none" | "tanstack-router" | "react-router" | "react-vite" | "tanstack-start" | "next" | "vinext" | "nuxt" | "native-bare" | "native-uniwind" | "native-unistyles" | "svelte" | "solid" | "solid-start" | "astro" | "qwik" | "angular" | "redwood" | "fresh")[];
|
|
1562
|
-
addons: ("none" | "pwa" | "tauri" | "starlight" | "biome" | "lefthook" | "husky" | "ruler" | "mcp" | "skills" | "turborepo" | "nx" | "fumadocs" | "ultracite" | "oxlint" | "opentui" | "wxt" | "msw" | "storybook" | "swr" | "tanstack-query" | "tanstack-table" | "tanstack-virtual" | "tanstack-db" | "tanstack-pacer" | "backend-utils" | "devcontainer" | "docker-compose" | "github-actions")[];
|
|
1843
|
+
frontend: ("none" | "tanstack-router" | "react-router" | "react-vite" | "vanilla-vite" | "vue" | "tanstack-start" | "next" | "vinext" | "nuxt" | "native-bare" | "native-uniwind" | "native-unistyles" | "svelte" | "solid" | "solid-start" | "astro" | "qwik" | "angular" | "redwood" | "fresh")[];
|
|
1844
|
+
addons: ("none" | "pwa" | "tauri" | "starlight" | "biome" | "lefthook" | "husky" | "ruler" | "mcp" | "skills" | "turborepo" | "nx" | "fumadocs" | "ultracite" | "oxlint" | "opentui" | "wxt" | "msw" | "storybook" | "swr" | "tanstack-query" | "tanstack-table" | "tanstack-virtual" | "tanstack-db" | "tanstack-pacer" | "backend-utils" | "devcontainer" | "docker-compose" | "github-actions" | "eslint" | "prettier" | "axios" | "firebase" | "graphql-codegen" | "openapi-typescript" | "apollo-client" | "electron" | "capacitor")[];
|
|
1563
1845
|
examples: ("ai" | "none" | "chat-sdk" | "tanstack-showcase")[];
|
|
1564
|
-
auth: "none" | "better-auth" | "better-auth-organizations" | "go-better-auth" | "clerk" | "nextauth" | "stack-auth" | "supabase-auth" | "auth0" | "workos" | "kinde";
|
|
1565
|
-
payments: "none" | "revenuecat" | "polar" | "stripe" | "lemon-squeezy" | "paddle" | "dodo" | "creem" | "autumn" | "commet";
|
|
1846
|
+
auth: "none" | "better-auth" | "better-auth-organizations" | "go-better-auth" | "clerk" | "nextauth" | "stack-auth" | "supabase-auth" | "auth0" | "workos" | "kinde" | "passport";
|
|
1847
|
+
payments: "none" | "revenuecat" | "polar" | "stripe" | "lemon-squeezy" | "paddle" | "paypal" | "dodo" | "creem" | "autumn" | "commet";
|
|
1566
1848
|
git: boolean;
|
|
1567
1849
|
packageManager: "bun" | "npm" | "pnpm" | "yarn";
|
|
1568
1850
|
versionChannel: "stable" | "latest" | "beta";
|
|
@@ -1571,24 +1853,24 @@ declare const router: {
|
|
|
1571
1853
|
api: "none" | "trpc" | "orpc" | "ts-rest" | "garph" | "graphql-yoga" | "apollo-server" | "openapi";
|
|
1572
1854
|
webDeploy: "none" | "docker" | "cloudflare" | "fly" | "railway" | "render" | "netlify" | "sst" | "vercel";
|
|
1573
1855
|
serverDeploy: "none" | "docker" | "cloudflare" | "fly" | "railway" | "render" | "netlify" | "sst" | "vercel";
|
|
1574
|
-
ai: "none" | "langgraph" | "google-adk" | "langchain" | "llamaindex" | "vercel-ai" | "mastra" | "voltagent" | "openai-agents" | "modelfusion" | "tanstack-ai" | "ai-cli";
|
|
1856
|
+
ai: "none" | "langgraph" | "openai-sdk" | "anthropic-sdk" | "google-adk" | "langchain" | "llamaindex" | "vercel-ai" | "mastra" | "voltagent" | "openai-agents" | "modelfusion" | "tanstack-ai" | "ai-cli";
|
|
1575
1857
|
effect: "effect" | "none" | "effect-full";
|
|
1576
1858
|
stateManagement: "none" | "zustand" | "jotai" | "nanostores" | "redux-toolkit" | "mobx" | "xstate" | "valtio" | "tanstack-store" | "legend-state";
|
|
1577
1859
|
forms: "none" | "tanstack-form" | "react-hook-form" | "formik" | "final-form" | "conform" | "modular-forms";
|
|
1578
|
-
testing: "none" | "vitest" | "playwright" | "vitest-playwright" | "jest" | "cypress";
|
|
1860
|
+
testing: "none" | "vitest" | "playwright" | "vitest-playwright" | "jest" | "mocha" | "cypress";
|
|
1579
1861
|
email: "none" | "react-email" | "resend" | "nodemailer" | "postmark" | "sendgrid" | "aws-ses" | "mailgun" | "plunk";
|
|
1580
|
-
cssFramework: "none" | "tailwind" | "scss" | "less" | "postcss-only";
|
|
1862
|
+
cssFramework: "none" | "tailwind" | "scss" | "less" | "postcss-only" | "styled-components";
|
|
1581
1863
|
uiLibrary: "none" | "shadcn-ui" | "shadcn-svelte" | "daisyui" | "radix-ui" | "headless-ui" | "park-ui" | "chakra-ui" | "nextui" | "mantine" | "mui" | "antd" | "base-ui" | "ark-ui" | "react-aria";
|
|
1582
1864
|
validation: "none" | "zod" | "valibot" | "arktype" | "typebox" | "typia" | "runtypes" | "effect-schema";
|
|
1583
|
-
realtime: "none" | "socket-io" | "partykit" | "ably" | "pusher" | "liveblocks" | "yjs";
|
|
1865
|
+
realtime: "none" | "socket-io" | "ws" | "partykit" | "ably" | "pusher" | "liveblocks" | "yjs";
|
|
1584
1866
|
jobQueue: "none" | "bullmq" | "trigger-dev" | "inngest" | "temporal";
|
|
1585
1867
|
animation: "none" | "framer-motion" | "gsap" | "react-spring" | "auto-animate" | "lottie";
|
|
1586
1868
|
fileUpload: "none" | "uploadthing" | "filepond" | "uppy";
|
|
1587
1869
|
logging: "none" | "pino" | "winston" | "evlog";
|
|
1588
|
-
observability: "none" | "
|
|
1870
|
+
observability: "none" | "sentry" | "opentelemetry" | "grafana" | "datadog" | "axiom" | "betterstack";
|
|
1589
1871
|
featureFlags: "none" | "growthbook" | "posthog" | "launchdarkly" | "flagsmith" | "unleash";
|
|
1590
|
-
analytics: "none" | "posthog" | "plausible" | "umami";
|
|
1591
|
-
cms: "none" | "payload" | "sanity" | "strapi" | "tinacms" | "directus" | "keystatic";
|
|
1872
|
+
analytics: "none" | "posthog" | "plausible" | "umami" | "ga4";
|
|
1873
|
+
cms: "none" | "payload" | "sanity" | "strapi" | "tinacms" | "directus" | "keystatic" | "contentful";
|
|
1592
1874
|
caching: "none" | "redis" | "upstash-redis";
|
|
1593
1875
|
rateLimit: "none" | "arcjet" | "upstash-ratelimit";
|
|
1594
1876
|
i18n: "none" | "paraglide" | "i18next" | "next-intl" | "intlayer";
|
|
@@ -1602,54 +1884,68 @@ declare const router: {
|
|
|
1602
1884
|
mobilePush: "none" | "expo-notifications";
|
|
1603
1885
|
mobileOTA: "none" | "expo-updates";
|
|
1604
1886
|
mobileDeepLinking: "none" | "expo-linking";
|
|
1605
|
-
|
|
1606
|
-
|
|
1607
|
-
|
|
1608
|
-
|
|
1887
|
+
mobileLibraries: ("none" | "expo-sqlite" | "expo-camera" | "expo-image-picker" | "expo-location" | "expo-sensors" | "expo-file-system" | "expo-image" | "expo-audio" | "expo-video" | "expo-contacts" | "expo-calendar" | "expo-local-authentication" | "expo-sharing" | "expo-clipboard" | "expo-task-manager" | "expo-background-task" | "expo-maps" | "expo-brightness" | "expo-battery" | "expo-screen-capture")[];
|
|
1888
|
+
rustWebFramework: "none" | "axum" | "actix-web" | "rocket" | "poem" | "loco" | "warp" | "salvo";
|
|
1889
|
+
rustFrontend: "none" | "leptos" | "dioxus" | "yew";
|
|
1890
|
+
rustOrm: "none" | "mongodb" | "sea-orm" | "sqlx" | "diesel" | "rusqlite" | "tokio-postgres";
|
|
1891
|
+
rustApi: "none" | "tonic" | "async-graphql" | "jsonrpsee";
|
|
1609
1892
|
rustCli: "none" | "clap" | "ratatui";
|
|
1610
|
-
rustLibraries: ("config" | "none" | "serde" | "uuid" | "chrono" | "reqwest" | "dashmap" | "parking-lot" | "secrecy" | "tokio-util" | "utoipa" | "validator" | "jsonwebtoken" | "argon2" | "tokio-test" | "mockall" | "proptest" | "insta")[];
|
|
1893
|
+
rustLibraries: ("config" | "none" | "serde" | "uuid" | "chrono" | "reqwest" | "dashmap" | "parking-lot" | "secrecy" | "tokio-util" | "utoipa" | "validator" | "jsonwebtoken" | "argon2" | "tokio-test" | "mockall" | "proptest" | "insta" | "rand" | "regex" | "rayon" | "itertools" | "rstest" | "cargo-nextest" | "cargo-audit")[];
|
|
1611
1894
|
rustLogging: "none" | "tracing" | "env-logger";
|
|
1612
1895
|
rustErrorHandling: "none" | "anyhow-thiserror" | "eyre";
|
|
1613
1896
|
rustCaching: "none" | "redis" | "moka";
|
|
1614
|
-
rustAuth: "none" | "oauth2" | "torii";
|
|
1897
|
+
rustAuth: "none" | "oauth2" | "torii" | "openidconnect" | "tower-sessions";
|
|
1615
1898
|
rustRealtime: "none" | "tokio-tungstenite";
|
|
1616
|
-
rustMessageQueue: "none" | "lapin";
|
|
1617
|
-
rustObservability: "none" | "opentelemetry";
|
|
1618
|
-
rustTemplating: "none" | "askama" | "tera";
|
|
1619
|
-
pythonWebFramework: "none" | "fastapi" | "django" | "flask" | "litestar" | "starlette";
|
|
1620
|
-
pythonOrm: "none" | "sqlalchemy" | "sqlmodel" | "tortoise-orm" | "peewee";
|
|
1899
|
+
rustMessageQueue: "none" | "lapin" | "rdkafka" | "async-nats";
|
|
1900
|
+
rustObservability: "none" | "opentelemetry" | "metrics";
|
|
1901
|
+
rustTemplating: "none" | "askama" | "tera" | "minijinja";
|
|
1902
|
+
pythonWebFramework: "none" | "fastapi" | "django" | "flask" | "litestar" | "starlette" | "aiohttp" | "streamlit";
|
|
1903
|
+
pythonOrm: "none" | "sqlalchemy" | "sqlmodel" | "tortoise-orm" | "peewee" | "pymongo";
|
|
1621
1904
|
pythonValidation: "none" | "pydantic";
|
|
1622
|
-
pythonAi: ("none" | "langgraph" | "
|
|
1623
|
-
pythonAuth: "none" | "authlib" | "jwt" | "fastapi-users";
|
|
1905
|
+
pythonAi: ("none" | "mcp" | "langgraph" | "openai-sdk" | "anthropic-sdk" | "google-adk" | "langchain" | "llamaindex" | "crewai" | "haystack" | "pydantic-ai" | "smolagents" | "pytorch" | "transformers" | "scikit-learn" | "tensorflow")[];
|
|
1906
|
+
pythonAuth: "none" | "authlib" | "jwt" | "pyjwt" | "fastapi-users";
|
|
1624
1907
|
pythonApi: "none" | "django-rest-framework" | "django-ninja";
|
|
1625
1908
|
pythonTaskQueue: "none" | "celery" | "rq" | "dramatiq" | "huey" | "taskiq";
|
|
1626
1909
|
pythonGraphql: "none" | "strawberry" | "ariadne";
|
|
1627
1910
|
pythonQuality: "none" | "ruff" | "mypy" | "pyright";
|
|
1628
|
-
pythonTesting: ("none" | "pytest" | "hypothesis")[];
|
|
1911
|
+
pythonTesting: ("none" | "pytest" | "hypothesis" | "pytest-cov")[];
|
|
1629
1912
|
pythonCaching: "none" | "redis" | "aiocache";
|
|
1630
1913
|
pythonRealtime: "none" | "python-socketio" | "websockets";
|
|
1631
|
-
pythonObservability: "none" | "opentelemetry";
|
|
1914
|
+
pythonObservability: "none" | "opentelemetry" | "prometheus-client";
|
|
1632
1915
|
pythonCli: ("none" | "typer" | "click" | "rich")[];
|
|
1633
|
-
|
|
1634
|
-
|
|
1635
|
-
|
|
1916
|
+
pythonCloudSdk: "none" | "boto3";
|
|
1917
|
+
pythonHttpClient: "none" | "requests";
|
|
1918
|
+
pythonData: ("none" | "numpy" | "pandas" | "scipy")[];
|
|
1919
|
+
pythonMedia: "none" | "pillow";
|
|
1920
|
+
pythonServer: "none" | "gunicorn";
|
|
1921
|
+
pythonPackageManager: "none" | "uv" | "poetry";
|
|
1922
|
+
pythonMessageQueue: "none" | "confluent-kafka";
|
|
1923
|
+
goWebFramework: "none" | "gin" | "echo" | "fiber" | "chi" | "stdlib" | "go-zero" | "kratos" | "httprouter";
|
|
1924
|
+
goOrm: "none" | "bun" | "sqlx" | "gorm" | "sqlc" | "ent";
|
|
1925
|
+
goApi: "none" | "grpc-go" | "gqlgen" | "grpc-gateway" | "connect-go" | "oapi-codegen";
|
|
1636
1926
|
goCli: "none" | "cobra" | "bubbletea" | "urfave-cli";
|
|
1637
1927
|
goLogging: "none" | "zap" | "zerolog" | "slog" | "logrus";
|
|
1638
|
-
goAuth: "none" | "jwt" | "casbin" | "goth";
|
|
1639
|
-
goTesting: ("none" | "testify" | "gomock")[];
|
|
1928
|
+
goAuth: "none" | "oauth2" | "jwt" | "casbin" | "goth";
|
|
1929
|
+
goTesting: ("none" | "testify" | "gomock" | "testcontainers" | "ginkgo-gomega" | "mockery")[];
|
|
1640
1930
|
goRealtime: "none" | "gorilla-websocket" | "centrifuge";
|
|
1641
|
-
goMessageQueue: "none" | "nats" | "watermill";
|
|
1931
|
+
goMessageQueue: "none" | "nats" | "watermill" | "kafka-go" | "asynq";
|
|
1642
1932
|
goCaching: "none" | "redis" | "ristretto";
|
|
1643
1933
|
goConfig: "none" | "viper" | "koanf";
|
|
1644
|
-
goObservability: "none" | "opentelemetry";
|
|
1934
|
+
goObservability: "none" | "opentelemetry" | "prometheus";
|
|
1935
|
+
goValidation: "none" | "validator";
|
|
1936
|
+
goQuality: "none" | "golangci-lint";
|
|
1937
|
+
goMigrations: "none" | "golang-migrate";
|
|
1938
|
+
goTemplating: "none" | "templ";
|
|
1939
|
+
goProtoTooling: "none" | "buf";
|
|
1940
|
+
goDI: "none" | "fx";
|
|
1645
1941
|
javaWebFramework: "none" | "spring-boot" | "quarkus" | "micronaut";
|
|
1646
1942
|
javaBuildTool: "none" | "maven" | "gradle";
|
|
1647
1943
|
javaOrm: "none" | "spring-data-jpa" | "jooq" | "mybatis";
|
|
1648
1944
|
javaAuth: "none" | "spring-security" | "keycloak";
|
|
1649
1945
|
javaApi: "none" | "spring-graphql" | "openapi-generator" | "grpc";
|
|
1650
1946
|
javaLogging: "none" | "logback" | "log4j2";
|
|
1651
|
-
javaLibraries: ("none" | "spring-actuator" | "spring-validation" | "flyway" | "liquibase" | "springdoc-openapi" | "lombok" | "mapstruct" | "caffeine" | "resilience4j" | "spring-webflux" | "spring-batch" | "spring-kafka" | "spring-mail" | "spring-devtools" | "micrometer-prometheus" | "thymeleaf" | "spring-amqp" | "opentelemetry-java")[];
|
|
1652
|
-
javaTestingLibraries: ("none" | "
|
|
1947
|
+
javaLibraries: ("none" | "spring-actuator" | "spring-validation" | "flyway" | "liquibase" | "springdoc-openapi" | "lombok" | "mapstruct" | "caffeine" | "resilience4j" | "spring-webflux" | "spring-batch" | "spring-kafka" | "spring-mail" | "spring-devtools" | "micrometer-prometheus" | "thymeleaf" | "spring-amqp" | "opentelemetry-java" | "spring-data-redis" | "spring-data-mongodb" | "spring-data-elasticsearch" | "spring-data-neo4j" | "spring-data-cassandra" | "spring-data-couchbase" | "spring-data-jdbc" | "spring-data-rest" | "spring-quartz" | "spring-pulsar" | "spring-integration" | "spring-websocket" | "spring-rsocket" | "spring-hateoas" | "spring-session-redis" | "spring-session-jdbc" | "spring-ldap" | "spring-oauth2-client" | "spring-saml2" | "spring-restclient")[];
|
|
1948
|
+
javaTestingLibraries: ("none" | "testcontainers" | "junit5" | "mockito" | "assertj" | "rest-assured" | "wiremock" | "awaitility" | "archunit" | "jqwik")[];
|
|
1653
1949
|
dotnetWebFramework: "none" | "aspnet-minimal" | "aspnet-mvc" | "aspnet-blazor";
|
|
1654
1950
|
dotnetOrm: "none" | "ef-core" | "dapper" | "linq2db";
|
|
1655
1951
|
dotnetAuth: "none" | "aspnet-identity" | "duende-identityserver" | "auth0-aspnet";
|
|
@@ -1661,25 +1957,31 @@ declare const router: {
|
|
|
1661
1957
|
dotnetValidation: "none" | "fluentvalidation" | "data-annotations";
|
|
1662
1958
|
dotnetCaching: "none" | "redis" | "memory-cache";
|
|
1663
1959
|
dotnetDeploy: "none" | "docker" | "azure" | "aws";
|
|
1960
|
+
dotnetLibraries: ("none" | "sentry" | "automapper" | "mediatr" | "fastendpoints" | "api-versioning" | "scalar" | "polly" | "masstransit" | "rebus" | "coravel" | "magic-onion" | "prometheus-net" | "seq" | "application-insights" | "mongodb-driver" | "nhibernate" | "mapster" | "scrutor" | "refit" | "fluent-email")[];
|
|
1664
1961
|
elixirWebFramework: "none" | "phoenix" | "phoenix-live-view";
|
|
1665
|
-
elixirOrm: "none" | "ecto" | "ecto-sql";
|
|
1666
|
-
elixirAuth: "none" | "phx-gen-auth" | "ueberauth" | "guardian";
|
|
1667
|
-
elixirApi: "none" | "grpc" | "rest" | "absinthe";
|
|
1962
|
+
elixirOrm: "none" | "ecto" | "ecto-sql" | "myxql" | "ecto_sqlite3";
|
|
1963
|
+
elixirAuth: "none" | "phx-gen-auth" | "ueberauth" | "guardian" | "pow";
|
|
1964
|
+
elixirApi: "none" | "grpc" | "rest" | "absinthe" | "open_api_spex";
|
|
1668
1965
|
elixirRealtime: "none" | "channels" | "presence" | "pubsub" | "live-view-streams";
|
|
1669
1966
|
elixirJobs: "none" | "oban" | "quantum";
|
|
1670
1967
|
elixirValidation: "none" | "ecto-changesets" | "nimble-options";
|
|
1671
|
-
elixirHttp: "none" | "req" | "finch";
|
|
1968
|
+
elixirHttp: "none" | "req" | "finch" | "tesla";
|
|
1672
1969
|
elixirJson: "none" | "jason";
|
|
1673
|
-
elixirEmail: "none" | "swoosh";
|
|
1674
|
-
elixirCaching: "none" | "cachex" | "nebulex";
|
|
1675
|
-
elixirObservability: "none" | "opentelemetry" | "telemetry" | "prom_ex";
|
|
1676
|
-
elixirTesting: "none" | "ex_unit" | "mox" | "bypass" | "wallaby";
|
|
1677
|
-
elixirQuality: "none" | "credo" | "dialyxir" | "sobelow";
|
|
1970
|
+
elixirEmail: "none" | "swoosh" | "bamboo";
|
|
1971
|
+
elixirCaching: "none" | "cachex" | "nebulex" | "redix";
|
|
1972
|
+
elixirObservability: "none" | "sentry" | "opentelemetry" | "telemetry" | "prom_ex";
|
|
1973
|
+
elixirTesting: "none" | "ex_unit" | "mox" | "bypass" | "wallaby" | "stream_data" | "ex_machina";
|
|
1974
|
+
elixirQuality: "none" | "credo" | "dialyxir" | "sobelow" | "excoveralls" | "mix_audit";
|
|
1975
|
+
elixirI18n: "none" | "gettext";
|
|
1976
|
+
elixirHttpServer: "none" | "bandit" | "cowboy";
|
|
1977
|
+
elixirApplicationFramework: "none" | "ash";
|
|
1978
|
+
elixirDocumentation: "none" | "ex_doc";
|
|
1979
|
+
elixirClustering: "none" | "libcluster";
|
|
1678
1980
|
elixirDeploy: "none" | "docker" | "fly" | "gigalixir" | "mix-release";
|
|
1679
|
-
elixirLibraries: ("none" | "nx" | "broadway")[];
|
|
1981
|
+
elixirLibraries: ("none" | "nx" | "broadway" | "ex_aws" | "floki" | "rustler")[];
|
|
1680
1982
|
aiDocs: ("none" | "claude-md" | "agents-md" | "cursorrules")[];
|
|
1681
1983
|
workspaceShape?: "monorepo" | "single-app" | undefined;
|
|
1682
|
-
astroIntegration?: "none" | "
|
|
1984
|
+
astroIntegration?: "none" | "vue" | "svelte" | "solid" | "react" | undefined;
|
|
1683
1985
|
shadcnBase?: "radix" | "base" | undefined;
|
|
1684
1986
|
shadcnStyle?: "vega" | "nova" | "maia" | "lyra" | "mira" | "luma" | "sera" | undefined;
|
|
1685
1987
|
shadcnIconLibrary?: "lucide" | "tabler" | "hugeicons" | "phosphor" | "remixicon" | "heroicons" | "react-icons" | undefined;
|
|
@@ -1690,7 +1992,7 @@ declare const router: {
|
|
|
1690
1992
|
javaLanguage?: "java" | "kotlin" | undefined;
|
|
1691
1993
|
stackParts?: {
|
|
1692
1994
|
id: string;
|
|
1693
|
-
role: "api" | "runtime" | "backend" | "database" | "orm" | "dbSetup" | "auth" | "payments" | "email" | "fileUpload" | "logging" | "observability" | "stateManagement" | "forms" | "validation" | "testing" | "realtime" | "jobQueue" | "caching" | "rateLimit" | "i18n" | "search" | "vectorDb" | "fileStorage" | "animation" | "cms" | "featureFlags" | "analytics" | "codeQuality" | "documentation" | "examples" | "ai" | "effect" | "config" | "frontend" | "
|
|
1995
|
+
role: "api" | "runtime" | "backend" | "database" | "orm" | "dbSetup" | "auth" | "payments" | "email" | "fileUpload" | "logging" | "observability" | "stateManagement" | "forms" | "validation" | "testing" | "realtime" | "jobQueue" | "caching" | "rateLimit" | "i18n" | "search" | "vectorDb" | "fileStorage" | "animation" | "cms" | "featureFlags" | "analytics" | "codeQuality" | "documentation" | "packageManager" | "examples" | "ai" | "effect" | "config" | "frontend" | "mobile" | "graphql" | "deploy" | "migrations" | "navigation" | "ui" | "css" | "storage" | "push" | "ota" | "deepLinking" | "appPlatform" | "dataFetching" | "workspaceTooling" | "language" | "buildTool" | "cli" | "errorHandling" | "httpClient" | "libraries" | "templating" | "cloudSdk" | "data" | "media" | "server" | "messageQueue";
|
|
1694
1996
|
toolId: string;
|
|
1695
1997
|
ecosystem: "typescript" | "react-native" | "rust" | "python" | "go" | "java" | "elixir" | "dotnet" | "universal";
|
|
1696
1998
|
source: "selected" | "defaulted" | "provided" | "legacy" | "adjusted";
|
|
@@ -1742,10 +2044,10 @@ declare const router: {
|
|
|
1742
2044
|
}>>;
|
|
1743
2045
|
astroIntegration: z.ZodOptional<z.ZodEnum<{
|
|
1744
2046
|
none: "none";
|
|
2047
|
+
vue: "vue";
|
|
1745
2048
|
svelte: "svelte";
|
|
1746
2049
|
solid: "solid";
|
|
1747
2050
|
react: "react";
|
|
1748
|
-
vue: "vue";
|
|
1749
2051
|
}>>;
|
|
1750
2052
|
runtime: z.ZodOptional<z.ZodEnum<{
|
|
1751
2053
|
none: "none";
|
|
@@ -1754,13 +2056,13 @@ declare const router: {
|
|
|
1754
2056
|
workers: "workers";
|
|
1755
2057
|
}>>;
|
|
1756
2058
|
backend: z.ZodOptional<z.ZodEnum<{
|
|
1757
|
-
effect: "effect";
|
|
1758
2059
|
none: "none";
|
|
1759
2060
|
hono: "hono";
|
|
1760
2061
|
express: "express";
|
|
1761
2062
|
fastify: "fastify";
|
|
1762
2063
|
elysia: "elysia";
|
|
1763
2064
|
fets: "fets";
|
|
2065
|
+
effect: "effect";
|
|
1764
2066
|
nestjs: "nestjs";
|
|
1765
2067
|
adonisjs: "adonisjs";
|
|
1766
2068
|
nitro: "nitro";
|
|
@@ -1833,6 +2135,7 @@ declare const router: {
|
|
|
1833
2135
|
auth0: "auth0";
|
|
1834
2136
|
workos: "workos";
|
|
1835
2137
|
kinde: "kinde";
|
|
2138
|
+
passport: "passport";
|
|
1836
2139
|
}>>;
|
|
1837
2140
|
payments: z.ZodOptional<z.ZodEnum<{
|
|
1838
2141
|
none: "none";
|
|
@@ -1841,6 +2144,7 @@ declare const router: {
|
|
|
1841
2144
|
stripe: "stripe";
|
|
1842
2145
|
"lemon-squeezy": "lemon-squeezy";
|
|
1843
2146
|
paddle: "paddle";
|
|
2147
|
+
paypal: "paypal";
|
|
1844
2148
|
dodo: "dodo";
|
|
1845
2149
|
creem: "creem";
|
|
1846
2150
|
autumn: "autumn";
|
|
@@ -1915,11 +2219,13 @@ declare const router: {
|
|
|
1915
2219
|
playwright: "playwright";
|
|
1916
2220
|
"vitest-playwright": "vitest-playwright";
|
|
1917
2221
|
jest: "jest";
|
|
2222
|
+
mocha: "mocha";
|
|
1918
2223
|
cypress: "cypress";
|
|
1919
2224
|
}>>;
|
|
1920
2225
|
realtime: z.ZodOptional<z.ZodEnum<{
|
|
1921
2226
|
none: "none";
|
|
1922
2227
|
"socket-io": "socket-io";
|
|
2228
|
+
ws: "ws";
|
|
1923
2229
|
partykit: "partykit";
|
|
1924
2230
|
ably: "ably";
|
|
1925
2231
|
pusher: "pusher";
|
|
@@ -1987,6 +2293,7 @@ declare const router: {
|
|
|
1987
2293
|
scss: "scss";
|
|
1988
2294
|
less: "less";
|
|
1989
2295
|
"postcss-only": "postcss-only";
|
|
2296
|
+
"styled-components": "styled-components";
|
|
1990
2297
|
}>>;
|
|
1991
2298
|
uiLibrary: z.ZodOptional<z.ZodEnum<{
|
|
1992
2299
|
none: "none";
|
|
@@ -2013,6 +2320,7 @@ declare const router: {
|
|
|
2013
2320
|
tinacms: "tinacms";
|
|
2014
2321
|
directus: "directus";
|
|
2015
2322
|
keystatic: "keystatic";
|
|
2323
|
+
contentful: "contentful";
|
|
2016
2324
|
}>>;
|
|
2017
2325
|
featureFlags: z.ZodOptional<z.ZodEnum<{
|
|
2018
2326
|
none: "none";
|
|
@@ -2027,6 +2335,7 @@ declare const router: {
|
|
|
2027
2335
|
posthog: "posthog";
|
|
2028
2336
|
plausible: "plausible";
|
|
2029
2337
|
umami: "umami";
|
|
2338
|
+
ga4: "ga4";
|
|
2030
2339
|
}>>;
|
|
2031
2340
|
mobileNavigation: z.ZodOptional<z.ZodEnum<{
|
|
2032
2341
|
none: "none";
|
|
@@ -2035,9 +2344,9 @@ declare const router: {
|
|
|
2035
2344
|
}>>;
|
|
2036
2345
|
mobileUI: z.ZodOptional<z.ZodEnum<{
|
|
2037
2346
|
none: "none";
|
|
2347
|
+
uniwind: "uniwind";
|
|
2038
2348
|
tamagui: "tamagui";
|
|
2039
2349
|
"gluestack-ui": "gluestack-ui";
|
|
2040
|
-
uniwind: "uniwind";
|
|
2041
2350
|
unistyles: "unistyles";
|
|
2042
2351
|
}>>;
|
|
2043
2352
|
mobileStorage: z.ZodOptional<z.ZodEnum<{
|
|
@@ -2062,6 +2371,29 @@ declare const router: {
|
|
|
2062
2371
|
none: "none";
|
|
2063
2372
|
"expo-linking": "expo-linking";
|
|
2064
2373
|
}>>;
|
|
2374
|
+
mobileLibraries: z.ZodOptional<z.ZodArray<z.ZodEnum<{
|
|
2375
|
+
none: "none";
|
|
2376
|
+
"expo-sqlite": "expo-sqlite";
|
|
2377
|
+
"expo-camera": "expo-camera";
|
|
2378
|
+
"expo-image-picker": "expo-image-picker";
|
|
2379
|
+
"expo-location": "expo-location";
|
|
2380
|
+
"expo-sensors": "expo-sensors";
|
|
2381
|
+
"expo-file-system": "expo-file-system";
|
|
2382
|
+
"expo-image": "expo-image";
|
|
2383
|
+
"expo-audio": "expo-audio";
|
|
2384
|
+
"expo-video": "expo-video";
|
|
2385
|
+
"expo-contacts": "expo-contacts";
|
|
2386
|
+
"expo-calendar": "expo-calendar";
|
|
2387
|
+
"expo-local-authentication": "expo-local-authentication";
|
|
2388
|
+
"expo-sharing": "expo-sharing";
|
|
2389
|
+
"expo-clipboard": "expo-clipboard";
|
|
2390
|
+
"expo-task-manager": "expo-task-manager";
|
|
2391
|
+
"expo-background-task": "expo-background-task";
|
|
2392
|
+
"expo-maps": "expo-maps";
|
|
2393
|
+
"expo-brightness": "expo-brightness";
|
|
2394
|
+
"expo-battery": "expo-battery";
|
|
2395
|
+
"expo-screen-capture": "expo-screen-capture";
|
|
2396
|
+
}>>>;
|
|
2065
2397
|
packageManager: z.ZodOptional<z.ZodEnum<{
|
|
2066
2398
|
bun: "bun";
|
|
2067
2399
|
npm: "npm";
|
|
@@ -2074,8 +2406,8 @@ declare const router: {
|
|
|
2074
2406
|
beta: "beta";
|
|
2075
2407
|
}>>;
|
|
2076
2408
|
examples: z.ZodOptional<z.ZodArray<z.ZodEnum<{
|
|
2077
|
-
ai: "ai";
|
|
2078
2409
|
none: "none";
|
|
2410
|
+
ai: "ai";
|
|
2079
2411
|
"chat-sdk": "chat-sdk";
|
|
2080
2412
|
"tanstack-showcase": "tanstack-showcase";
|
|
2081
2413
|
}>>>;
|
|
@@ -2086,6 +2418,8 @@ declare const router: {
|
|
|
2086
2418
|
voltagent: "voltagent";
|
|
2087
2419
|
langgraph: "langgraph";
|
|
2088
2420
|
"openai-agents": "openai-agents";
|
|
2421
|
+
"openai-sdk": "openai-sdk";
|
|
2422
|
+
"anthropic-sdk": "anthropic-sdk";
|
|
2089
2423
|
"google-adk": "google-adk";
|
|
2090
2424
|
modelfusion: "modelfusion";
|
|
2091
2425
|
langchain: "langchain";
|
|
@@ -2101,8 +2435,8 @@ declare const router: {
|
|
|
2101
2435
|
}>>>;
|
|
2102
2436
|
install: z.ZodOptional<z.ZodBoolean>;
|
|
2103
2437
|
effect: z.ZodOptional<z.ZodEnum<{
|
|
2104
|
-
effect: "effect";
|
|
2105
2438
|
none: "none";
|
|
2439
|
+
effect: "effect";
|
|
2106
2440
|
"effect-full": "effect-full";
|
|
2107
2441
|
}>>;
|
|
2108
2442
|
shadcnBase: z.ZodOptional<z.ZodEnum<{
|
|
@@ -2171,8 +2505,8 @@ declare const router: {
|
|
|
2171
2505
|
"geist-mono": "geist-mono";
|
|
2172
2506
|
}>>;
|
|
2173
2507
|
shadcnRadius: z.ZodOptional<z.ZodEnum<{
|
|
2174
|
-
default: "default";
|
|
2175
2508
|
none: "none";
|
|
2509
|
+
default: "default";
|
|
2176
2510
|
small: "small";
|
|
2177
2511
|
medium: "medium";
|
|
2178
2512
|
large: "large";
|
|
@@ -2184,22 +2518,29 @@ declare const router: {
|
|
|
2184
2518
|
rocket: "rocket";
|
|
2185
2519
|
poem: "poem";
|
|
2186
2520
|
loco: "loco";
|
|
2521
|
+
warp: "warp";
|
|
2522
|
+
salvo: "salvo";
|
|
2187
2523
|
}>>;
|
|
2188
2524
|
rustFrontend: z.ZodOptional<z.ZodEnum<{
|
|
2189
2525
|
none: "none";
|
|
2190
2526
|
leptos: "leptos";
|
|
2191
2527
|
dioxus: "dioxus";
|
|
2528
|
+
yew: "yew";
|
|
2192
2529
|
}>>;
|
|
2193
2530
|
rustOrm: z.ZodOptional<z.ZodEnum<{
|
|
2194
2531
|
none: "none";
|
|
2532
|
+
mongodb: "mongodb";
|
|
2195
2533
|
"sea-orm": "sea-orm";
|
|
2196
2534
|
sqlx: "sqlx";
|
|
2197
2535
|
diesel: "diesel";
|
|
2536
|
+
rusqlite: "rusqlite";
|
|
2537
|
+
"tokio-postgres": "tokio-postgres";
|
|
2198
2538
|
}>>;
|
|
2199
2539
|
rustApi: z.ZodOptional<z.ZodEnum<{
|
|
2200
2540
|
none: "none";
|
|
2201
2541
|
tonic: "tonic";
|
|
2202
2542
|
"async-graphql": "async-graphql";
|
|
2543
|
+
jsonrpsee: "jsonrpsee";
|
|
2203
2544
|
}>>;
|
|
2204
2545
|
rustCli: z.ZodOptional<z.ZodEnum<{
|
|
2205
2546
|
none: "none";
|
|
@@ -2207,12 +2548,12 @@ declare const router: {
|
|
|
2207
2548
|
ratatui: "ratatui";
|
|
2208
2549
|
}>>;
|
|
2209
2550
|
rustLibraries: z.ZodOptional<z.ZodArray<z.ZodEnum<{
|
|
2210
|
-
config: "config";
|
|
2211
2551
|
none: "none";
|
|
2212
2552
|
serde: "serde";
|
|
2213
2553
|
uuid: "uuid";
|
|
2214
2554
|
chrono: "chrono";
|
|
2215
2555
|
reqwest: "reqwest";
|
|
2556
|
+
config: "config";
|
|
2216
2557
|
dashmap: "dashmap";
|
|
2217
2558
|
"parking-lot": "parking-lot";
|
|
2218
2559
|
secrecy: "secrecy";
|
|
@@ -2225,6 +2566,13 @@ declare const router: {
|
|
|
2225
2566
|
mockall: "mockall";
|
|
2226
2567
|
proptest: "proptest";
|
|
2227
2568
|
insta: "insta";
|
|
2569
|
+
rand: "rand";
|
|
2570
|
+
regex: "regex";
|
|
2571
|
+
rayon: "rayon";
|
|
2572
|
+
itertools: "itertools";
|
|
2573
|
+
rstest: "rstest";
|
|
2574
|
+
"cargo-nextest": "cargo-nextest";
|
|
2575
|
+
"cargo-audit": "cargo-audit";
|
|
2228
2576
|
}>>>;
|
|
2229
2577
|
rustLogging: z.ZodOptional<z.ZodEnum<{
|
|
2230
2578
|
none: "none";
|
|
@@ -2245,6 +2593,8 @@ declare const router: {
|
|
|
2245
2593
|
none: "none";
|
|
2246
2594
|
oauth2: "oauth2";
|
|
2247
2595
|
torii: "torii";
|
|
2596
|
+
openidconnect: "openidconnect";
|
|
2597
|
+
"tower-sessions": "tower-sessions";
|
|
2248
2598
|
}>>;
|
|
2249
2599
|
rustRealtime: z.ZodOptional<z.ZodEnum<{
|
|
2250
2600
|
none: "none";
|
|
@@ -2253,15 +2603,19 @@ declare const router: {
|
|
|
2253
2603
|
rustMessageQueue: z.ZodOptional<z.ZodEnum<{
|
|
2254
2604
|
none: "none";
|
|
2255
2605
|
lapin: "lapin";
|
|
2606
|
+
rdkafka: "rdkafka";
|
|
2607
|
+
"async-nats": "async-nats";
|
|
2256
2608
|
}>>;
|
|
2257
2609
|
rustObservability: z.ZodOptional<z.ZodEnum<{
|
|
2258
2610
|
none: "none";
|
|
2259
2611
|
opentelemetry: "opentelemetry";
|
|
2612
|
+
metrics: "metrics";
|
|
2260
2613
|
}>>;
|
|
2261
2614
|
rustTemplating: z.ZodOptional<z.ZodEnum<{
|
|
2262
2615
|
none: "none";
|
|
2263
2616
|
askama: "askama";
|
|
2264
2617
|
tera: "tera";
|
|
2618
|
+
minijinja: "minijinja";
|
|
2265
2619
|
}>>;
|
|
2266
2620
|
pythonWebFramework: z.ZodOptional<z.ZodEnum<{
|
|
2267
2621
|
none: "none";
|
|
@@ -2270,6 +2624,8 @@ declare const router: {
|
|
|
2270
2624
|
flask: "flask";
|
|
2271
2625
|
litestar: "litestar";
|
|
2272
2626
|
starlette: "starlette";
|
|
2627
|
+
aiohttp: "aiohttp";
|
|
2628
|
+
streamlit: "streamlit";
|
|
2273
2629
|
}>>;
|
|
2274
2630
|
pythonOrm: z.ZodOptional<z.ZodEnum<{
|
|
2275
2631
|
none: "none";
|
|
@@ -2277,6 +2633,7 @@ declare const router: {
|
|
|
2277
2633
|
sqlmodel: "sqlmodel";
|
|
2278
2634
|
"tortoise-orm": "tortoise-orm";
|
|
2279
2635
|
peewee: "peewee";
|
|
2636
|
+
pymongo: "pymongo";
|
|
2280
2637
|
}>>;
|
|
2281
2638
|
pythonValidation: z.ZodOptional<z.ZodEnum<{
|
|
2282
2639
|
none: "none";
|
|
@@ -2284,21 +2641,27 @@ declare const router: {
|
|
|
2284
2641
|
}>>;
|
|
2285
2642
|
pythonAi: z.ZodOptional<z.ZodArray<z.ZodEnum<{
|
|
2286
2643
|
none: "none";
|
|
2644
|
+
mcp: "mcp";
|
|
2287
2645
|
langgraph: "langgraph";
|
|
2646
|
+
"openai-sdk": "openai-sdk";
|
|
2647
|
+
"anthropic-sdk": "anthropic-sdk";
|
|
2288
2648
|
"google-adk": "google-adk";
|
|
2289
2649
|
langchain: "langchain";
|
|
2290
2650
|
llamaindex: "llamaindex";
|
|
2291
|
-
"openai-sdk": "openai-sdk";
|
|
2292
|
-
"anthropic-sdk": "anthropic-sdk";
|
|
2293
2651
|
crewai: "crewai";
|
|
2294
2652
|
haystack: "haystack";
|
|
2295
2653
|
"pydantic-ai": "pydantic-ai";
|
|
2296
2654
|
smolagents: "smolagents";
|
|
2655
|
+
pytorch: "pytorch";
|
|
2656
|
+
transformers: "transformers";
|
|
2657
|
+
"scikit-learn": "scikit-learn";
|
|
2658
|
+
tensorflow: "tensorflow";
|
|
2297
2659
|
}>>>;
|
|
2298
2660
|
pythonAuth: z.ZodOptional<z.ZodEnum<{
|
|
2299
2661
|
none: "none";
|
|
2300
2662
|
authlib: "authlib";
|
|
2301
2663
|
jwt: "jwt";
|
|
2664
|
+
pyjwt: "pyjwt";
|
|
2302
2665
|
"fastapi-users": "fastapi-users";
|
|
2303
2666
|
}>>;
|
|
2304
2667
|
pythonApi: z.ZodOptional<z.ZodEnum<{
|
|
@@ -2329,6 +2692,7 @@ declare const router: {
|
|
|
2329
2692
|
none: "none";
|
|
2330
2693
|
pytest: "pytest";
|
|
2331
2694
|
hypothesis: "hypothesis";
|
|
2695
|
+
"pytest-cov": "pytest-cov";
|
|
2332
2696
|
}>>>;
|
|
2333
2697
|
pythonCaching: z.ZodOptional<z.ZodEnum<{
|
|
2334
2698
|
none: "none";
|
|
@@ -2343,6 +2707,7 @@ declare const router: {
|
|
|
2343
2707
|
pythonObservability: z.ZodOptional<z.ZodEnum<{
|
|
2344
2708
|
none: "none";
|
|
2345
2709
|
opentelemetry: "opentelemetry";
|
|
2710
|
+
"prometheus-client": "prometheus-client";
|
|
2346
2711
|
}>>;
|
|
2347
2712
|
pythonCli: z.ZodOptional<z.ZodArray<z.ZodEnum<{
|
|
2348
2713
|
none: "none";
|
|
@@ -2350,6 +2715,37 @@ declare const router: {
|
|
|
2350
2715
|
click: "click";
|
|
2351
2716
|
rich: "rich";
|
|
2352
2717
|
}>>>;
|
|
2718
|
+
pythonCloudSdk: z.ZodOptional<z.ZodEnum<{
|
|
2719
|
+
none: "none";
|
|
2720
|
+
boto3: "boto3";
|
|
2721
|
+
}>>;
|
|
2722
|
+
pythonHttpClient: z.ZodOptional<z.ZodEnum<{
|
|
2723
|
+
none: "none";
|
|
2724
|
+
requests: "requests";
|
|
2725
|
+
}>>;
|
|
2726
|
+
pythonData: z.ZodOptional<z.ZodArray<z.ZodEnum<{
|
|
2727
|
+
none: "none";
|
|
2728
|
+
numpy: "numpy";
|
|
2729
|
+
pandas: "pandas";
|
|
2730
|
+
scipy: "scipy";
|
|
2731
|
+
}>>>;
|
|
2732
|
+
pythonMedia: z.ZodOptional<z.ZodEnum<{
|
|
2733
|
+
none: "none";
|
|
2734
|
+
pillow: "pillow";
|
|
2735
|
+
}>>;
|
|
2736
|
+
pythonServer: z.ZodOptional<z.ZodEnum<{
|
|
2737
|
+
none: "none";
|
|
2738
|
+
gunicorn: "gunicorn";
|
|
2739
|
+
}>>;
|
|
2740
|
+
pythonPackageManager: z.ZodOptional<z.ZodEnum<{
|
|
2741
|
+
none: "none";
|
|
2742
|
+
uv: "uv";
|
|
2743
|
+
poetry: "poetry";
|
|
2744
|
+
}>>;
|
|
2745
|
+
pythonMessageQueue: z.ZodOptional<z.ZodEnum<{
|
|
2746
|
+
none: "none";
|
|
2747
|
+
"confluent-kafka": "confluent-kafka";
|
|
2748
|
+
}>>;
|
|
2353
2749
|
goWebFramework: z.ZodOptional<z.ZodEnum<{
|
|
2354
2750
|
none: "none";
|
|
2355
2751
|
gin: "gin";
|
|
@@ -2357,10 +2753,14 @@ declare const router: {
|
|
|
2357
2753
|
fiber: "fiber";
|
|
2358
2754
|
chi: "chi";
|
|
2359
2755
|
stdlib: "stdlib";
|
|
2756
|
+
"go-zero": "go-zero";
|
|
2757
|
+
kratos: "kratos";
|
|
2758
|
+
httprouter: "httprouter";
|
|
2360
2759
|
}>>;
|
|
2361
2760
|
goOrm: z.ZodOptional<z.ZodEnum<{
|
|
2362
2761
|
none: "none";
|
|
2363
2762
|
bun: "bun";
|
|
2763
|
+
sqlx: "sqlx";
|
|
2364
2764
|
gorm: "gorm";
|
|
2365
2765
|
sqlc: "sqlc";
|
|
2366
2766
|
ent: "ent";
|
|
@@ -2369,6 +2769,9 @@ declare const router: {
|
|
|
2369
2769
|
none: "none";
|
|
2370
2770
|
"grpc-go": "grpc-go";
|
|
2371
2771
|
gqlgen: "gqlgen";
|
|
2772
|
+
"grpc-gateway": "grpc-gateway";
|
|
2773
|
+
"connect-go": "connect-go";
|
|
2774
|
+
"oapi-codegen": "oapi-codegen";
|
|
2372
2775
|
}>>;
|
|
2373
2776
|
goCli: z.ZodOptional<z.ZodEnum<{
|
|
2374
2777
|
none: "none";
|
|
@@ -2385,6 +2788,7 @@ declare const router: {
|
|
|
2385
2788
|
}>>;
|
|
2386
2789
|
goAuth: z.ZodOptional<z.ZodEnum<{
|
|
2387
2790
|
none: "none";
|
|
2791
|
+
oauth2: "oauth2";
|
|
2388
2792
|
jwt: "jwt";
|
|
2389
2793
|
casbin: "casbin";
|
|
2390
2794
|
goth: "goth";
|
|
@@ -2393,6 +2797,9 @@ declare const router: {
|
|
|
2393
2797
|
none: "none";
|
|
2394
2798
|
testify: "testify";
|
|
2395
2799
|
gomock: "gomock";
|
|
2800
|
+
testcontainers: "testcontainers";
|
|
2801
|
+
"ginkgo-gomega": "ginkgo-gomega";
|
|
2802
|
+
mockery: "mockery";
|
|
2396
2803
|
}>>>;
|
|
2397
2804
|
goRealtime: z.ZodOptional<z.ZodEnum<{
|
|
2398
2805
|
none: "none";
|
|
@@ -2403,6 +2810,8 @@ declare const router: {
|
|
|
2403
2810
|
none: "none";
|
|
2404
2811
|
nats: "nats";
|
|
2405
2812
|
watermill: "watermill";
|
|
2813
|
+
"kafka-go": "kafka-go";
|
|
2814
|
+
asynq: "asynq";
|
|
2406
2815
|
}>>;
|
|
2407
2816
|
goCaching: z.ZodOptional<z.ZodEnum<{
|
|
2408
2817
|
none: "none";
|
|
@@ -2417,6 +2826,31 @@ declare const router: {
|
|
|
2417
2826
|
goObservability: z.ZodOptional<z.ZodEnum<{
|
|
2418
2827
|
none: "none";
|
|
2419
2828
|
opentelemetry: "opentelemetry";
|
|
2829
|
+
prometheus: "prometheus";
|
|
2830
|
+
}>>;
|
|
2831
|
+
goValidation: z.ZodOptional<z.ZodEnum<{
|
|
2832
|
+
none: "none";
|
|
2833
|
+
validator: "validator";
|
|
2834
|
+
}>>;
|
|
2835
|
+
goQuality: z.ZodOptional<z.ZodEnum<{
|
|
2836
|
+
none: "none";
|
|
2837
|
+
"golangci-lint": "golangci-lint";
|
|
2838
|
+
}>>;
|
|
2839
|
+
goMigrations: z.ZodOptional<z.ZodEnum<{
|
|
2840
|
+
none: "none";
|
|
2841
|
+
"golang-migrate": "golang-migrate";
|
|
2842
|
+
}>>;
|
|
2843
|
+
goTemplating: z.ZodOptional<z.ZodEnum<{
|
|
2844
|
+
none: "none";
|
|
2845
|
+
templ: "templ";
|
|
2846
|
+
}>>;
|
|
2847
|
+
goProtoTooling: z.ZodOptional<z.ZodEnum<{
|
|
2848
|
+
none: "none";
|
|
2849
|
+
buf: "buf";
|
|
2850
|
+
}>>;
|
|
2851
|
+
goDI: z.ZodOptional<z.ZodEnum<{
|
|
2852
|
+
none: "none";
|
|
2853
|
+
fx: "fx";
|
|
2420
2854
|
}>>;
|
|
2421
2855
|
javaLanguage: z.ZodOptional<z.ZodEnum<{
|
|
2422
2856
|
java: "java";
|
|
@@ -2475,12 +2909,32 @@ declare const router: {
|
|
|
2475
2909
|
thymeleaf: "thymeleaf";
|
|
2476
2910
|
"spring-amqp": "spring-amqp";
|
|
2477
2911
|
"opentelemetry-java": "opentelemetry-java";
|
|
2912
|
+
"spring-data-redis": "spring-data-redis";
|
|
2913
|
+
"spring-data-mongodb": "spring-data-mongodb";
|
|
2914
|
+
"spring-data-elasticsearch": "spring-data-elasticsearch";
|
|
2915
|
+
"spring-data-neo4j": "spring-data-neo4j";
|
|
2916
|
+
"spring-data-cassandra": "spring-data-cassandra";
|
|
2917
|
+
"spring-data-couchbase": "spring-data-couchbase";
|
|
2918
|
+
"spring-data-jdbc": "spring-data-jdbc";
|
|
2919
|
+
"spring-data-rest": "spring-data-rest";
|
|
2920
|
+
"spring-quartz": "spring-quartz";
|
|
2921
|
+
"spring-pulsar": "spring-pulsar";
|
|
2922
|
+
"spring-integration": "spring-integration";
|
|
2923
|
+
"spring-websocket": "spring-websocket";
|
|
2924
|
+
"spring-rsocket": "spring-rsocket";
|
|
2925
|
+
"spring-hateoas": "spring-hateoas";
|
|
2926
|
+
"spring-session-redis": "spring-session-redis";
|
|
2927
|
+
"spring-session-jdbc": "spring-session-jdbc";
|
|
2928
|
+
"spring-ldap": "spring-ldap";
|
|
2929
|
+
"spring-oauth2-client": "spring-oauth2-client";
|
|
2930
|
+
"spring-saml2": "spring-saml2";
|
|
2931
|
+
"spring-restclient": "spring-restclient";
|
|
2478
2932
|
}>>>;
|
|
2479
2933
|
javaTestingLibraries: z.ZodOptional<z.ZodArray<z.ZodEnum<{
|
|
2480
2934
|
none: "none";
|
|
2935
|
+
testcontainers: "testcontainers";
|
|
2481
2936
|
junit5: "junit5";
|
|
2482
2937
|
mockito: "mockito";
|
|
2483
|
-
testcontainers: "testcontainers";
|
|
2484
2938
|
assertj: "assertj";
|
|
2485
2939
|
"rest-assured": "rest-assured";
|
|
2486
2940
|
wiremock: "wiremock";
|
|
@@ -2552,6 +3006,29 @@ declare const router: {
|
|
|
2552
3006
|
azure: "azure";
|
|
2553
3007
|
aws: "aws";
|
|
2554
3008
|
}>>;
|
|
3009
|
+
dotnetLibraries: z.ZodOptional<z.ZodArray<z.ZodEnum<{
|
|
3010
|
+
none: "none";
|
|
3011
|
+
sentry: "sentry";
|
|
3012
|
+
automapper: "automapper";
|
|
3013
|
+
mediatr: "mediatr";
|
|
3014
|
+
fastendpoints: "fastendpoints";
|
|
3015
|
+
"api-versioning": "api-versioning";
|
|
3016
|
+
scalar: "scalar";
|
|
3017
|
+
polly: "polly";
|
|
3018
|
+
masstransit: "masstransit";
|
|
3019
|
+
rebus: "rebus";
|
|
3020
|
+
coravel: "coravel";
|
|
3021
|
+
"magic-onion": "magic-onion";
|
|
3022
|
+
"prometheus-net": "prometheus-net";
|
|
3023
|
+
seq: "seq";
|
|
3024
|
+
"application-insights": "application-insights";
|
|
3025
|
+
"mongodb-driver": "mongodb-driver";
|
|
3026
|
+
nhibernate: "nhibernate";
|
|
3027
|
+
mapster: "mapster";
|
|
3028
|
+
scrutor: "scrutor";
|
|
3029
|
+
refit: "refit";
|
|
3030
|
+
"fluent-email": "fluent-email";
|
|
3031
|
+
}>>>;
|
|
2555
3032
|
elixirWebFramework: z.ZodOptional<z.ZodEnum<{
|
|
2556
3033
|
none: "none";
|
|
2557
3034
|
phoenix: "phoenix";
|
|
@@ -2561,18 +3038,22 @@ declare const router: {
|
|
|
2561
3038
|
none: "none";
|
|
2562
3039
|
ecto: "ecto";
|
|
2563
3040
|
"ecto-sql": "ecto-sql";
|
|
3041
|
+
myxql: "myxql";
|
|
3042
|
+
ecto_sqlite3: "ecto_sqlite3";
|
|
2564
3043
|
}>>;
|
|
2565
3044
|
elixirAuth: z.ZodOptional<z.ZodEnum<{
|
|
2566
3045
|
none: "none";
|
|
2567
3046
|
"phx-gen-auth": "phx-gen-auth";
|
|
2568
3047
|
ueberauth: "ueberauth";
|
|
2569
3048
|
guardian: "guardian";
|
|
3049
|
+
pow: "pow";
|
|
2570
3050
|
}>>;
|
|
2571
3051
|
elixirApi: z.ZodOptional<z.ZodEnum<{
|
|
2572
3052
|
none: "none";
|
|
2573
3053
|
grpc: "grpc";
|
|
2574
3054
|
rest: "rest";
|
|
2575
3055
|
absinthe: "absinthe";
|
|
3056
|
+
open_api_spex: "open_api_spex";
|
|
2576
3057
|
}>>;
|
|
2577
3058
|
elixirRealtime: z.ZodOptional<z.ZodEnum<{
|
|
2578
3059
|
none: "none";
|
|
@@ -2595,6 +3076,7 @@ declare const router: {
|
|
|
2595
3076
|
none: "none";
|
|
2596
3077
|
req: "req";
|
|
2597
3078
|
finch: "finch";
|
|
3079
|
+
tesla: "tesla";
|
|
2598
3080
|
}>>;
|
|
2599
3081
|
elixirJson: z.ZodOptional<z.ZodEnum<{
|
|
2600
3082
|
none: "none";
|
|
@@ -2603,15 +3085,18 @@ declare const router: {
|
|
|
2603
3085
|
elixirEmail: z.ZodOptional<z.ZodEnum<{
|
|
2604
3086
|
none: "none";
|
|
2605
3087
|
swoosh: "swoosh";
|
|
3088
|
+
bamboo: "bamboo";
|
|
2606
3089
|
}>>;
|
|
2607
3090
|
elixirCaching: z.ZodOptional<z.ZodEnum<{
|
|
2608
3091
|
none: "none";
|
|
2609
3092
|
cachex: "cachex";
|
|
2610
3093
|
nebulex: "nebulex";
|
|
3094
|
+
redix: "redix";
|
|
2611
3095
|
}>>;
|
|
2612
3096
|
elixirObservability: z.ZodOptional<z.ZodEnum<{
|
|
2613
3097
|
none: "none";
|
|
2614
3098
|
opentelemetry: "opentelemetry";
|
|
3099
|
+
sentry: "sentry";
|
|
2615
3100
|
telemetry: "telemetry";
|
|
2616
3101
|
prom_ex: "prom_ex";
|
|
2617
3102
|
}>>;
|
|
@@ -2621,12 +3106,37 @@ declare const router: {
|
|
|
2621
3106
|
mox: "mox";
|
|
2622
3107
|
bypass: "bypass";
|
|
2623
3108
|
wallaby: "wallaby";
|
|
3109
|
+
stream_data: "stream_data";
|
|
3110
|
+
ex_machina: "ex_machina";
|
|
2624
3111
|
}>>;
|
|
2625
3112
|
elixirQuality: z.ZodOptional<z.ZodEnum<{
|
|
2626
3113
|
none: "none";
|
|
2627
3114
|
credo: "credo";
|
|
2628
3115
|
dialyxir: "dialyxir";
|
|
2629
3116
|
sobelow: "sobelow";
|
|
3117
|
+
excoveralls: "excoveralls";
|
|
3118
|
+
mix_audit: "mix_audit";
|
|
3119
|
+
}>>;
|
|
3120
|
+
elixirI18n: z.ZodOptional<z.ZodEnum<{
|
|
3121
|
+
none: "none";
|
|
3122
|
+
gettext: "gettext";
|
|
3123
|
+
}>>;
|
|
3124
|
+
elixirHttpServer: z.ZodOptional<z.ZodEnum<{
|
|
3125
|
+
none: "none";
|
|
3126
|
+
bandit: "bandit";
|
|
3127
|
+
cowboy: "cowboy";
|
|
3128
|
+
}>>;
|
|
3129
|
+
elixirApplicationFramework: z.ZodOptional<z.ZodEnum<{
|
|
3130
|
+
none: "none";
|
|
3131
|
+
ash: "ash";
|
|
3132
|
+
}>>;
|
|
3133
|
+
elixirDocumentation: z.ZodOptional<z.ZodEnum<{
|
|
3134
|
+
none: "none";
|
|
3135
|
+
ex_doc: "ex_doc";
|
|
3136
|
+
}>>;
|
|
3137
|
+
elixirClustering: z.ZodOptional<z.ZodEnum<{
|
|
3138
|
+
none: "none";
|
|
3139
|
+
libcluster: "libcluster";
|
|
2630
3140
|
}>>;
|
|
2631
3141
|
elixirDeploy: z.ZodOptional<z.ZodEnum<{
|
|
2632
3142
|
none: "none";
|
|
@@ -2639,6 +3149,9 @@ declare const router: {
|
|
|
2639
3149
|
none: "none";
|
|
2640
3150
|
nx: "nx";
|
|
2641
3151
|
broadway: "broadway";
|
|
3152
|
+
ex_aws: "ex_aws";
|
|
3153
|
+
floki: "floki";
|
|
3154
|
+
rustler: "rustler";
|
|
2642
3155
|
}>>>;
|
|
2643
3156
|
part: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
2644
3157
|
dryRun: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
@@ -2657,6 +3170,8 @@ declare const router: {
|
|
|
2657
3170
|
"tanstack-router": "tanstack-router";
|
|
2658
3171
|
"react-router": "react-router";
|
|
2659
3172
|
"react-vite": "react-vite";
|
|
3173
|
+
"vanilla-vite": "vanilla-vite";
|
|
3174
|
+
vue: "vue";
|
|
2660
3175
|
"tanstack-start": "tanstack-start";
|
|
2661
3176
|
next: "next";
|
|
2662
3177
|
vinext: "vinext";
|
|
@@ -2703,6 +3218,15 @@ declare const router: {
|
|
|
2703
3218
|
devcontainer: "devcontainer";
|
|
2704
3219
|
"docker-compose": "docker-compose";
|
|
2705
3220
|
"github-actions": "github-actions";
|
|
3221
|
+
eslint: "eslint";
|
|
3222
|
+
prettier: "prettier";
|
|
3223
|
+
axios: "axios";
|
|
3224
|
+
firebase: "firebase";
|
|
3225
|
+
"graphql-codegen": "graphql-codegen";
|
|
3226
|
+
"openapi-typescript": "openapi-typescript";
|
|
3227
|
+
"apollo-client": "apollo-client";
|
|
3228
|
+
electron: "electron";
|
|
3229
|
+
capacitor: "capacitor";
|
|
2706
3230
|
}>>>;
|
|
2707
3231
|
projectDir: z.ZodOptional<z.ZodString>;
|
|
2708
3232
|
acknowledgeArchitectureChange: z.ZodOptional<z.ZodBoolean>;
|
|
@@ -2882,8 +3406,14 @@ type Frontend = import__better_fullstack_types.Frontend;
|
|
|
2882
3406
|
type GoApi = import__better_fullstack_types.GoApi;
|
|
2883
3407
|
type GoAuth = import__better_fullstack_types.GoAuth;
|
|
2884
3408
|
type GoCli = import__better_fullstack_types.GoCli;
|
|
3409
|
+
type GoDI = import__better_fullstack_types.GoDI;
|
|
2885
3410
|
type GoLogging = import__better_fullstack_types.GoLogging;
|
|
3411
|
+
type GoMigrations = import__better_fullstack_types.GoMigrations;
|
|
2886
3412
|
type GoOrm = import__better_fullstack_types.GoOrm;
|
|
3413
|
+
type GoProtoTooling = import__better_fullstack_types.GoProtoTooling;
|
|
3414
|
+
type GoQuality = import__better_fullstack_types.GoQuality;
|
|
3415
|
+
type GoTemplating = import__better_fullstack_types.GoTemplating;
|
|
3416
|
+
type GoValidation = import__better_fullstack_types.GoValidation;
|
|
2887
3417
|
type GoWebFramework = import__better_fullstack_types.GoWebFramework;
|
|
2888
3418
|
type InitResult = import__better_fullstack_types.InitResult;
|
|
2889
3419
|
type JavaAuth = import__better_fullstack_types.JavaAuth;
|
|
@@ -2915,4 +3445,4 @@ type ServerDeploy = import__better_fullstack_types.ServerDeploy;
|
|
|
2915
3445
|
type Template = import__better_fullstack_types.Template;
|
|
2916
3446
|
type UILibrary = import__better_fullstack_types.UILibrary;
|
|
2917
3447
|
type WebDeploy = import__better_fullstack_types.WebDeploy;
|
|
2918
|
-
export { type API, type AddInput, type AddResult, type Addons, type AiDocs, type Analytics, type Animation, type Auth, type Backend, type BetterTStackConfig, type CMS, type CSSFramework, type Caching, type CreateInput, type Database, type DatabaseSetup, type DirectoryConflict, EMBEDDED_TEMPLATES, type Ecosystem, type Effect, type ElixirApi, type ElixirAuth, type ElixirCaching, type ElixirDeploy, type ElixirEmail, type ElixirHttp, type ElixirJobs, type ElixirJson, type ElixirObservability, type ElixirOrm, type ElixirQuality, type ElixirRealtime, type ElixirTesting, type ElixirValidation, type ElixirWebFramework, type Examples, type Frontend, type GeneratorOptions, type GeneratorResult, type GoApi, type GoAuth, type GoCli, type GoLogging, type GoOrm, type GoWebFramework, type InitResult, type JavaAuth, type JavaBuildTool, type JavaLibraries, type JavaOrm, type JavaTestingLibraries, type JavaWebFramework, type Logging, type ORM, type PackageManager, type Payments, type PythonAi, type PythonOrm, type PythonQuality, type PythonTaskQueue, type PythonValidation, type PythonWebFramework, type Realtime, type Runtime, type RustApi, type RustCli, type RustFrontend, type RustLibraries, type RustLogging, type RustOrm, type RustWebFramework, type ServerDeploy, TEMPLATE_COUNT, type Template, type UILibrary, type VirtualDirectory, type VirtualFile, VirtualFileSystem, type VirtualFileTree, type VirtualNode, type WebDeploy, add, builder, check, create, createBtsCli, createVirtual, docs, doctor, generateVirtualProject, history, router, sponsors, telemetry, update };
|
|
3448
|
+
export { type API, type AddInput, type AddResult, type Addons, type AiDocs, type Analytics, type Animation, type Auth, type Backend, type BetterTStackConfig, type CMS, type CSSFramework, type Caching, type CreateInput, type Database, type DatabaseSetup, type DirectoryConflict, EMBEDDED_TEMPLATES, type Ecosystem, type Effect, type ElixirApi, type ElixirAuth, type ElixirCaching, type ElixirDeploy, type ElixirEmail, type ElixirHttp, type ElixirJobs, type ElixirJson, type ElixirObservability, type ElixirOrm, type ElixirQuality, type ElixirRealtime, type ElixirTesting, type ElixirValidation, type ElixirWebFramework, type Examples, type Frontend, type GeneratorOptions, type GeneratorResult, type GoApi, type GoAuth, type GoCli, type GoDI, type GoLogging, type GoMigrations, type GoOrm, type GoProtoTooling, type GoQuality, type GoTemplating, type GoValidation, type GoWebFramework, type InitResult, type JavaAuth, type JavaBuildTool, type JavaLibraries, type JavaOrm, type JavaTestingLibraries, type JavaWebFramework, type Logging, type ORM, type PackageManager, type Payments, type PythonAi, type PythonOrm, type PythonQuality, type PythonTaskQueue, type PythonValidation, type PythonWebFramework, type Realtime, type Runtime, type RustApi, type RustCli, type RustFrontend, type RustLibraries, type RustLogging, type RustOrm, type RustWebFramework, type ServerDeploy, TEMPLATE_COUNT, type Template, type UILibrary, type VirtualDirectory, type VirtualFile, VirtualFileSystem, type VirtualFileTree, type VirtualNode, type WebDeploy, add, builder, check, create, createBtsCli, createVirtual, docs, doctor, generateVirtualProject, history, router, sponsors, telemetry, update };
|