create-better-fullstack 2.0.0 → 2.0.2
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/dist/add-handler-BPAZM8Zo.mjs +149 -0
- package/dist/addons-setup-CV5uZyhH.mjs +5 -0
- package/dist/{addons-setup-DHoByttt.mjs → addons-setup-HSghQS7c.mjs} +29 -33
- package/dist/bts-config-Bg1Qea9Y.mjs +737 -0
- package/dist/cli.mjs +2 -2
- package/dist/index.d.mts +404 -96
- package/dist/index.mjs +38 -11545
- package/dist/install-dependencies-D6-GO3BZ.mjs +1139 -0
- package/dist/mcp-58r70ZcL.mjs +5 -0
- package/dist/mcp-entry.mjs +377 -543
- package/dist/run-DQlymC4z.mjs +11546 -0
- package/dist/run-QRBymn-p.mjs +7 -0
- package/dist/update-deps-CLebIM70.mjs +189 -0
- package/package.json +7 -10
- package/dist/addons-setup-Ca069cmy.mjs +0 -5
- package/dist/bts-config-BMniWIbd.mjs +0 -497
- package/dist/mcp-YvDMaVXB.mjs +0 -5
package/dist/index.d.mts
CHANGED
|
@@ -17,15 +17,15 @@ interface AddResult {
|
|
|
17
17
|
setupWarnings?: string[];
|
|
18
18
|
}
|
|
19
19
|
//#endregion
|
|
20
|
-
//#region src/
|
|
20
|
+
//#region src/run.d.ts
|
|
21
21
|
declare const router: {
|
|
22
22
|
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<{
|
|
23
23
|
template: z.ZodOptional<z.ZodEnum<{
|
|
24
24
|
none: "none";
|
|
25
|
+
uniwind: "uniwind";
|
|
25
26
|
mern: "mern";
|
|
26
27
|
pern: "pern";
|
|
27
28
|
t3: "t3";
|
|
28
|
-
uniwind: "uniwind";
|
|
29
29
|
}>>;
|
|
30
30
|
yes: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
31
31
|
yolo: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
@@ -41,6 +41,7 @@ declare const router: {
|
|
|
41
41
|
go: "go";
|
|
42
42
|
java: "java";
|
|
43
43
|
elixir: "elixir";
|
|
44
|
+
dotnet: "dotnet";
|
|
44
45
|
}>>;
|
|
45
46
|
database: z.ZodOptional<z.ZodEnum<{
|
|
46
47
|
none: "none";
|
|
@@ -64,12 +65,15 @@ declare const router: {
|
|
|
64
65
|
auth: z.ZodOptional<z.ZodEnum<{
|
|
65
66
|
none: "none";
|
|
66
67
|
"better-auth": "better-auth";
|
|
68
|
+
"better-auth-organizations": "better-auth-organizations";
|
|
67
69
|
"go-better-auth": "go-better-auth";
|
|
68
70
|
clerk: "clerk";
|
|
69
71
|
nextauth: "nextauth";
|
|
70
72
|
"stack-auth": "stack-auth";
|
|
71
73
|
"supabase-auth": "supabase-auth";
|
|
72
74
|
auth0: "auth0";
|
|
75
|
+
workos: "workos";
|
|
76
|
+
kinde: "kinde";
|
|
73
77
|
}>>;
|
|
74
78
|
payments: z.ZodOptional<z.ZodEnum<{
|
|
75
79
|
none: "none";
|
|
@@ -97,8 +101,8 @@ declare const router: {
|
|
|
97
101
|
uppy: "uppy";
|
|
98
102
|
}>>;
|
|
99
103
|
effect: z.ZodOptional<z.ZodEnum<{
|
|
100
|
-
none: "none";
|
|
101
104
|
effect: "effect";
|
|
105
|
+
none: "none";
|
|
102
106
|
"effect-full": "effect-full";
|
|
103
107
|
}>>;
|
|
104
108
|
stateManagement: z.ZodOptional<z.ZodEnum<{
|
|
@@ -189,6 +193,9 @@ declare const router: {
|
|
|
189
193
|
opentelemetry: "opentelemetry";
|
|
190
194
|
sentry: "sentry";
|
|
191
195
|
grafana: "grafana";
|
|
196
|
+
datadog: "datadog";
|
|
197
|
+
axiom: "axiom";
|
|
198
|
+
betterstack: "betterstack";
|
|
192
199
|
}>>;
|
|
193
200
|
featureFlags: z.ZodOptional<z.ZodEnum<{
|
|
194
201
|
none: "none";
|
|
@@ -215,6 +222,11 @@ declare const router: {
|
|
|
215
222
|
none: "none";
|
|
216
223
|
"upstash-redis": "upstash-redis";
|
|
217
224
|
}>>;
|
|
225
|
+
rateLimit: z.ZodOptional<z.ZodEnum<{
|
|
226
|
+
none: "none";
|
|
227
|
+
arcjet: "arcjet";
|
|
228
|
+
"upstash-ratelimit": "upstash-ratelimit";
|
|
229
|
+
}>>;
|
|
218
230
|
i18n: z.ZodOptional<z.ZodEnum<{
|
|
219
231
|
none: "none";
|
|
220
232
|
i18next: "i18next";
|
|
@@ -240,9 +252,9 @@ declare const router: {
|
|
|
240
252
|
}>>;
|
|
241
253
|
mobileUI: z.ZodOptional<z.ZodEnum<{
|
|
242
254
|
none: "none";
|
|
243
|
-
uniwind: "uniwind";
|
|
244
255
|
tamagui: "tamagui";
|
|
245
256
|
"gluestack-ui": "gluestack-ui";
|
|
257
|
+
uniwind: "uniwind";
|
|
246
258
|
unistyles: "unistyles";
|
|
247
259
|
}>>;
|
|
248
260
|
mobileStorage: z.ZodOptional<z.ZodEnum<{
|
|
@@ -320,11 +332,12 @@ declare const router: {
|
|
|
320
332
|
"tanstack-virtual": "tanstack-virtual";
|
|
321
333
|
"tanstack-db": "tanstack-db";
|
|
322
334
|
"tanstack-pacer": "tanstack-pacer";
|
|
335
|
+
"backend-utils": "backend-utils";
|
|
323
336
|
"docker-compose": "docker-compose";
|
|
324
337
|
}>>>;
|
|
325
338
|
examples: z.ZodOptional<z.ZodArray<z.ZodEnum<{
|
|
326
|
-
none: "none";
|
|
327
339
|
ai: "ai";
|
|
340
|
+
none: "none";
|
|
328
341
|
"chat-sdk": "chat-sdk";
|
|
329
342
|
"tanstack-showcase": "tanstack-showcase";
|
|
330
343
|
}>>>;
|
|
@@ -471,8 +484,8 @@ declare const router: {
|
|
|
471
484
|
"geist-mono": "geist-mono";
|
|
472
485
|
}>>;
|
|
473
486
|
shadcnRadius: z.ZodOptional<z.ZodEnum<{
|
|
474
|
-
none: "none";
|
|
475
487
|
default: "default";
|
|
488
|
+
none: "none";
|
|
476
489
|
small: "small";
|
|
477
490
|
medium: "medium";
|
|
478
491
|
large: "large";
|
|
@@ -483,6 +496,8 @@ declare const router: {
|
|
|
483
496
|
cloudflare: "cloudflare";
|
|
484
497
|
fly: "fly";
|
|
485
498
|
railway: "railway";
|
|
499
|
+
render: "render";
|
|
500
|
+
netlify: "netlify";
|
|
486
501
|
sst: "sst";
|
|
487
502
|
vercel: "vercel";
|
|
488
503
|
}>>;
|
|
@@ -492,14 +507,16 @@ declare const router: {
|
|
|
492
507
|
cloudflare: "cloudflare";
|
|
493
508
|
fly: "fly";
|
|
494
509
|
railway: "railway";
|
|
510
|
+
render: "render";
|
|
511
|
+
netlify: "netlify";
|
|
495
512
|
sst: "sst";
|
|
496
513
|
vercel: "vercel";
|
|
497
514
|
}>>;
|
|
498
515
|
directoryConflict: z.ZodOptional<z.ZodEnum<{
|
|
516
|
+
error: "error";
|
|
499
517
|
merge: "merge";
|
|
500
518
|
overwrite: "overwrite";
|
|
501
519
|
increment: "increment";
|
|
502
|
-
error: "error";
|
|
503
520
|
}>>;
|
|
504
521
|
renderTitle: z.ZodOptional<z.ZodBoolean>;
|
|
505
522
|
disableAnalytics: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
@@ -532,12 +549,12 @@ declare const router: {
|
|
|
532
549
|
ratatui: "ratatui";
|
|
533
550
|
}>>;
|
|
534
551
|
rustLibraries: z.ZodOptional<z.ZodArray<z.ZodEnum<{
|
|
552
|
+
config: "config";
|
|
535
553
|
none: "none";
|
|
536
554
|
serde: "serde";
|
|
537
555
|
uuid: "uuid";
|
|
538
556
|
chrono: "chrono";
|
|
539
557
|
reqwest: "reqwest";
|
|
540
|
-
config: "config";
|
|
541
558
|
dashmap: "dashmap";
|
|
542
559
|
"parking-lot": "parking-lot";
|
|
543
560
|
secrecy: "secrecy";
|
|
@@ -569,6 +586,24 @@ declare const router: {
|
|
|
569
586
|
rustAuth: z.ZodOptional<z.ZodEnum<{
|
|
570
587
|
none: "none";
|
|
571
588
|
oauth2: "oauth2";
|
|
589
|
+
torii: "torii";
|
|
590
|
+
}>>;
|
|
591
|
+
rustRealtime: z.ZodOptional<z.ZodEnum<{
|
|
592
|
+
none: "none";
|
|
593
|
+
"tokio-tungstenite": "tokio-tungstenite";
|
|
594
|
+
}>>;
|
|
595
|
+
rustMessageQueue: z.ZodOptional<z.ZodEnum<{
|
|
596
|
+
none: "none";
|
|
597
|
+
lapin: "lapin";
|
|
598
|
+
}>>;
|
|
599
|
+
rustObservability: z.ZodOptional<z.ZodEnum<{
|
|
600
|
+
none: "none";
|
|
601
|
+
opentelemetry: "opentelemetry";
|
|
602
|
+
}>>;
|
|
603
|
+
rustTemplating: z.ZodOptional<z.ZodEnum<{
|
|
604
|
+
none: "none";
|
|
605
|
+
askama: "askama";
|
|
606
|
+
tera: "tera";
|
|
572
607
|
}>>;
|
|
573
608
|
pythonWebFramework: z.ZodOptional<z.ZodEnum<{
|
|
574
609
|
none: "none";
|
|
@@ -576,12 +611,14 @@ declare const router: {
|
|
|
576
611
|
django: "django";
|
|
577
612
|
flask: "flask";
|
|
578
613
|
litestar: "litestar";
|
|
614
|
+
starlette: "starlette";
|
|
579
615
|
}>>;
|
|
580
616
|
pythonOrm: z.ZodOptional<z.ZodEnum<{
|
|
581
617
|
none: "none";
|
|
582
618
|
sqlalchemy: "sqlalchemy";
|
|
583
619
|
sqlmodel: "sqlmodel";
|
|
584
620
|
"tortoise-orm": "tortoise-orm";
|
|
621
|
+
peewee: "peewee";
|
|
585
622
|
}>>;
|
|
586
623
|
pythonValidation: z.ZodOptional<z.ZodEnum<{
|
|
587
624
|
none: "none";
|
|
@@ -590,17 +627,21 @@ declare const router: {
|
|
|
590
627
|
pythonAi: z.ZodOptional<z.ZodArray<z.ZodEnum<{
|
|
591
628
|
none: "none";
|
|
592
629
|
langgraph: "langgraph";
|
|
630
|
+
"google-adk": "google-adk";
|
|
593
631
|
langchain: "langchain";
|
|
594
632
|
llamaindex: "llamaindex";
|
|
595
633
|
"openai-sdk": "openai-sdk";
|
|
596
634
|
"anthropic-sdk": "anthropic-sdk";
|
|
597
635
|
crewai: "crewai";
|
|
598
636
|
haystack: "haystack";
|
|
637
|
+
"pydantic-ai": "pydantic-ai";
|
|
638
|
+
smolagents: "smolagents";
|
|
599
639
|
}>>>;
|
|
600
640
|
pythonAuth: z.ZodOptional<z.ZodEnum<{
|
|
601
641
|
none: "none";
|
|
602
642
|
authlib: "authlib";
|
|
603
643
|
jwt: "jwt";
|
|
644
|
+
"fastapi-users": "fastapi-users";
|
|
604
645
|
}>>;
|
|
605
646
|
pythonApi: z.ZodOptional<z.ZodEnum<{
|
|
606
647
|
none: "none";
|
|
@@ -613,6 +654,7 @@ declare const router: {
|
|
|
613
654
|
rq: "rq";
|
|
614
655
|
dramatiq: "dramatiq";
|
|
615
656
|
huey: "huey";
|
|
657
|
+
taskiq: "taskiq";
|
|
616
658
|
}>>;
|
|
617
659
|
pythonGraphql: z.ZodOptional<z.ZodEnum<{
|
|
618
660
|
none: "none";
|
|
@@ -625,6 +667,31 @@ declare const router: {
|
|
|
625
667
|
mypy: "mypy";
|
|
626
668
|
pyright: "pyright";
|
|
627
669
|
}>>;
|
|
670
|
+
pythonTesting: z.ZodOptional<z.ZodArray<z.ZodEnum<{
|
|
671
|
+
none: "none";
|
|
672
|
+
pytest: "pytest";
|
|
673
|
+
hypothesis: "hypothesis";
|
|
674
|
+
}>>>;
|
|
675
|
+
pythonCaching: z.ZodOptional<z.ZodEnum<{
|
|
676
|
+
none: "none";
|
|
677
|
+
redis: "redis";
|
|
678
|
+
aiocache: "aiocache";
|
|
679
|
+
}>>;
|
|
680
|
+
pythonRealtime: z.ZodOptional<z.ZodEnum<{
|
|
681
|
+
none: "none";
|
|
682
|
+
"python-socketio": "python-socketio";
|
|
683
|
+
websockets: "websockets";
|
|
684
|
+
}>>;
|
|
685
|
+
pythonObservability: z.ZodOptional<z.ZodEnum<{
|
|
686
|
+
none: "none";
|
|
687
|
+
opentelemetry: "opentelemetry";
|
|
688
|
+
}>>;
|
|
689
|
+
pythonCli: z.ZodOptional<z.ZodArray<z.ZodEnum<{
|
|
690
|
+
none: "none";
|
|
691
|
+
typer: "typer";
|
|
692
|
+
click: "click";
|
|
693
|
+
rich: "rich";
|
|
694
|
+
}>>>;
|
|
628
695
|
goWebFramework: z.ZodOptional<z.ZodEnum<{
|
|
629
696
|
none: "none";
|
|
630
697
|
gin: "gin";
|
|
@@ -641,6 +708,7 @@ declare const router: {
|
|
|
641
708
|
goApi: z.ZodOptional<z.ZodEnum<{
|
|
642
709
|
none: "none";
|
|
643
710
|
"grpc-go": "grpc-go";
|
|
711
|
+
gqlgen: "gqlgen";
|
|
644
712
|
}>>;
|
|
645
713
|
goCli: z.ZodOptional<z.ZodEnum<{
|
|
646
714
|
none: "none";
|
|
@@ -659,6 +727,36 @@ declare const router: {
|
|
|
659
727
|
none: "none";
|
|
660
728
|
jwt: "jwt";
|
|
661
729
|
casbin: "casbin";
|
|
730
|
+
goth: "goth";
|
|
731
|
+
}>>;
|
|
732
|
+
goTesting: z.ZodOptional<z.ZodArray<z.ZodEnum<{
|
|
733
|
+
none: "none";
|
|
734
|
+
testify: "testify";
|
|
735
|
+
gomock: "gomock";
|
|
736
|
+
}>>>;
|
|
737
|
+
goRealtime: z.ZodOptional<z.ZodEnum<{
|
|
738
|
+
none: "none";
|
|
739
|
+
"gorilla-websocket": "gorilla-websocket";
|
|
740
|
+
centrifuge: "centrifuge";
|
|
741
|
+
}>>;
|
|
742
|
+
goMessageQueue: z.ZodOptional<z.ZodEnum<{
|
|
743
|
+
none: "none";
|
|
744
|
+
nats: "nats";
|
|
745
|
+
watermill: "watermill";
|
|
746
|
+
}>>;
|
|
747
|
+
goCaching: z.ZodOptional<z.ZodEnum<{
|
|
748
|
+
none: "none";
|
|
749
|
+
redis: "redis";
|
|
750
|
+
ristretto: "ristretto";
|
|
751
|
+
}>>;
|
|
752
|
+
goConfig: z.ZodOptional<z.ZodEnum<{
|
|
753
|
+
none: "none";
|
|
754
|
+
viper: "viper";
|
|
755
|
+
koanf: "koanf";
|
|
756
|
+
}>>;
|
|
757
|
+
goObservability: z.ZodOptional<z.ZodEnum<{
|
|
758
|
+
none: "none";
|
|
759
|
+
opentelemetry: "opentelemetry";
|
|
662
760
|
}>>;
|
|
663
761
|
javaWebFramework: z.ZodOptional<z.ZodEnum<{
|
|
664
762
|
none: "none";
|
|
@@ -673,10 +771,21 @@ declare const router: {
|
|
|
673
771
|
javaOrm: z.ZodOptional<z.ZodEnum<{
|
|
674
772
|
none: "none";
|
|
675
773
|
"spring-data-jpa": "spring-data-jpa";
|
|
774
|
+
jooq: "jooq";
|
|
775
|
+
mybatis: "mybatis";
|
|
676
776
|
}>>;
|
|
677
777
|
javaAuth: z.ZodOptional<z.ZodEnum<{
|
|
678
778
|
none: "none";
|
|
679
779
|
"spring-security": "spring-security";
|
|
780
|
+
keycloak: "keycloak";
|
|
781
|
+
}>>;
|
|
782
|
+
javaApi: z.ZodOptional<z.ZodEnum<{
|
|
783
|
+
none: "none";
|
|
784
|
+
"spring-graphql": "spring-graphql";
|
|
785
|
+
}>>;
|
|
786
|
+
javaLogging: z.ZodOptional<z.ZodEnum<{
|
|
787
|
+
none: "none";
|
|
788
|
+
logback: "logback";
|
|
680
789
|
}>>;
|
|
681
790
|
javaLibraries: z.ZodOptional<z.ZodArray<z.ZodEnum<{
|
|
682
791
|
none: "none";
|
|
@@ -696,6 +805,8 @@ declare const router: {
|
|
|
696
805
|
"spring-devtools": "spring-devtools";
|
|
697
806
|
"micrometer-prometheus": "micrometer-prometheus";
|
|
698
807
|
thymeleaf: "thymeleaf";
|
|
808
|
+
"spring-amqp": "spring-amqp";
|
|
809
|
+
"opentelemetry-java": "opentelemetry-java";
|
|
699
810
|
}>>>;
|
|
700
811
|
javaTestingLibraries: z.ZodOptional<z.ZodArray<z.ZodEnum<{
|
|
701
812
|
none: "none";
|
|
@@ -709,6 +820,70 @@ declare const router: {
|
|
|
709
820
|
archunit: "archunit";
|
|
710
821
|
jqwik: "jqwik";
|
|
711
822
|
}>>>;
|
|
823
|
+
dotnetWebFramework: z.ZodOptional<z.ZodEnum<{
|
|
824
|
+
none: "none";
|
|
825
|
+
"aspnet-minimal": "aspnet-minimal";
|
|
826
|
+
"aspnet-mvc": "aspnet-mvc";
|
|
827
|
+
"aspnet-blazor": "aspnet-blazor";
|
|
828
|
+
}>>;
|
|
829
|
+
dotnetOrm: z.ZodOptional<z.ZodEnum<{
|
|
830
|
+
none: "none";
|
|
831
|
+
"ef-core": "ef-core";
|
|
832
|
+
dapper: "dapper";
|
|
833
|
+
linq2db: "linq2db";
|
|
834
|
+
}>>;
|
|
835
|
+
dotnetAuth: z.ZodOptional<z.ZodEnum<{
|
|
836
|
+
none: "none";
|
|
837
|
+
"aspnet-identity": "aspnet-identity";
|
|
838
|
+
"duende-identityserver": "duende-identityserver";
|
|
839
|
+
"auth0-aspnet": "auth0-aspnet";
|
|
840
|
+
}>>;
|
|
841
|
+
dotnetApi: z.ZodOptional<z.ZodEnum<{
|
|
842
|
+
none: "none";
|
|
843
|
+
"minimal-api": "minimal-api";
|
|
844
|
+
"graphql-hotchocolate": "graphql-hotchocolate";
|
|
845
|
+
"grpc-dotnet": "grpc-dotnet";
|
|
846
|
+
}>>;
|
|
847
|
+
dotnetTesting: z.ZodOptional<z.ZodArray<z.ZodEnum<{
|
|
848
|
+
none: "none";
|
|
849
|
+
xunit: "xunit";
|
|
850
|
+
nunit: "nunit";
|
|
851
|
+
moq: "moq";
|
|
852
|
+
"testcontainers-dotnet": "testcontainers-dotnet";
|
|
853
|
+
}>>>;
|
|
854
|
+
dotnetJobQueue: z.ZodOptional<z.ZodEnum<{
|
|
855
|
+
none: "none";
|
|
856
|
+
hangfire: "hangfire";
|
|
857
|
+
"quartz-net": "quartz-net";
|
|
858
|
+
"hosted-services": "hosted-services";
|
|
859
|
+
}>>;
|
|
860
|
+
dotnetRealtime: z.ZodOptional<z.ZodEnum<{
|
|
861
|
+
none: "none";
|
|
862
|
+
signalr: "signalr";
|
|
863
|
+
}>>;
|
|
864
|
+
dotnetObservability: z.ZodOptional<z.ZodArray<z.ZodEnum<{
|
|
865
|
+
none: "none";
|
|
866
|
+
"opentelemetry-dotnet": "opentelemetry-dotnet";
|
|
867
|
+
serilog: "serilog";
|
|
868
|
+
nlog: "nlog";
|
|
869
|
+
"health-checks": "health-checks";
|
|
870
|
+
}>>>;
|
|
871
|
+
dotnetValidation: z.ZodOptional<z.ZodEnum<{
|
|
872
|
+
none: "none";
|
|
873
|
+
fluentvalidation: "fluentvalidation";
|
|
874
|
+
"data-annotations": "data-annotations";
|
|
875
|
+
}>>;
|
|
876
|
+
dotnetCaching: z.ZodOptional<z.ZodEnum<{
|
|
877
|
+
none: "none";
|
|
878
|
+
redis: "redis";
|
|
879
|
+
"memory-cache": "memory-cache";
|
|
880
|
+
}>>;
|
|
881
|
+
dotnetDeploy: z.ZodOptional<z.ZodEnum<{
|
|
882
|
+
none: "none";
|
|
883
|
+
docker: "docker";
|
|
884
|
+
azure: "azure";
|
|
885
|
+
aws: "aws";
|
|
886
|
+
}>>;
|
|
712
887
|
elixirWebFramework: z.ZodOptional<z.ZodEnum<{
|
|
713
888
|
none: "none";
|
|
714
889
|
phoenix: "phoenix";
|
|
@@ -729,6 +904,7 @@ declare const router: {
|
|
|
729
904
|
none: "none";
|
|
730
905
|
rest: "rest";
|
|
731
906
|
absinthe: "absinthe";
|
|
907
|
+
grpc: "grpc";
|
|
732
908
|
}>>;
|
|
733
909
|
elixirRealtime: z.ZodOptional<z.ZodEnum<{
|
|
734
910
|
none: "none";
|
|
@@ -791,6 +967,11 @@ declare const router: {
|
|
|
791
967
|
gigalixir: "gigalixir";
|
|
792
968
|
"mix-release": "mix-release";
|
|
793
969
|
}>>;
|
|
970
|
+
elixirLibraries: z.ZodOptional<z.ZodArray<z.ZodEnum<{
|
|
971
|
+
none: "none";
|
|
972
|
+
broadway: "broadway";
|
|
973
|
+
nx: "nx";
|
|
974
|
+
}>>>;
|
|
794
975
|
aiDocs: z.ZodOptional<z.ZodArray<z.ZodEnum<{
|
|
795
976
|
none: "none";
|
|
796
977
|
"claude-md": "claude-md";
|
|
@@ -803,15 +984,15 @@ declare const router: {
|
|
|
803
984
|
projectName: string;
|
|
804
985
|
projectDir: string;
|
|
805
986
|
relativePath: string;
|
|
806
|
-
ecosystem: "typescript" | "react-native" | "rust" | "python" | "go" | "java" | "elixir";
|
|
987
|
+
ecosystem: "typescript" | "react-native" | "rust" | "python" | "go" | "java" | "elixir" | "dotnet";
|
|
807
988
|
database: "none" | "sqlite" | "postgres" | "mysql" | "mongodb" | "edgedb" | "redis";
|
|
808
989
|
orm: "none" | "drizzle" | "prisma" | "mongoose" | "typeorm" | "kysely" | "mikroorm" | "sequelize";
|
|
809
990
|
backend: "none" | "hono" | "express" | "fastify" | "elysia" | "fets" | "nestjs" | "adonisjs" | "nitro" | "encore" | "convex" | "self";
|
|
810
991
|
runtime: "none" | "bun" | "node" | "workers";
|
|
811
992
|
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")[];
|
|
812
|
-
addons: ("none" | "pwa" | "tauri" | "starlight" | "biome" | "lefthook" | "husky" | "ruler" | "mcp" | "skills" | "turborepo" | "fumadocs" | "ultracite" | "oxlint" | "opentui" | "wxt" | "msw" | "storybook" | "swr" | "tanstack-query" | "tanstack-table" | "tanstack-virtual" | "tanstack-db" | "tanstack-pacer" | "docker-compose")[];
|
|
993
|
+
addons: ("none" | "pwa" | "tauri" | "starlight" | "biome" | "lefthook" | "husky" | "ruler" | "mcp" | "skills" | "turborepo" | "fumadocs" | "ultracite" | "oxlint" | "opentui" | "wxt" | "msw" | "storybook" | "swr" | "tanstack-query" | "tanstack-table" | "tanstack-virtual" | "tanstack-db" | "tanstack-pacer" | "backend-utils" | "docker-compose")[];
|
|
813
994
|
examples: ("ai" | "none" | "chat-sdk" | "tanstack-showcase")[];
|
|
814
|
-
auth: "none" | "better-auth" | "go-better-auth" | "clerk" | "nextauth" | "stack-auth" | "supabase-auth" | "auth0";
|
|
995
|
+
auth: "none" | "better-auth" | "better-auth-organizations" | "go-better-auth" | "clerk" | "nextauth" | "stack-auth" | "supabase-auth" | "auth0" | "workos" | "kinde";
|
|
815
996
|
payments: "none" | "polar" | "stripe" | "lemon-squeezy" | "paddle" | "dodo";
|
|
816
997
|
git: boolean;
|
|
817
998
|
packageManager: "bun" | "npm" | "pnpm" | "yarn";
|
|
@@ -819,9 +1000,9 @@ declare const router: {
|
|
|
819
1000
|
install: boolean;
|
|
820
1001
|
dbSetup: "none" | "turso" | "neon" | "prisma-postgres" | "planetscale" | "mongodb-atlas" | "supabase" | "upstash" | "d1" | "docker";
|
|
821
1002
|
api: "none" | "trpc" | "orpc" | "ts-rest" | "garph" | "graphql-yoga";
|
|
822
|
-
webDeploy: "none" | "docker" | "cloudflare" | "fly" | "railway" | "sst" | "vercel";
|
|
823
|
-
serverDeploy: "none" | "docker" | "cloudflare" | "fly" | "railway" | "sst" | "vercel";
|
|
824
|
-
ai: "none" | "langgraph" | "langchain" | "llamaindex" | "vercel-ai" | "mastra" | "voltagent" | "openai-agents" | "
|
|
1003
|
+
webDeploy: "none" | "docker" | "cloudflare" | "fly" | "railway" | "render" | "netlify" | "sst" | "vercel";
|
|
1004
|
+
serverDeploy: "none" | "docker" | "cloudflare" | "fly" | "railway" | "render" | "netlify" | "sst" | "vercel";
|
|
1005
|
+
ai: "none" | "langgraph" | "google-adk" | "langchain" | "llamaindex" | "vercel-ai" | "mastra" | "voltagent" | "openai-agents" | "modelfusion" | "tanstack-ai" | "ai-cli";
|
|
825
1006
|
effect: "effect" | "none" | "effect-full";
|
|
826
1007
|
stateManagement: "none" | "zustand" | "jotai" | "nanostores" | "redux-toolkit" | "mobx" | "xstate" | "valtio" | "tanstack-store" | "legend-state";
|
|
827
1008
|
forms: "none" | "tanstack-form" | "react-hook-form" | "formik" | "final-form" | "conform" | "modular-forms";
|
|
@@ -835,11 +1016,12 @@ declare const router: {
|
|
|
835
1016
|
animation: "none" | "framer-motion" | "gsap" | "react-spring" | "auto-animate" | "lottie";
|
|
836
1017
|
fileUpload: "none" | "uploadthing" | "filepond" | "uppy";
|
|
837
1018
|
logging: "none" | "pino" | "winston" | "evlog";
|
|
838
|
-
observability: "none" | "opentelemetry" | "sentry" | "grafana";
|
|
1019
|
+
observability: "none" | "opentelemetry" | "sentry" | "grafana" | "datadog" | "axiom" | "betterstack";
|
|
839
1020
|
featureFlags: "none" | "growthbook" | "posthog" | "launchdarkly" | "flagsmith" | "unleash";
|
|
840
1021
|
analytics: "none" | "plausible" | "umami";
|
|
841
1022
|
cms: "none" | "payload" | "sanity" | "strapi" | "tinacms" | "directus";
|
|
842
1023
|
caching: "none" | "upstash-redis";
|
|
1024
|
+
rateLimit: "none" | "arcjet" | "upstash-ratelimit";
|
|
843
1025
|
i18n: "none" | "i18next" | "next-intl";
|
|
844
1026
|
search: "none" | "meilisearch" | "typesense" | "elasticsearch" | "algolia";
|
|
845
1027
|
fileStorage: "none" | "s3" | "r2" | "cloudinary";
|
|
@@ -855,36 +1037,64 @@ declare const router: {
|
|
|
855
1037
|
rustOrm: "none" | "sea-orm" | "sqlx" | "diesel";
|
|
856
1038
|
rustApi: "none" | "tonic" | "async-graphql";
|
|
857
1039
|
rustCli: "none" | "clap" | "ratatui";
|
|
858
|
-
rustLibraries: ("none" | "
|
|
1040
|
+
rustLibraries: ("none" | "config" | "serde" | "uuid" | "chrono" | "reqwest" | "dashmap" | "parking-lot" | "secrecy" | "tokio-util" | "utoipa" | "validator" | "jsonwebtoken" | "argon2" | "tokio-test" | "mockall" | "proptest" | "insta")[];
|
|
859
1041
|
rustLogging: "none" | "tracing" | "env-logger";
|
|
860
1042
|
rustErrorHandling: "none" | "anyhow-thiserror" | "eyre";
|
|
861
1043
|
rustCaching: "none" | "redis" | "moka";
|
|
862
|
-
rustAuth: "none" | "oauth2";
|
|
863
|
-
|
|
864
|
-
|
|
1044
|
+
rustAuth: "none" | "oauth2" | "torii";
|
|
1045
|
+
rustRealtime: "none" | "tokio-tungstenite";
|
|
1046
|
+
rustMessageQueue: "none" | "lapin";
|
|
1047
|
+
rustObservability: "none" | "opentelemetry";
|
|
1048
|
+
rustTemplating: "none" | "askama" | "tera";
|
|
1049
|
+
pythonWebFramework: "none" | "fastapi" | "django" | "flask" | "litestar" | "starlette";
|
|
1050
|
+
pythonOrm: "none" | "sqlalchemy" | "sqlmodel" | "tortoise-orm" | "peewee";
|
|
865
1051
|
pythonValidation: "none" | "pydantic";
|
|
866
|
-
pythonAi: ("none" | "langgraph" | "langchain" | "llamaindex" | "openai-sdk" | "anthropic-sdk" | "crewai" | "haystack")[];
|
|
867
|
-
pythonAuth: "none" | "authlib" | "jwt";
|
|
1052
|
+
pythonAi: ("none" | "langgraph" | "google-adk" | "langchain" | "llamaindex" | "openai-sdk" | "anthropic-sdk" | "crewai" | "haystack" | "pydantic-ai" | "smolagents")[];
|
|
1053
|
+
pythonAuth: "none" | "authlib" | "jwt" | "fastapi-users";
|
|
868
1054
|
pythonApi: "none" | "django-rest-framework" | "django-ninja";
|
|
869
|
-
pythonTaskQueue: "none" | "celery" | "rq" | "dramatiq" | "huey";
|
|
1055
|
+
pythonTaskQueue: "none" | "celery" | "rq" | "dramatiq" | "huey" | "taskiq";
|
|
870
1056
|
pythonGraphql: "none" | "strawberry" | "ariadne";
|
|
871
1057
|
pythonQuality: "none" | "ruff" | "mypy" | "pyright";
|
|
1058
|
+
pythonTesting: ("none" | "pytest" | "hypothesis")[];
|
|
1059
|
+
pythonCaching: "none" | "redis" | "aiocache";
|
|
1060
|
+
pythonRealtime: "none" | "python-socketio" | "websockets";
|
|
1061
|
+
pythonObservability: "none" | "opentelemetry";
|
|
1062
|
+
pythonCli: ("none" | "typer" | "click" | "rich")[];
|
|
872
1063
|
goWebFramework: "none" | "gin" | "echo" | "fiber" | "chi";
|
|
873
1064
|
goOrm: "none" | "gorm" | "sqlc" | "ent";
|
|
874
|
-
goApi: "none" | "grpc-go";
|
|
1065
|
+
goApi: "none" | "grpc-go" | "gqlgen";
|
|
875
1066
|
goCli: "none" | "cobra" | "bubbletea" | "urfave-cli";
|
|
876
1067
|
goLogging: "none" | "zap" | "zerolog" | "slog" | "logrus";
|
|
877
|
-
goAuth: "none" | "jwt" | "casbin";
|
|
1068
|
+
goAuth: "none" | "jwt" | "casbin" | "goth";
|
|
1069
|
+
goTesting: ("none" | "testify" | "gomock")[];
|
|
1070
|
+
goRealtime: "none" | "gorilla-websocket" | "centrifuge";
|
|
1071
|
+
goMessageQueue: "none" | "nats" | "watermill";
|
|
1072
|
+
goCaching: "none" | "redis" | "ristretto";
|
|
1073
|
+
goConfig: "none" | "viper" | "koanf";
|
|
1074
|
+
goObservability: "none" | "opentelemetry";
|
|
878
1075
|
javaWebFramework: "none" | "spring-boot" | "quarkus";
|
|
879
1076
|
javaBuildTool: "none" | "maven" | "gradle";
|
|
880
|
-
javaOrm: "none" | "spring-data-jpa";
|
|
881
|
-
javaAuth: "none" | "spring-security";
|
|
882
|
-
|
|
1077
|
+
javaOrm: "none" | "spring-data-jpa" | "jooq" | "mybatis";
|
|
1078
|
+
javaAuth: "none" | "spring-security" | "keycloak";
|
|
1079
|
+
javaApi: "none" | "spring-graphql";
|
|
1080
|
+
javaLogging: "none" | "logback";
|
|
1081
|
+
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")[];
|
|
883
1082
|
javaTestingLibraries: ("none" | "junit5" | "mockito" | "testcontainers" | "assertj" | "rest-assured" | "wiremock" | "awaitility" | "archunit" | "jqwik")[];
|
|
1083
|
+
dotnetWebFramework: "none" | "aspnet-minimal" | "aspnet-mvc" | "aspnet-blazor";
|
|
1084
|
+
dotnetOrm: "none" | "ef-core" | "dapper" | "linq2db";
|
|
1085
|
+
dotnetAuth: "none" | "aspnet-identity" | "duende-identityserver" | "auth0-aspnet";
|
|
1086
|
+
dotnetApi: "none" | "minimal-api" | "graphql-hotchocolate" | "grpc-dotnet";
|
|
1087
|
+
dotnetTesting: ("none" | "xunit" | "nunit" | "moq" | "testcontainers-dotnet")[];
|
|
1088
|
+
dotnetJobQueue: "none" | "hangfire" | "quartz-net" | "hosted-services";
|
|
1089
|
+
dotnetRealtime: "none" | "signalr";
|
|
1090
|
+
dotnetObservability: ("none" | "opentelemetry-dotnet" | "serilog" | "nlog" | "health-checks")[];
|
|
1091
|
+
dotnetValidation: "none" | "fluentvalidation" | "data-annotations";
|
|
1092
|
+
dotnetCaching: "none" | "redis" | "memory-cache";
|
|
1093
|
+
dotnetDeploy: "none" | "docker" | "azure" | "aws";
|
|
884
1094
|
elixirWebFramework: "none" | "phoenix" | "phoenix-live-view";
|
|
885
1095
|
elixirOrm: "none" | "ecto" | "ecto-sql";
|
|
886
1096
|
elixirAuth: "none" | "phx-gen-auth" | "ueberauth" | "guardian";
|
|
887
|
-
elixirApi: "none" | "rest" | "absinthe";
|
|
1097
|
+
elixirApi: "none" | "rest" | "absinthe" | "grpc";
|
|
888
1098
|
elixirRealtime: "none" | "channels" | "presence" | "pubsub" | "live-view-streams";
|
|
889
1099
|
elixirJobs: "none" | "oban" | "quantum";
|
|
890
1100
|
elixirValidation: "none" | "ecto-changesets" | "nimble-options";
|
|
@@ -896,6 +1106,7 @@ declare const router: {
|
|
|
896
1106
|
elixirTesting: "none" | "ex_unit" | "mox" | "bypass" | "wallaby";
|
|
897
1107
|
elixirQuality: "none" | "credo" | "dialyxir" | "sobelow";
|
|
898
1108
|
elixirDeploy: "none" | "docker" | "fly" | "gigalixir" | "mix-release";
|
|
1109
|
+
elixirLibraries: ("none" | "broadway" | "nx")[];
|
|
899
1110
|
aiDocs: ("none" | "claude-md" | "agents-md" | "cursorrules")[];
|
|
900
1111
|
astroIntegration?: "none" | "svelte" | "solid" | "react" | "vue" | undefined;
|
|
901
1112
|
shadcnBase?: "radix" | "base" | undefined;
|
|
@@ -907,9 +1118,9 @@ declare const router: {
|
|
|
907
1118
|
shadcnRadius?: "default" | "none" | "small" | "medium" | "large" | undefined;
|
|
908
1119
|
stackParts?: {
|
|
909
1120
|
id: string;
|
|
910
|
-
role: "api" | "runtime" | "backend" | "database" | "orm" | "auth" | "payments" | "email" | "logging" | "observability" | "stateManagement" | "forms" | "validation" | "testing" | "jobQueue" | "caching" | "i18n" | "search" | "fileStorage" | "cms" | "featureFlags" | "analytics" | "codeQuality" | "documentation" | "ai" | "frontend" | "mobile" | "deploy" | "ui" | "css" | "appPlatform";
|
|
1121
|
+
role: "api" | "runtime" | "backend" | "database" | "orm" | "dbSetup" | "auth" | "payments" | "email" | "fileUpload" | "logging" | "observability" | "stateManagement" | "forms" | "validation" | "testing" | "realtime" | "jobQueue" | "caching" | "rateLimit" | "i18n" | "search" | "fileStorage" | "animation" | "cms" | "featureFlags" | "analytics" | "codeQuality" | "documentation" | "examples" | "ai" | "effect" | "frontend" | "config" | "mobile" | "deploy" | "navigation" | "ui" | "css" | "storage" | "appPlatform" | "dataFetching" | "workspaceTooling" | "buildTool" | "cli" | "errorHandling" | "httpClient" | "libraries" | "templating";
|
|
911
1122
|
toolId: string;
|
|
912
|
-
ecosystem: "typescript" | "react-native" | "rust" | "python" | "go" | "java" | "elixir" | "universal";
|
|
1123
|
+
ecosystem: "typescript" | "react-native" | "rust" | "python" | "go" | "java" | "elixir" | "dotnet" | "universal";
|
|
913
1124
|
source: "selected" | "defaulted" | "provided" | "legacy" | "adjusted";
|
|
914
1125
|
ownerPartId?: string | undefined;
|
|
915
1126
|
providedByPartId?: string | undefined;
|
|
@@ -933,15 +1144,15 @@ declare const router: {
|
|
|
933
1144
|
projectName: string;
|
|
934
1145
|
projectDir: string;
|
|
935
1146
|
relativePath: string;
|
|
936
|
-
ecosystem: "typescript" | "react-native" | "rust" | "python" | "go" | "java" | "elixir";
|
|
1147
|
+
ecosystem: "typescript" | "react-native" | "rust" | "python" | "go" | "java" | "elixir" | "dotnet";
|
|
937
1148
|
database: "none" | "sqlite" | "postgres" | "mysql" | "mongodb" | "edgedb" | "redis";
|
|
938
1149
|
orm: "none" | "drizzle" | "prisma" | "mongoose" | "typeorm" | "kysely" | "mikroorm" | "sequelize";
|
|
939
1150
|
backend: "none" | "hono" | "express" | "fastify" | "elysia" | "fets" | "nestjs" | "adonisjs" | "nitro" | "encore" | "convex" | "self";
|
|
940
1151
|
runtime: "none" | "bun" | "node" | "workers";
|
|
941
1152
|
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")[];
|
|
942
|
-
addons: ("none" | "pwa" | "tauri" | "starlight" | "biome" | "lefthook" | "husky" | "ruler" | "mcp" | "skills" | "turborepo" | "fumadocs" | "ultracite" | "oxlint" | "opentui" | "wxt" | "msw" | "storybook" | "swr" | "tanstack-query" | "tanstack-table" | "tanstack-virtual" | "tanstack-db" | "tanstack-pacer" | "docker-compose")[];
|
|
1153
|
+
addons: ("none" | "pwa" | "tauri" | "starlight" | "biome" | "lefthook" | "husky" | "ruler" | "mcp" | "skills" | "turborepo" | "fumadocs" | "ultracite" | "oxlint" | "opentui" | "wxt" | "msw" | "storybook" | "swr" | "tanstack-query" | "tanstack-table" | "tanstack-virtual" | "tanstack-db" | "tanstack-pacer" | "backend-utils" | "docker-compose")[];
|
|
943
1154
|
examples: ("ai" | "none" | "chat-sdk" | "tanstack-showcase")[];
|
|
944
|
-
auth: "none" | "better-auth" | "go-better-auth" | "clerk" | "nextauth" | "stack-auth" | "supabase-auth" | "auth0";
|
|
1155
|
+
auth: "none" | "better-auth" | "better-auth-organizations" | "go-better-auth" | "clerk" | "nextauth" | "stack-auth" | "supabase-auth" | "auth0" | "workos" | "kinde";
|
|
945
1156
|
payments: "none" | "polar" | "stripe" | "lemon-squeezy" | "paddle" | "dodo";
|
|
946
1157
|
git: boolean;
|
|
947
1158
|
packageManager: "bun" | "npm" | "pnpm" | "yarn";
|
|
@@ -949,9 +1160,9 @@ declare const router: {
|
|
|
949
1160
|
install: boolean;
|
|
950
1161
|
dbSetup: "none" | "turso" | "neon" | "prisma-postgres" | "planetscale" | "mongodb-atlas" | "supabase" | "upstash" | "d1" | "docker";
|
|
951
1162
|
api: "none" | "trpc" | "orpc" | "ts-rest" | "garph" | "graphql-yoga";
|
|
952
|
-
webDeploy: "none" | "docker" | "cloudflare" | "fly" | "railway" | "sst" | "vercel";
|
|
953
|
-
serverDeploy: "none" | "docker" | "cloudflare" | "fly" | "railway" | "sst" | "vercel";
|
|
954
|
-
ai: "none" | "langgraph" | "langchain" | "llamaindex" | "vercel-ai" | "mastra" | "voltagent" | "openai-agents" | "
|
|
1163
|
+
webDeploy: "none" | "docker" | "cloudflare" | "fly" | "railway" | "render" | "netlify" | "sst" | "vercel";
|
|
1164
|
+
serverDeploy: "none" | "docker" | "cloudflare" | "fly" | "railway" | "render" | "netlify" | "sst" | "vercel";
|
|
1165
|
+
ai: "none" | "langgraph" | "google-adk" | "langchain" | "llamaindex" | "vercel-ai" | "mastra" | "voltagent" | "openai-agents" | "modelfusion" | "tanstack-ai" | "ai-cli";
|
|
955
1166
|
effect: "effect" | "none" | "effect-full";
|
|
956
1167
|
stateManagement: "none" | "zustand" | "jotai" | "nanostores" | "redux-toolkit" | "mobx" | "xstate" | "valtio" | "tanstack-store" | "legend-state";
|
|
957
1168
|
forms: "none" | "tanstack-form" | "react-hook-form" | "formik" | "final-form" | "conform" | "modular-forms";
|
|
@@ -965,11 +1176,12 @@ declare const router: {
|
|
|
965
1176
|
animation: "none" | "framer-motion" | "gsap" | "react-spring" | "auto-animate" | "lottie";
|
|
966
1177
|
fileUpload: "none" | "uploadthing" | "filepond" | "uppy";
|
|
967
1178
|
logging: "none" | "pino" | "winston" | "evlog";
|
|
968
|
-
observability: "none" | "opentelemetry" | "sentry" | "grafana";
|
|
1179
|
+
observability: "none" | "opentelemetry" | "sentry" | "grafana" | "datadog" | "axiom" | "betterstack";
|
|
969
1180
|
featureFlags: "none" | "growthbook" | "posthog" | "launchdarkly" | "flagsmith" | "unleash";
|
|
970
1181
|
analytics: "none" | "plausible" | "umami";
|
|
971
1182
|
cms: "none" | "payload" | "sanity" | "strapi" | "tinacms" | "directus";
|
|
972
1183
|
caching: "none" | "upstash-redis";
|
|
1184
|
+
rateLimit: "none" | "arcjet" | "upstash-ratelimit";
|
|
973
1185
|
i18n: "none" | "i18next" | "next-intl";
|
|
974
1186
|
search: "none" | "meilisearch" | "typesense" | "elasticsearch" | "algolia";
|
|
975
1187
|
fileStorage: "none" | "s3" | "r2" | "cloudinary";
|
|
@@ -985,36 +1197,64 @@ declare const router: {
|
|
|
985
1197
|
rustOrm: "none" | "sea-orm" | "sqlx" | "diesel";
|
|
986
1198
|
rustApi: "none" | "tonic" | "async-graphql";
|
|
987
1199
|
rustCli: "none" | "clap" | "ratatui";
|
|
988
|
-
rustLibraries: ("none" | "
|
|
1200
|
+
rustLibraries: ("none" | "config" | "serde" | "uuid" | "chrono" | "reqwest" | "dashmap" | "parking-lot" | "secrecy" | "tokio-util" | "utoipa" | "validator" | "jsonwebtoken" | "argon2" | "tokio-test" | "mockall" | "proptest" | "insta")[];
|
|
989
1201
|
rustLogging: "none" | "tracing" | "env-logger";
|
|
990
1202
|
rustErrorHandling: "none" | "anyhow-thiserror" | "eyre";
|
|
991
1203
|
rustCaching: "none" | "redis" | "moka";
|
|
992
|
-
rustAuth: "none" | "oauth2";
|
|
993
|
-
|
|
994
|
-
|
|
1204
|
+
rustAuth: "none" | "oauth2" | "torii";
|
|
1205
|
+
rustRealtime: "none" | "tokio-tungstenite";
|
|
1206
|
+
rustMessageQueue: "none" | "lapin";
|
|
1207
|
+
rustObservability: "none" | "opentelemetry";
|
|
1208
|
+
rustTemplating: "none" | "askama" | "tera";
|
|
1209
|
+
pythonWebFramework: "none" | "fastapi" | "django" | "flask" | "litestar" | "starlette";
|
|
1210
|
+
pythonOrm: "none" | "sqlalchemy" | "sqlmodel" | "tortoise-orm" | "peewee";
|
|
995
1211
|
pythonValidation: "none" | "pydantic";
|
|
996
|
-
pythonAi: ("none" | "langgraph" | "langchain" | "llamaindex" | "openai-sdk" | "anthropic-sdk" | "crewai" | "haystack")[];
|
|
997
|
-
pythonAuth: "none" | "authlib" | "jwt";
|
|
1212
|
+
pythonAi: ("none" | "langgraph" | "google-adk" | "langchain" | "llamaindex" | "openai-sdk" | "anthropic-sdk" | "crewai" | "haystack" | "pydantic-ai" | "smolagents")[];
|
|
1213
|
+
pythonAuth: "none" | "authlib" | "jwt" | "fastapi-users";
|
|
998
1214
|
pythonApi: "none" | "django-rest-framework" | "django-ninja";
|
|
999
|
-
pythonTaskQueue: "none" | "celery" | "rq" | "dramatiq" | "huey";
|
|
1215
|
+
pythonTaskQueue: "none" | "celery" | "rq" | "dramatiq" | "huey" | "taskiq";
|
|
1000
1216
|
pythonGraphql: "none" | "strawberry" | "ariadne";
|
|
1001
1217
|
pythonQuality: "none" | "ruff" | "mypy" | "pyright";
|
|
1218
|
+
pythonTesting: ("none" | "pytest" | "hypothesis")[];
|
|
1219
|
+
pythonCaching: "none" | "redis" | "aiocache";
|
|
1220
|
+
pythonRealtime: "none" | "python-socketio" | "websockets";
|
|
1221
|
+
pythonObservability: "none" | "opentelemetry";
|
|
1222
|
+
pythonCli: ("none" | "typer" | "click" | "rich")[];
|
|
1002
1223
|
goWebFramework: "none" | "gin" | "echo" | "fiber" | "chi";
|
|
1003
1224
|
goOrm: "none" | "gorm" | "sqlc" | "ent";
|
|
1004
|
-
goApi: "none" | "grpc-go";
|
|
1225
|
+
goApi: "none" | "grpc-go" | "gqlgen";
|
|
1005
1226
|
goCli: "none" | "cobra" | "bubbletea" | "urfave-cli";
|
|
1006
1227
|
goLogging: "none" | "zap" | "zerolog" | "slog" | "logrus";
|
|
1007
|
-
goAuth: "none" | "jwt" | "casbin";
|
|
1228
|
+
goAuth: "none" | "jwt" | "casbin" | "goth";
|
|
1229
|
+
goTesting: ("none" | "testify" | "gomock")[];
|
|
1230
|
+
goRealtime: "none" | "gorilla-websocket" | "centrifuge";
|
|
1231
|
+
goMessageQueue: "none" | "nats" | "watermill";
|
|
1232
|
+
goCaching: "none" | "redis" | "ristretto";
|
|
1233
|
+
goConfig: "none" | "viper" | "koanf";
|
|
1234
|
+
goObservability: "none" | "opentelemetry";
|
|
1008
1235
|
javaWebFramework: "none" | "spring-boot" | "quarkus";
|
|
1009
1236
|
javaBuildTool: "none" | "maven" | "gradle";
|
|
1010
|
-
javaOrm: "none" | "spring-data-jpa";
|
|
1011
|
-
javaAuth: "none" | "spring-security";
|
|
1012
|
-
|
|
1237
|
+
javaOrm: "none" | "spring-data-jpa" | "jooq" | "mybatis";
|
|
1238
|
+
javaAuth: "none" | "spring-security" | "keycloak";
|
|
1239
|
+
javaApi: "none" | "spring-graphql";
|
|
1240
|
+
javaLogging: "none" | "logback";
|
|
1241
|
+
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")[];
|
|
1013
1242
|
javaTestingLibraries: ("none" | "junit5" | "mockito" | "testcontainers" | "assertj" | "rest-assured" | "wiremock" | "awaitility" | "archunit" | "jqwik")[];
|
|
1243
|
+
dotnetWebFramework: "none" | "aspnet-minimal" | "aspnet-mvc" | "aspnet-blazor";
|
|
1244
|
+
dotnetOrm: "none" | "ef-core" | "dapper" | "linq2db";
|
|
1245
|
+
dotnetAuth: "none" | "aspnet-identity" | "duende-identityserver" | "auth0-aspnet";
|
|
1246
|
+
dotnetApi: "none" | "minimal-api" | "graphql-hotchocolate" | "grpc-dotnet";
|
|
1247
|
+
dotnetTesting: ("none" | "xunit" | "nunit" | "moq" | "testcontainers-dotnet")[];
|
|
1248
|
+
dotnetJobQueue: "none" | "hangfire" | "quartz-net" | "hosted-services";
|
|
1249
|
+
dotnetRealtime: "none" | "signalr";
|
|
1250
|
+
dotnetObservability: ("none" | "opentelemetry-dotnet" | "serilog" | "nlog" | "health-checks")[];
|
|
1251
|
+
dotnetValidation: "none" | "fluentvalidation" | "data-annotations";
|
|
1252
|
+
dotnetCaching: "none" | "redis" | "memory-cache";
|
|
1253
|
+
dotnetDeploy: "none" | "docker" | "azure" | "aws";
|
|
1014
1254
|
elixirWebFramework: "none" | "phoenix" | "phoenix-live-view";
|
|
1015
1255
|
elixirOrm: "none" | "ecto" | "ecto-sql";
|
|
1016
1256
|
elixirAuth: "none" | "phx-gen-auth" | "ueberauth" | "guardian";
|
|
1017
|
-
elixirApi: "none" | "rest" | "absinthe";
|
|
1257
|
+
elixirApi: "none" | "rest" | "absinthe" | "grpc";
|
|
1018
1258
|
elixirRealtime: "none" | "channels" | "presence" | "pubsub" | "live-view-streams";
|
|
1019
1259
|
elixirJobs: "none" | "oban" | "quantum";
|
|
1020
1260
|
elixirValidation: "none" | "ecto-changesets" | "nimble-options";
|
|
@@ -1026,6 +1266,7 @@ declare const router: {
|
|
|
1026
1266
|
elixirTesting: "none" | "ex_unit" | "mox" | "bypass" | "wallaby";
|
|
1027
1267
|
elixirQuality: "none" | "credo" | "dialyxir" | "sobelow";
|
|
1028
1268
|
elixirDeploy: "none" | "docker" | "fly" | "gigalixir" | "mix-release";
|
|
1269
|
+
elixirLibraries: ("none" | "broadway" | "nx")[];
|
|
1029
1270
|
aiDocs: ("none" | "claude-md" | "agents-md" | "cursorrules")[];
|
|
1030
1271
|
astroIntegration?: "none" | "svelte" | "solid" | "react" | "vue" | undefined;
|
|
1031
1272
|
shadcnBase?: "radix" | "base" | undefined;
|
|
@@ -1037,9 +1278,9 @@ declare const router: {
|
|
|
1037
1278
|
shadcnRadius?: "default" | "none" | "small" | "medium" | "large" | undefined;
|
|
1038
1279
|
stackParts?: {
|
|
1039
1280
|
id: string;
|
|
1040
|
-
role: "api" | "runtime" | "backend" | "database" | "orm" | "auth" | "payments" | "email" | "logging" | "observability" | "stateManagement" | "forms" | "validation" | "testing" | "jobQueue" | "caching" | "i18n" | "search" | "fileStorage" | "cms" | "featureFlags" | "analytics" | "codeQuality" | "documentation" | "ai" | "frontend" | "mobile" | "deploy" | "ui" | "css" | "appPlatform";
|
|
1281
|
+
role: "api" | "runtime" | "backend" | "database" | "orm" | "dbSetup" | "auth" | "payments" | "email" | "fileUpload" | "logging" | "observability" | "stateManagement" | "forms" | "validation" | "testing" | "realtime" | "jobQueue" | "caching" | "rateLimit" | "i18n" | "search" | "fileStorage" | "animation" | "cms" | "featureFlags" | "analytics" | "codeQuality" | "documentation" | "examples" | "ai" | "effect" | "frontend" | "config" | "mobile" | "deploy" | "navigation" | "ui" | "css" | "storage" | "appPlatform" | "dataFetching" | "workspaceTooling" | "buildTool" | "cli" | "errorHandling" | "httpClient" | "libraries" | "templating";
|
|
1041
1282
|
toolId: string;
|
|
1042
|
-
ecosystem: "typescript" | "react-native" | "rust" | "python" | "go" | "java" | "elixir" | "universal";
|
|
1283
|
+
ecosystem: "typescript" | "react-native" | "rust" | "python" | "go" | "java" | "elixir" | "dotnet" | "universal";
|
|
1043
1284
|
source: "selected" | "defaulted" | "provided" | "legacy" | "adjusted";
|
|
1044
1285
|
ownerPartId?: string | undefined;
|
|
1045
1286
|
providedByPartId?: string | undefined;
|
|
@@ -1076,15 +1317,15 @@ declare const router: {
|
|
|
1076
1317
|
projectName: string;
|
|
1077
1318
|
projectDir: string;
|
|
1078
1319
|
relativePath: string;
|
|
1079
|
-
ecosystem: "typescript" | "react-native" | "rust" | "python" | "go" | "java" | "elixir";
|
|
1320
|
+
ecosystem: "typescript" | "react-native" | "rust" | "python" | "go" | "java" | "elixir" | "dotnet";
|
|
1080
1321
|
database: "none" | "sqlite" | "postgres" | "mysql" | "mongodb" | "edgedb" | "redis";
|
|
1081
1322
|
orm: "none" | "drizzle" | "prisma" | "mongoose" | "typeorm" | "kysely" | "mikroorm" | "sequelize";
|
|
1082
1323
|
backend: "none" | "hono" | "express" | "fastify" | "elysia" | "fets" | "nestjs" | "adonisjs" | "nitro" | "encore" | "convex" | "self";
|
|
1083
1324
|
runtime: "none" | "bun" | "node" | "workers";
|
|
1084
1325
|
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")[];
|
|
1085
|
-
addons: ("none" | "pwa" | "tauri" | "starlight" | "biome" | "lefthook" | "husky" | "ruler" | "mcp" | "skills" | "turborepo" | "fumadocs" | "ultracite" | "oxlint" | "opentui" | "wxt" | "msw" | "storybook" | "swr" | "tanstack-query" | "tanstack-table" | "tanstack-virtual" | "tanstack-db" | "tanstack-pacer" | "docker-compose")[];
|
|
1326
|
+
addons: ("none" | "pwa" | "tauri" | "starlight" | "biome" | "lefthook" | "husky" | "ruler" | "mcp" | "skills" | "turborepo" | "fumadocs" | "ultracite" | "oxlint" | "opentui" | "wxt" | "msw" | "storybook" | "swr" | "tanstack-query" | "tanstack-table" | "tanstack-virtual" | "tanstack-db" | "tanstack-pacer" | "backend-utils" | "docker-compose")[];
|
|
1086
1327
|
examples: ("ai" | "none" | "chat-sdk" | "tanstack-showcase")[];
|
|
1087
|
-
auth: "none" | "better-auth" | "go-better-auth" | "clerk" | "nextauth" | "stack-auth" | "supabase-auth" | "auth0";
|
|
1328
|
+
auth: "none" | "better-auth" | "better-auth-organizations" | "go-better-auth" | "clerk" | "nextauth" | "stack-auth" | "supabase-auth" | "auth0" | "workos" | "kinde";
|
|
1088
1329
|
payments: "none" | "polar" | "stripe" | "lemon-squeezy" | "paddle" | "dodo";
|
|
1089
1330
|
git: boolean;
|
|
1090
1331
|
packageManager: "bun" | "npm" | "pnpm" | "yarn";
|
|
@@ -1092,9 +1333,9 @@ declare const router: {
|
|
|
1092
1333
|
install: boolean;
|
|
1093
1334
|
dbSetup: "none" | "turso" | "neon" | "prisma-postgres" | "planetscale" | "mongodb-atlas" | "supabase" | "upstash" | "d1" | "docker";
|
|
1094
1335
|
api: "none" | "trpc" | "orpc" | "ts-rest" | "garph" | "graphql-yoga";
|
|
1095
|
-
webDeploy: "none" | "docker" | "cloudflare" | "fly" | "railway" | "sst" | "vercel";
|
|
1096
|
-
serverDeploy: "none" | "docker" | "cloudflare" | "fly" | "railway" | "sst" | "vercel";
|
|
1097
|
-
ai: "none" | "langgraph" | "langchain" | "llamaindex" | "vercel-ai" | "mastra" | "voltagent" | "openai-agents" | "
|
|
1336
|
+
webDeploy: "none" | "docker" | "cloudflare" | "fly" | "railway" | "render" | "netlify" | "sst" | "vercel";
|
|
1337
|
+
serverDeploy: "none" | "docker" | "cloudflare" | "fly" | "railway" | "render" | "netlify" | "sst" | "vercel";
|
|
1338
|
+
ai: "none" | "langgraph" | "google-adk" | "langchain" | "llamaindex" | "vercel-ai" | "mastra" | "voltagent" | "openai-agents" | "modelfusion" | "tanstack-ai" | "ai-cli";
|
|
1098
1339
|
effect: "effect" | "none" | "effect-full";
|
|
1099
1340
|
stateManagement: "none" | "zustand" | "jotai" | "nanostores" | "redux-toolkit" | "mobx" | "xstate" | "valtio" | "tanstack-store" | "legend-state";
|
|
1100
1341
|
forms: "none" | "tanstack-form" | "react-hook-form" | "formik" | "final-form" | "conform" | "modular-forms";
|
|
@@ -1108,11 +1349,12 @@ declare const router: {
|
|
|
1108
1349
|
animation: "none" | "framer-motion" | "gsap" | "react-spring" | "auto-animate" | "lottie";
|
|
1109
1350
|
fileUpload: "none" | "uploadthing" | "filepond" | "uppy";
|
|
1110
1351
|
logging: "none" | "pino" | "winston" | "evlog";
|
|
1111
|
-
observability: "none" | "opentelemetry" | "sentry" | "grafana";
|
|
1352
|
+
observability: "none" | "opentelemetry" | "sentry" | "grafana" | "datadog" | "axiom" | "betterstack";
|
|
1112
1353
|
featureFlags: "none" | "growthbook" | "posthog" | "launchdarkly" | "flagsmith" | "unleash";
|
|
1113
1354
|
analytics: "none" | "plausible" | "umami";
|
|
1114
1355
|
cms: "none" | "payload" | "sanity" | "strapi" | "tinacms" | "directus";
|
|
1115
1356
|
caching: "none" | "upstash-redis";
|
|
1357
|
+
rateLimit: "none" | "arcjet" | "upstash-ratelimit";
|
|
1116
1358
|
i18n: "none" | "i18next" | "next-intl";
|
|
1117
1359
|
search: "none" | "meilisearch" | "typesense" | "elasticsearch" | "algolia";
|
|
1118
1360
|
fileStorage: "none" | "s3" | "r2" | "cloudinary";
|
|
@@ -1128,36 +1370,64 @@ declare const router: {
|
|
|
1128
1370
|
rustOrm: "none" | "sea-orm" | "sqlx" | "diesel";
|
|
1129
1371
|
rustApi: "none" | "tonic" | "async-graphql";
|
|
1130
1372
|
rustCli: "none" | "clap" | "ratatui";
|
|
1131
|
-
rustLibraries: ("none" | "
|
|
1373
|
+
rustLibraries: ("none" | "config" | "serde" | "uuid" | "chrono" | "reqwest" | "dashmap" | "parking-lot" | "secrecy" | "tokio-util" | "utoipa" | "validator" | "jsonwebtoken" | "argon2" | "tokio-test" | "mockall" | "proptest" | "insta")[];
|
|
1132
1374
|
rustLogging: "none" | "tracing" | "env-logger";
|
|
1133
1375
|
rustErrorHandling: "none" | "anyhow-thiserror" | "eyre";
|
|
1134
1376
|
rustCaching: "none" | "redis" | "moka";
|
|
1135
|
-
rustAuth: "none" | "oauth2";
|
|
1136
|
-
|
|
1137
|
-
|
|
1377
|
+
rustAuth: "none" | "oauth2" | "torii";
|
|
1378
|
+
rustRealtime: "none" | "tokio-tungstenite";
|
|
1379
|
+
rustMessageQueue: "none" | "lapin";
|
|
1380
|
+
rustObservability: "none" | "opentelemetry";
|
|
1381
|
+
rustTemplating: "none" | "askama" | "tera";
|
|
1382
|
+
pythonWebFramework: "none" | "fastapi" | "django" | "flask" | "litestar" | "starlette";
|
|
1383
|
+
pythonOrm: "none" | "sqlalchemy" | "sqlmodel" | "tortoise-orm" | "peewee";
|
|
1138
1384
|
pythonValidation: "none" | "pydantic";
|
|
1139
|
-
pythonAi: ("none" | "langgraph" | "langchain" | "llamaindex" | "openai-sdk" | "anthropic-sdk" | "crewai" | "haystack")[];
|
|
1140
|
-
pythonAuth: "none" | "authlib" | "jwt";
|
|
1385
|
+
pythonAi: ("none" | "langgraph" | "google-adk" | "langchain" | "llamaindex" | "openai-sdk" | "anthropic-sdk" | "crewai" | "haystack" | "pydantic-ai" | "smolagents")[];
|
|
1386
|
+
pythonAuth: "none" | "authlib" | "jwt" | "fastapi-users";
|
|
1141
1387
|
pythonApi: "none" | "django-rest-framework" | "django-ninja";
|
|
1142
|
-
pythonTaskQueue: "none" | "celery" | "rq" | "dramatiq" | "huey";
|
|
1388
|
+
pythonTaskQueue: "none" | "celery" | "rq" | "dramatiq" | "huey" | "taskiq";
|
|
1143
1389
|
pythonGraphql: "none" | "strawberry" | "ariadne";
|
|
1144
1390
|
pythonQuality: "none" | "ruff" | "mypy" | "pyright";
|
|
1391
|
+
pythonTesting: ("none" | "pytest" | "hypothesis")[];
|
|
1392
|
+
pythonCaching: "none" | "redis" | "aiocache";
|
|
1393
|
+
pythonRealtime: "none" | "python-socketio" | "websockets";
|
|
1394
|
+
pythonObservability: "none" | "opentelemetry";
|
|
1395
|
+
pythonCli: ("none" | "typer" | "click" | "rich")[];
|
|
1145
1396
|
goWebFramework: "none" | "gin" | "echo" | "fiber" | "chi";
|
|
1146
1397
|
goOrm: "none" | "gorm" | "sqlc" | "ent";
|
|
1147
|
-
goApi: "none" | "grpc-go";
|
|
1398
|
+
goApi: "none" | "grpc-go" | "gqlgen";
|
|
1148
1399
|
goCli: "none" | "cobra" | "bubbletea" | "urfave-cli";
|
|
1149
1400
|
goLogging: "none" | "zap" | "zerolog" | "slog" | "logrus";
|
|
1150
|
-
goAuth: "none" | "jwt" | "casbin";
|
|
1401
|
+
goAuth: "none" | "jwt" | "casbin" | "goth";
|
|
1402
|
+
goTesting: ("none" | "testify" | "gomock")[];
|
|
1403
|
+
goRealtime: "none" | "gorilla-websocket" | "centrifuge";
|
|
1404
|
+
goMessageQueue: "none" | "nats" | "watermill";
|
|
1405
|
+
goCaching: "none" | "redis" | "ristretto";
|
|
1406
|
+
goConfig: "none" | "viper" | "koanf";
|
|
1407
|
+
goObservability: "none" | "opentelemetry";
|
|
1151
1408
|
javaWebFramework: "none" | "spring-boot" | "quarkus";
|
|
1152
1409
|
javaBuildTool: "none" | "maven" | "gradle";
|
|
1153
|
-
javaOrm: "none" | "spring-data-jpa";
|
|
1154
|
-
javaAuth: "none" | "spring-security";
|
|
1155
|
-
|
|
1410
|
+
javaOrm: "none" | "spring-data-jpa" | "jooq" | "mybatis";
|
|
1411
|
+
javaAuth: "none" | "spring-security" | "keycloak";
|
|
1412
|
+
javaApi: "none" | "spring-graphql";
|
|
1413
|
+
javaLogging: "none" | "logback";
|
|
1414
|
+
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")[];
|
|
1156
1415
|
javaTestingLibraries: ("none" | "junit5" | "mockito" | "testcontainers" | "assertj" | "rest-assured" | "wiremock" | "awaitility" | "archunit" | "jqwik")[];
|
|
1416
|
+
dotnetWebFramework: "none" | "aspnet-minimal" | "aspnet-mvc" | "aspnet-blazor";
|
|
1417
|
+
dotnetOrm: "none" | "ef-core" | "dapper" | "linq2db";
|
|
1418
|
+
dotnetAuth: "none" | "aspnet-identity" | "duende-identityserver" | "auth0-aspnet";
|
|
1419
|
+
dotnetApi: "none" | "minimal-api" | "graphql-hotchocolate" | "grpc-dotnet";
|
|
1420
|
+
dotnetTesting: ("none" | "xunit" | "nunit" | "moq" | "testcontainers-dotnet")[];
|
|
1421
|
+
dotnetJobQueue: "none" | "hangfire" | "quartz-net" | "hosted-services";
|
|
1422
|
+
dotnetRealtime: "none" | "signalr";
|
|
1423
|
+
dotnetObservability: ("none" | "opentelemetry-dotnet" | "serilog" | "nlog" | "health-checks")[];
|
|
1424
|
+
dotnetValidation: "none" | "fluentvalidation" | "data-annotations";
|
|
1425
|
+
dotnetCaching: "none" | "redis" | "memory-cache";
|
|
1426
|
+
dotnetDeploy: "none" | "docker" | "azure" | "aws";
|
|
1157
1427
|
elixirWebFramework: "none" | "phoenix" | "phoenix-live-view";
|
|
1158
1428
|
elixirOrm: "none" | "ecto" | "ecto-sql";
|
|
1159
1429
|
elixirAuth: "none" | "phx-gen-auth" | "ueberauth" | "guardian";
|
|
1160
|
-
elixirApi: "none" | "rest" | "absinthe";
|
|
1430
|
+
elixirApi: "none" | "rest" | "absinthe" | "grpc";
|
|
1161
1431
|
elixirRealtime: "none" | "channels" | "presence" | "pubsub" | "live-view-streams";
|
|
1162
1432
|
elixirJobs: "none" | "oban" | "quantum";
|
|
1163
1433
|
elixirValidation: "none" | "ecto-changesets" | "nimble-options";
|
|
@@ -1169,6 +1439,7 @@ declare const router: {
|
|
|
1169
1439
|
elixirTesting: "none" | "ex_unit" | "mox" | "bypass" | "wallaby";
|
|
1170
1440
|
elixirQuality: "none" | "credo" | "dialyxir" | "sobelow";
|
|
1171
1441
|
elixirDeploy: "none" | "docker" | "fly" | "gigalixir" | "mix-release";
|
|
1442
|
+
elixirLibraries: ("none" | "broadway" | "nx")[];
|
|
1172
1443
|
aiDocs: ("none" | "claude-md" | "agents-md" | "cursorrules")[];
|
|
1173
1444
|
astroIntegration?: "none" | "svelte" | "solid" | "react" | "vue" | undefined;
|
|
1174
1445
|
shadcnBase?: "radix" | "base" | undefined;
|
|
@@ -1180,9 +1451,9 @@ declare const router: {
|
|
|
1180
1451
|
shadcnRadius?: "default" | "none" | "small" | "medium" | "large" | undefined;
|
|
1181
1452
|
stackParts?: {
|
|
1182
1453
|
id: string;
|
|
1183
|
-
role: "api" | "runtime" | "backend" | "database" | "orm" | "auth" | "payments" | "email" | "logging" | "observability" | "stateManagement" | "forms" | "validation" | "testing" | "jobQueue" | "caching" | "i18n" | "search" | "fileStorage" | "cms" | "featureFlags" | "analytics" | "codeQuality" | "documentation" | "ai" | "frontend" | "mobile" | "deploy" | "ui" | "css" | "appPlatform";
|
|
1454
|
+
role: "api" | "runtime" | "backend" | "database" | "orm" | "dbSetup" | "auth" | "payments" | "email" | "fileUpload" | "logging" | "observability" | "stateManagement" | "forms" | "validation" | "testing" | "realtime" | "jobQueue" | "caching" | "rateLimit" | "i18n" | "search" | "fileStorage" | "animation" | "cms" | "featureFlags" | "analytics" | "codeQuality" | "documentation" | "examples" | "ai" | "effect" | "frontend" | "config" | "mobile" | "deploy" | "navigation" | "ui" | "css" | "storage" | "appPlatform" | "dataFetching" | "workspaceTooling" | "buildTool" | "cli" | "errorHandling" | "httpClient" | "libraries" | "templating";
|
|
1184
1455
|
toolId: string;
|
|
1185
|
-
ecosystem: "typescript" | "react-native" | "rust" | "python" | "go" | "java" | "elixir" | "universal";
|
|
1456
|
+
ecosystem: "typescript" | "react-native" | "rust" | "python" | "go" | "java" | "elixir" | "dotnet" | "universal";
|
|
1186
1457
|
source: "selected" | "defaulted" | "provided" | "legacy" | "adjusted";
|
|
1187
1458
|
ownerPartId?: string | undefined;
|
|
1188
1459
|
providedByPartId?: string | undefined;
|
|
@@ -1206,15 +1477,15 @@ declare const router: {
|
|
|
1206
1477
|
projectName: string;
|
|
1207
1478
|
projectDir: string;
|
|
1208
1479
|
relativePath: string;
|
|
1209
|
-
ecosystem: "typescript" | "react-native" | "rust" | "python" | "go" | "java" | "elixir";
|
|
1480
|
+
ecosystem: "typescript" | "react-native" | "rust" | "python" | "go" | "java" | "elixir" | "dotnet";
|
|
1210
1481
|
database: "none" | "sqlite" | "postgres" | "mysql" | "mongodb" | "edgedb" | "redis";
|
|
1211
1482
|
orm: "none" | "drizzle" | "prisma" | "mongoose" | "typeorm" | "kysely" | "mikroorm" | "sequelize";
|
|
1212
1483
|
backend: "none" | "hono" | "express" | "fastify" | "elysia" | "fets" | "nestjs" | "adonisjs" | "nitro" | "encore" | "convex" | "self";
|
|
1213
1484
|
runtime: "none" | "bun" | "node" | "workers";
|
|
1214
1485
|
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")[];
|
|
1215
|
-
addons: ("none" | "pwa" | "tauri" | "starlight" | "biome" | "lefthook" | "husky" | "ruler" | "mcp" | "skills" | "turborepo" | "fumadocs" | "ultracite" | "oxlint" | "opentui" | "wxt" | "msw" | "storybook" | "swr" | "tanstack-query" | "tanstack-table" | "tanstack-virtual" | "tanstack-db" | "tanstack-pacer" | "docker-compose")[];
|
|
1486
|
+
addons: ("none" | "pwa" | "tauri" | "starlight" | "biome" | "lefthook" | "husky" | "ruler" | "mcp" | "skills" | "turborepo" | "fumadocs" | "ultracite" | "oxlint" | "opentui" | "wxt" | "msw" | "storybook" | "swr" | "tanstack-query" | "tanstack-table" | "tanstack-virtual" | "tanstack-db" | "tanstack-pacer" | "backend-utils" | "docker-compose")[];
|
|
1216
1487
|
examples: ("ai" | "none" | "chat-sdk" | "tanstack-showcase")[];
|
|
1217
|
-
auth: "none" | "better-auth" | "go-better-auth" | "clerk" | "nextauth" | "stack-auth" | "supabase-auth" | "auth0";
|
|
1488
|
+
auth: "none" | "better-auth" | "better-auth-organizations" | "go-better-auth" | "clerk" | "nextauth" | "stack-auth" | "supabase-auth" | "auth0" | "workos" | "kinde";
|
|
1218
1489
|
payments: "none" | "polar" | "stripe" | "lemon-squeezy" | "paddle" | "dodo";
|
|
1219
1490
|
git: boolean;
|
|
1220
1491
|
packageManager: "bun" | "npm" | "pnpm" | "yarn";
|
|
@@ -1222,9 +1493,9 @@ declare const router: {
|
|
|
1222
1493
|
install: boolean;
|
|
1223
1494
|
dbSetup: "none" | "turso" | "neon" | "prisma-postgres" | "planetscale" | "mongodb-atlas" | "supabase" | "upstash" | "d1" | "docker";
|
|
1224
1495
|
api: "none" | "trpc" | "orpc" | "ts-rest" | "garph" | "graphql-yoga";
|
|
1225
|
-
webDeploy: "none" | "docker" | "cloudflare" | "fly" | "railway" | "sst" | "vercel";
|
|
1226
|
-
serverDeploy: "none" | "docker" | "cloudflare" | "fly" | "railway" | "sst" | "vercel";
|
|
1227
|
-
ai: "none" | "langgraph" | "langchain" | "llamaindex" | "vercel-ai" | "mastra" | "voltagent" | "openai-agents" | "
|
|
1496
|
+
webDeploy: "none" | "docker" | "cloudflare" | "fly" | "railway" | "render" | "netlify" | "sst" | "vercel";
|
|
1497
|
+
serverDeploy: "none" | "docker" | "cloudflare" | "fly" | "railway" | "render" | "netlify" | "sst" | "vercel";
|
|
1498
|
+
ai: "none" | "langgraph" | "google-adk" | "langchain" | "llamaindex" | "vercel-ai" | "mastra" | "voltagent" | "openai-agents" | "modelfusion" | "tanstack-ai" | "ai-cli";
|
|
1228
1499
|
effect: "effect" | "none" | "effect-full";
|
|
1229
1500
|
stateManagement: "none" | "zustand" | "jotai" | "nanostores" | "redux-toolkit" | "mobx" | "xstate" | "valtio" | "tanstack-store" | "legend-state";
|
|
1230
1501
|
forms: "none" | "tanstack-form" | "react-hook-form" | "formik" | "final-form" | "conform" | "modular-forms";
|
|
@@ -1238,11 +1509,12 @@ declare const router: {
|
|
|
1238
1509
|
animation: "none" | "framer-motion" | "gsap" | "react-spring" | "auto-animate" | "lottie";
|
|
1239
1510
|
fileUpload: "none" | "uploadthing" | "filepond" | "uppy";
|
|
1240
1511
|
logging: "none" | "pino" | "winston" | "evlog";
|
|
1241
|
-
observability: "none" | "opentelemetry" | "sentry" | "grafana";
|
|
1512
|
+
observability: "none" | "opentelemetry" | "sentry" | "grafana" | "datadog" | "axiom" | "betterstack";
|
|
1242
1513
|
featureFlags: "none" | "growthbook" | "posthog" | "launchdarkly" | "flagsmith" | "unleash";
|
|
1243
1514
|
analytics: "none" | "plausible" | "umami";
|
|
1244
1515
|
cms: "none" | "payload" | "sanity" | "strapi" | "tinacms" | "directus";
|
|
1245
1516
|
caching: "none" | "upstash-redis";
|
|
1517
|
+
rateLimit: "none" | "arcjet" | "upstash-ratelimit";
|
|
1246
1518
|
i18n: "none" | "i18next" | "next-intl";
|
|
1247
1519
|
search: "none" | "meilisearch" | "typesense" | "elasticsearch" | "algolia";
|
|
1248
1520
|
fileStorage: "none" | "s3" | "r2" | "cloudinary";
|
|
@@ -1258,36 +1530,64 @@ declare const router: {
|
|
|
1258
1530
|
rustOrm: "none" | "sea-orm" | "sqlx" | "diesel";
|
|
1259
1531
|
rustApi: "none" | "tonic" | "async-graphql";
|
|
1260
1532
|
rustCli: "none" | "clap" | "ratatui";
|
|
1261
|
-
rustLibraries: ("none" | "
|
|
1533
|
+
rustLibraries: ("none" | "config" | "serde" | "uuid" | "chrono" | "reqwest" | "dashmap" | "parking-lot" | "secrecy" | "tokio-util" | "utoipa" | "validator" | "jsonwebtoken" | "argon2" | "tokio-test" | "mockall" | "proptest" | "insta")[];
|
|
1262
1534
|
rustLogging: "none" | "tracing" | "env-logger";
|
|
1263
1535
|
rustErrorHandling: "none" | "anyhow-thiserror" | "eyre";
|
|
1264
1536
|
rustCaching: "none" | "redis" | "moka";
|
|
1265
|
-
rustAuth: "none" | "oauth2";
|
|
1266
|
-
|
|
1267
|
-
|
|
1537
|
+
rustAuth: "none" | "oauth2" | "torii";
|
|
1538
|
+
rustRealtime: "none" | "tokio-tungstenite";
|
|
1539
|
+
rustMessageQueue: "none" | "lapin";
|
|
1540
|
+
rustObservability: "none" | "opentelemetry";
|
|
1541
|
+
rustTemplating: "none" | "askama" | "tera";
|
|
1542
|
+
pythonWebFramework: "none" | "fastapi" | "django" | "flask" | "litestar" | "starlette";
|
|
1543
|
+
pythonOrm: "none" | "sqlalchemy" | "sqlmodel" | "tortoise-orm" | "peewee";
|
|
1268
1544
|
pythonValidation: "none" | "pydantic";
|
|
1269
|
-
pythonAi: ("none" | "langgraph" | "langchain" | "llamaindex" | "openai-sdk" | "anthropic-sdk" | "crewai" | "haystack")[];
|
|
1270
|
-
pythonAuth: "none" | "authlib" | "jwt";
|
|
1545
|
+
pythonAi: ("none" | "langgraph" | "google-adk" | "langchain" | "llamaindex" | "openai-sdk" | "anthropic-sdk" | "crewai" | "haystack" | "pydantic-ai" | "smolagents")[];
|
|
1546
|
+
pythonAuth: "none" | "authlib" | "jwt" | "fastapi-users";
|
|
1271
1547
|
pythonApi: "none" | "django-rest-framework" | "django-ninja";
|
|
1272
|
-
pythonTaskQueue: "none" | "celery" | "rq" | "dramatiq" | "huey";
|
|
1548
|
+
pythonTaskQueue: "none" | "celery" | "rq" | "dramatiq" | "huey" | "taskiq";
|
|
1273
1549
|
pythonGraphql: "none" | "strawberry" | "ariadne";
|
|
1274
1550
|
pythonQuality: "none" | "ruff" | "mypy" | "pyright";
|
|
1551
|
+
pythonTesting: ("none" | "pytest" | "hypothesis")[];
|
|
1552
|
+
pythonCaching: "none" | "redis" | "aiocache";
|
|
1553
|
+
pythonRealtime: "none" | "python-socketio" | "websockets";
|
|
1554
|
+
pythonObservability: "none" | "opentelemetry";
|
|
1555
|
+
pythonCli: ("none" | "typer" | "click" | "rich")[];
|
|
1275
1556
|
goWebFramework: "none" | "gin" | "echo" | "fiber" | "chi";
|
|
1276
1557
|
goOrm: "none" | "gorm" | "sqlc" | "ent";
|
|
1277
|
-
goApi: "none" | "grpc-go";
|
|
1558
|
+
goApi: "none" | "grpc-go" | "gqlgen";
|
|
1278
1559
|
goCli: "none" | "cobra" | "bubbletea" | "urfave-cli";
|
|
1279
1560
|
goLogging: "none" | "zap" | "zerolog" | "slog" | "logrus";
|
|
1280
|
-
goAuth: "none" | "jwt" | "casbin";
|
|
1561
|
+
goAuth: "none" | "jwt" | "casbin" | "goth";
|
|
1562
|
+
goTesting: ("none" | "testify" | "gomock")[];
|
|
1563
|
+
goRealtime: "none" | "gorilla-websocket" | "centrifuge";
|
|
1564
|
+
goMessageQueue: "none" | "nats" | "watermill";
|
|
1565
|
+
goCaching: "none" | "redis" | "ristretto";
|
|
1566
|
+
goConfig: "none" | "viper" | "koanf";
|
|
1567
|
+
goObservability: "none" | "opentelemetry";
|
|
1281
1568
|
javaWebFramework: "none" | "spring-boot" | "quarkus";
|
|
1282
1569
|
javaBuildTool: "none" | "maven" | "gradle";
|
|
1283
|
-
javaOrm: "none" | "spring-data-jpa";
|
|
1284
|
-
javaAuth: "none" | "spring-security";
|
|
1285
|
-
|
|
1570
|
+
javaOrm: "none" | "spring-data-jpa" | "jooq" | "mybatis";
|
|
1571
|
+
javaAuth: "none" | "spring-security" | "keycloak";
|
|
1572
|
+
javaApi: "none" | "spring-graphql";
|
|
1573
|
+
javaLogging: "none" | "logback";
|
|
1574
|
+
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")[];
|
|
1286
1575
|
javaTestingLibraries: ("none" | "junit5" | "mockito" | "testcontainers" | "assertj" | "rest-assured" | "wiremock" | "awaitility" | "archunit" | "jqwik")[];
|
|
1576
|
+
dotnetWebFramework: "none" | "aspnet-minimal" | "aspnet-mvc" | "aspnet-blazor";
|
|
1577
|
+
dotnetOrm: "none" | "ef-core" | "dapper" | "linq2db";
|
|
1578
|
+
dotnetAuth: "none" | "aspnet-identity" | "duende-identityserver" | "auth0-aspnet";
|
|
1579
|
+
dotnetApi: "none" | "minimal-api" | "graphql-hotchocolate" | "grpc-dotnet";
|
|
1580
|
+
dotnetTesting: ("none" | "xunit" | "nunit" | "moq" | "testcontainers-dotnet")[];
|
|
1581
|
+
dotnetJobQueue: "none" | "hangfire" | "quartz-net" | "hosted-services";
|
|
1582
|
+
dotnetRealtime: "none" | "signalr";
|
|
1583
|
+
dotnetObservability: ("none" | "opentelemetry-dotnet" | "serilog" | "nlog" | "health-checks")[];
|
|
1584
|
+
dotnetValidation: "none" | "fluentvalidation" | "data-annotations";
|
|
1585
|
+
dotnetCaching: "none" | "redis" | "memory-cache";
|
|
1586
|
+
dotnetDeploy: "none" | "docker" | "azure" | "aws";
|
|
1287
1587
|
elixirWebFramework: "none" | "phoenix" | "phoenix-live-view";
|
|
1288
1588
|
elixirOrm: "none" | "ecto" | "ecto-sql";
|
|
1289
1589
|
elixirAuth: "none" | "phx-gen-auth" | "ueberauth" | "guardian";
|
|
1290
|
-
elixirApi: "none" | "rest" | "absinthe";
|
|
1590
|
+
elixirApi: "none" | "rest" | "absinthe" | "grpc";
|
|
1291
1591
|
elixirRealtime: "none" | "channels" | "presence" | "pubsub" | "live-view-streams";
|
|
1292
1592
|
elixirJobs: "none" | "oban" | "quantum";
|
|
1293
1593
|
elixirValidation: "none" | "ecto-changesets" | "nimble-options";
|
|
@@ -1299,6 +1599,7 @@ declare const router: {
|
|
|
1299
1599
|
elixirTesting: "none" | "ex_unit" | "mox" | "bypass" | "wallaby";
|
|
1300
1600
|
elixirQuality: "none" | "credo" | "dialyxir" | "sobelow";
|
|
1301
1601
|
elixirDeploy: "none" | "docker" | "fly" | "gigalixir" | "mix-release";
|
|
1602
|
+
elixirLibraries: ("none" | "broadway" | "nx")[];
|
|
1302
1603
|
aiDocs: ("none" | "claude-md" | "agents-md" | "cursorrules")[];
|
|
1303
1604
|
astroIntegration?: "none" | "svelte" | "solid" | "react" | "vue" | undefined;
|
|
1304
1605
|
shadcnBase?: "radix" | "base" | undefined;
|
|
@@ -1310,9 +1611,9 @@ declare const router: {
|
|
|
1310
1611
|
shadcnRadius?: "default" | "none" | "small" | "medium" | "large" | undefined;
|
|
1311
1612
|
stackParts?: {
|
|
1312
1613
|
id: string;
|
|
1313
|
-
role: "api" | "runtime" | "backend" | "database" | "orm" | "auth" | "payments" | "email" | "logging" | "observability" | "stateManagement" | "forms" | "validation" | "testing" | "jobQueue" | "caching" | "i18n" | "search" | "fileStorage" | "cms" | "featureFlags" | "analytics" | "codeQuality" | "documentation" | "ai" | "frontend" | "mobile" | "deploy" | "ui" | "css" | "appPlatform";
|
|
1614
|
+
role: "api" | "runtime" | "backend" | "database" | "orm" | "dbSetup" | "auth" | "payments" | "email" | "fileUpload" | "logging" | "observability" | "stateManagement" | "forms" | "validation" | "testing" | "realtime" | "jobQueue" | "caching" | "rateLimit" | "i18n" | "search" | "fileStorage" | "animation" | "cms" | "featureFlags" | "analytics" | "codeQuality" | "documentation" | "examples" | "ai" | "effect" | "frontend" | "config" | "mobile" | "deploy" | "navigation" | "ui" | "css" | "storage" | "appPlatform" | "dataFetching" | "workspaceTooling" | "buildTool" | "cli" | "errorHandling" | "httpClient" | "libraries" | "templating";
|
|
1314
1615
|
toolId: string;
|
|
1315
|
-
ecosystem: "typescript" | "react-native" | "rust" | "python" | "go" | "java" | "elixir" | "universal";
|
|
1616
|
+
ecosystem: "typescript" | "react-native" | "rust" | "python" | "go" | "java" | "elixir" | "dotnet" | "universal";
|
|
1316
1617
|
source: "selected" | "defaulted" | "provided" | "legacy" | "adjusted";
|
|
1317
1618
|
ownerPartId?: string | undefined;
|
|
1318
1619
|
providedByPartId?: string | undefined;
|
|
@@ -1373,6 +1674,7 @@ declare const router: {
|
|
|
1373
1674
|
"tanstack-virtual": "tanstack-virtual";
|
|
1374
1675
|
"tanstack-db": "tanstack-db";
|
|
1375
1676
|
"tanstack-pacer": "tanstack-pacer";
|
|
1677
|
+
"backend-utils": "backend-utils";
|
|
1376
1678
|
"docker-compose": "docker-compose";
|
|
1377
1679
|
}>>>;
|
|
1378
1680
|
webDeploy: z.ZodOptional<z.ZodEnum<{
|
|
@@ -1381,6 +1683,8 @@ declare const router: {
|
|
|
1381
1683
|
cloudflare: "cloudflare";
|
|
1382
1684
|
fly: "fly";
|
|
1383
1685
|
railway: "railway";
|
|
1686
|
+
render: "render";
|
|
1687
|
+
netlify: "netlify";
|
|
1384
1688
|
sst: "sst";
|
|
1385
1689
|
vercel: "vercel";
|
|
1386
1690
|
}>>;
|
|
@@ -1390,6 +1694,8 @@ declare const router: {
|
|
|
1390
1694
|
cloudflare: "cloudflare";
|
|
1391
1695
|
fly: "fly";
|
|
1392
1696
|
railway: "railway";
|
|
1697
|
+
render: "render";
|
|
1698
|
+
netlify: "netlify";
|
|
1393
1699
|
sst: "sst";
|
|
1394
1700
|
vercel: "vercel";
|
|
1395
1701
|
}>>;
|
|
@@ -1448,6 +1754,8 @@ declare function history(options?: {
|
|
|
1448
1754
|
clear?: boolean;
|
|
1449
1755
|
json?: boolean;
|
|
1450
1756
|
}): Promise<void>;
|
|
1757
|
+
//#endregion
|
|
1758
|
+
//#region src/index.d.ts
|
|
1451
1759
|
/**
|
|
1452
1760
|
* Programmatic API to generate a project in-memory (virtual filesystem).
|
|
1453
1761
|
* Returns a VirtualFileTree without writing to disk.
|