create-better-fullstack 2.1.8 → 2.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{add-handler-ztNjzoMN.mjs → add-handler-CE3XIs3y.mjs} +8 -8
- package/dist/{addons-setup-LaAj43NP.mjs → addons-setup-DR924M7b.mjs} +1 -1
- package/dist/addons-setup-Du2VSv8V.mjs +7 -0
- package/dist/{analytics-DVltG11u.mjs → analytics-BXlOG6u6.mjs} +1 -1
- package/dist/{bts-config-DQVWvPDs.mjs → bts-config-B_HhcMXL.mjs} +30 -0
- package/dist/cli.mjs +2 -2
- package/dist/{config-processing-D9-F2Us9.mjs → config-processing-DJisMeW-.mjs} +17 -1
- package/dist/{doctor-a4ca3SMd.mjs → doctor-Cc7sLuow.mjs} +2 -2
- package/dist/{file-formatter-gvmrpd-g.mjs → file-formatter-BgbfpYf4.mjs} +442 -22
- package/dist/{gen-CCClL7Ve.mjs → gen-BZ0QCxCC.mjs} +1 -1
- package/dist/{generated-checks-BV9jol5h.mjs → generated-checks-CbioGjCh.mjs} +1 -1
- package/dist/index.d.mts +461 -183
- package/dist/index.mjs +20 -9
- package/dist/{install-dependencies-RoUyaE8o.mjs → install-dependencies-D__bmW4k.mjs} +86 -18
- package/dist/{mcp-492OkjcS.mjs → mcp-DNKAo8nO.mjs} +5 -5
- package/dist/mcp-entry.mjs +37 -225
- package/dist/{registry-DSf2CEaU.mjs → registry-Cm3D45oT.mjs} +1 -1
- package/dist/run-C_S7ujfY.mjs +15 -0
- package/dist/{run-T6g1jkfy.mjs → run-DmN7QRt5.mjs} +1155 -292
- package/dist/scaffold-manifest-ByKtMhTd.mjs +4 -0
- package/dist/{scaffold-manifest-Dyi0voqE.mjs → scaffold-manifest-CNFz-lmH.mjs} +34 -5
- package/dist/{update-DJ8CI5KW.mjs → update-B270pWHc.mjs} +182 -25
- package/package.json +6 -6
- 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/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<{
|
|
@@ -325,6 +333,8 @@ declare const router: {
|
|
|
325
333
|
"tanstack-router": "tanstack-router";
|
|
326
334
|
"react-router": "react-router";
|
|
327
335
|
"react-vite": "react-vite";
|
|
336
|
+
"vanilla-vite": "vanilla-vite";
|
|
337
|
+
vue: "vue";
|
|
328
338
|
"tanstack-start": "tanstack-start";
|
|
329
339
|
next: "next";
|
|
330
340
|
vinext: "vinext";
|
|
@@ -343,10 +353,10 @@ declare const router: {
|
|
|
343
353
|
}>>>;
|
|
344
354
|
astroIntegration: z.ZodOptional<z.ZodEnum<{
|
|
345
355
|
none: "none";
|
|
356
|
+
vue: "vue";
|
|
346
357
|
svelte: "svelte";
|
|
347
358
|
solid: "solid";
|
|
348
359
|
react: "react";
|
|
349
|
-
vue: "vue";
|
|
350
360
|
}>>;
|
|
351
361
|
addons: z.ZodOptional<z.ZodArray<z.ZodEnum<{
|
|
352
362
|
none: "none";
|
|
@@ -378,10 +388,19 @@ declare const router: {
|
|
|
378
388
|
devcontainer: "devcontainer";
|
|
379
389
|
"docker-compose": "docker-compose";
|
|
380
390
|
"github-actions": "github-actions";
|
|
391
|
+
eslint: "eslint";
|
|
392
|
+
prettier: "prettier";
|
|
393
|
+
axios: "axios";
|
|
394
|
+
firebase: "firebase";
|
|
395
|
+
"graphql-codegen": "graphql-codegen";
|
|
396
|
+
"openapi-typescript": "openapi-typescript";
|
|
397
|
+
"apollo-client": "apollo-client";
|
|
398
|
+
electron: "electron";
|
|
399
|
+
capacitor: "capacitor";
|
|
381
400
|
}>>>;
|
|
382
401
|
examples: z.ZodOptional<z.ZodArray<z.ZodEnum<{
|
|
383
|
-
ai: "ai";
|
|
384
402
|
none: "none";
|
|
403
|
+
ai: "ai";
|
|
385
404
|
"chat-sdk": "chat-sdk";
|
|
386
405
|
"tanstack-showcase": "tanstack-showcase";
|
|
387
406
|
}>>>;
|
|
@@ -415,13 +434,13 @@ declare const router: {
|
|
|
415
434
|
docker: "docker";
|
|
416
435
|
}>>;
|
|
417
436
|
backend: z.ZodOptional<z.ZodEnum<{
|
|
418
|
-
effect: "effect";
|
|
419
437
|
none: "none";
|
|
420
438
|
hono: "hono";
|
|
421
439
|
express: "express";
|
|
422
440
|
fastify: "fastify";
|
|
423
441
|
elysia: "elysia";
|
|
424
442
|
fets: "fets";
|
|
443
|
+
effect: "effect";
|
|
425
444
|
nestjs: "nestjs";
|
|
426
445
|
adonisjs: "adonisjs";
|
|
427
446
|
nitro: "nitro";
|
|
@@ -451,6 +470,7 @@ declare const router: {
|
|
|
451
470
|
scss: "scss";
|
|
452
471
|
less: "less";
|
|
453
472
|
"postcss-only": "postcss-only";
|
|
473
|
+
"styled-components": "styled-components";
|
|
454
474
|
}>>;
|
|
455
475
|
uiLibrary: z.ZodOptional<z.ZodEnum<{
|
|
456
476
|
none: "none";
|
|
@@ -535,8 +555,8 @@ declare const router: {
|
|
|
535
555
|
"geist-mono": "geist-mono";
|
|
536
556
|
}>>;
|
|
537
557
|
shadcnRadius: z.ZodOptional<z.ZodEnum<{
|
|
538
|
-
default: "default";
|
|
539
558
|
none: "none";
|
|
559
|
+
default: "default";
|
|
540
560
|
small: "small";
|
|
541
561
|
medium: "medium";
|
|
542
562
|
large: "large";
|
|
@@ -564,10 +584,10 @@ declare const router: {
|
|
|
564
584
|
vercel: "vercel";
|
|
565
585
|
}>>;
|
|
566
586
|
directoryConflict: z.ZodOptional<z.ZodEnum<{
|
|
567
|
-
error: "error";
|
|
568
587
|
merge: "merge";
|
|
569
588
|
overwrite: "overwrite";
|
|
570
589
|
increment: "increment";
|
|
590
|
+
error: "error";
|
|
571
591
|
}>>;
|
|
572
592
|
renderTitle: z.ZodOptional<z.ZodBoolean>;
|
|
573
593
|
disableAnalytics: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
@@ -579,22 +599,29 @@ declare const router: {
|
|
|
579
599
|
rocket: "rocket";
|
|
580
600
|
poem: "poem";
|
|
581
601
|
loco: "loco";
|
|
602
|
+
warp: "warp";
|
|
603
|
+
salvo: "salvo";
|
|
582
604
|
}>>;
|
|
583
605
|
rustFrontend: z.ZodOptional<z.ZodEnum<{
|
|
584
606
|
none: "none";
|
|
585
607
|
leptos: "leptos";
|
|
586
608
|
dioxus: "dioxus";
|
|
609
|
+
yew: "yew";
|
|
587
610
|
}>>;
|
|
588
611
|
rustOrm: z.ZodOptional<z.ZodEnum<{
|
|
589
612
|
none: "none";
|
|
613
|
+
mongodb: "mongodb";
|
|
590
614
|
"sea-orm": "sea-orm";
|
|
591
615
|
sqlx: "sqlx";
|
|
592
616
|
diesel: "diesel";
|
|
617
|
+
rusqlite: "rusqlite";
|
|
618
|
+
"tokio-postgres": "tokio-postgres";
|
|
593
619
|
}>>;
|
|
594
620
|
rustApi: z.ZodOptional<z.ZodEnum<{
|
|
595
621
|
none: "none";
|
|
596
622
|
tonic: "tonic";
|
|
597
623
|
"async-graphql": "async-graphql";
|
|
624
|
+
jsonrpsee: "jsonrpsee";
|
|
598
625
|
}>>;
|
|
599
626
|
rustCli: z.ZodOptional<z.ZodEnum<{
|
|
600
627
|
none: "none";
|
|
@@ -602,12 +629,12 @@ declare const router: {
|
|
|
602
629
|
ratatui: "ratatui";
|
|
603
630
|
}>>;
|
|
604
631
|
rustLibraries: z.ZodOptional<z.ZodArray<z.ZodEnum<{
|
|
605
|
-
config: "config";
|
|
606
632
|
none: "none";
|
|
607
633
|
serde: "serde";
|
|
608
634
|
uuid: "uuid";
|
|
609
635
|
chrono: "chrono";
|
|
610
636
|
reqwest: "reqwest";
|
|
637
|
+
config: "config";
|
|
611
638
|
dashmap: "dashmap";
|
|
612
639
|
"parking-lot": "parking-lot";
|
|
613
640
|
secrecy: "secrecy";
|
|
@@ -620,6 +647,13 @@ declare const router: {
|
|
|
620
647
|
mockall: "mockall";
|
|
621
648
|
proptest: "proptest";
|
|
622
649
|
insta: "insta";
|
|
650
|
+
rand: "rand";
|
|
651
|
+
regex: "regex";
|
|
652
|
+
rayon: "rayon";
|
|
653
|
+
itertools: "itertools";
|
|
654
|
+
rstest: "rstest";
|
|
655
|
+
"cargo-nextest": "cargo-nextest";
|
|
656
|
+
"cargo-audit": "cargo-audit";
|
|
623
657
|
}>>>;
|
|
624
658
|
rustLogging: z.ZodOptional<z.ZodEnum<{
|
|
625
659
|
none: "none";
|
|
@@ -640,6 +674,8 @@ declare const router: {
|
|
|
640
674
|
none: "none";
|
|
641
675
|
oauth2: "oauth2";
|
|
642
676
|
torii: "torii";
|
|
677
|
+
openidconnect: "openidconnect";
|
|
678
|
+
"tower-sessions": "tower-sessions";
|
|
643
679
|
}>>;
|
|
644
680
|
rustRealtime: z.ZodOptional<z.ZodEnum<{
|
|
645
681
|
none: "none";
|
|
@@ -648,15 +684,19 @@ declare const router: {
|
|
|
648
684
|
rustMessageQueue: z.ZodOptional<z.ZodEnum<{
|
|
649
685
|
none: "none";
|
|
650
686
|
lapin: "lapin";
|
|
687
|
+
rdkafka: "rdkafka";
|
|
688
|
+
"async-nats": "async-nats";
|
|
651
689
|
}>>;
|
|
652
690
|
rustObservability: z.ZodOptional<z.ZodEnum<{
|
|
653
691
|
none: "none";
|
|
654
692
|
opentelemetry: "opentelemetry";
|
|
693
|
+
metrics: "metrics";
|
|
655
694
|
}>>;
|
|
656
695
|
rustTemplating: z.ZodOptional<z.ZodEnum<{
|
|
657
696
|
none: "none";
|
|
658
697
|
askama: "askama";
|
|
659
698
|
tera: "tera";
|
|
699
|
+
minijinja: "minijinja";
|
|
660
700
|
}>>;
|
|
661
701
|
pythonWebFramework: z.ZodOptional<z.ZodEnum<{
|
|
662
702
|
none: "none";
|
|
@@ -680,11 +720,11 @@ declare const router: {
|
|
|
680
720
|
pythonAi: z.ZodOptional<z.ZodArray<z.ZodEnum<{
|
|
681
721
|
none: "none";
|
|
682
722
|
langgraph: "langgraph";
|
|
723
|
+
"openai-sdk": "openai-sdk";
|
|
724
|
+
"anthropic-sdk": "anthropic-sdk";
|
|
683
725
|
"google-adk": "google-adk";
|
|
684
726
|
langchain: "langchain";
|
|
685
727
|
llamaindex: "llamaindex";
|
|
686
|
-
"openai-sdk": "openai-sdk";
|
|
687
|
-
"anthropic-sdk": "anthropic-sdk";
|
|
688
728
|
crewai: "crewai";
|
|
689
729
|
haystack: "haystack";
|
|
690
730
|
"pydantic-ai": "pydantic-ai";
|
|
@@ -752,10 +792,14 @@ declare const router: {
|
|
|
752
792
|
fiber: "fiber";
|
|
753
793
|
chi: "chi";
|
|
754
794
|
stdlib: "stdlib";
|
|
795
|
+
"go-zero": "go-zero";
|
|
796
|
+
kratos: "kratos";
|
|
797
|
+
httprouter: "httprouter";
|
|
755
798
|
}>>;
|
|
756
799
|
goOrm: z.ZodOptional<z.ZodEnum<{
|
|
757
800
|
none: "none";
|
|
758
801
|
bun: "bun";
|
|
802
|
+
sqlx: "sqlx";
|
|
759
803
|
gorm: "gorm";
|
|
760
804
|
sqlc: "sqlc";
|
|
761
805
|
ent: "ent";
|
|
@@ -764,6 +808,9 @@ declare const router: {
|
|
|
764
808
|
none: "none";
|
|
765
809
|
"grpc-go": "grpc-go";
|
|
766
810
|
gqlgen: "gqlgen";
|
|
811
|
+
"grpc-gateway": "grpc-gateway";
|
|
812
|
+
"connect-go": "connect-go";
|
|
813
|
+
"oapi-codegen": "oapi-codegen";
|
|
767
814
|
}>>;
|
|
768
815
|
goCli: z.ZodOptional<z.ZodEnum<{
|
|
769
816
|
none: "none";
|
|
@@ -780,6 +827,7 @@ declare const router: {
|
|
|
780
827
|
}>>;
|
|
781
828
|
goAuth: z.ZodOptional<z.ZodEnum<{
|
|
782
829
|
none: "none";
|
|
830
|
+
oauth2: "oauth2";
|
|
783
831
|
jwt: "jwt";
|
|
784
832
|
casbin: "casbin";
|
|
785
833
|
goth: "goth";
|
|
@@ -788,6 +836,9 @@ declare const router: {
|
|
|
788
836
|
none: "none";
|
|
789
837
|
testify: "testify";
|
|
790
838
|
gomock: "gomock";
|
|
839
|
+
testcontainers: "testcontainers";
|
|
840
|
+
"ginkgo-gomega": "ginkgo-gomega";
|
|
841
|
+
mockery: "mockery";
|
|
791
842
|
}>>>;
|
|
792
843
|
goRealtime: z.ZodOptional<z.ZodEnum<{
|
|
793
844
|
none: "none";
|
|
@@ -798,6 +849,8 @@ declare const router: {
|
|
|
798
849
|
none: "none";
|
|
799
850
|
nats: "nats";
|
|
800
851
|
watermill: "watermill";
|
|
852
|
+
"kafka-go": "kafka-go";
|
|
853
|
+
asynq: "asynq";
|
|
801
854
|
}>>;
|
|
802
855
|
goCaching: z.ZodOptional<z.ZodEnum<{
|
|
803
856
|
none: "none";
|
|
@@ -812,6 +865,31 @@ declare const router: {
|
|
|
812
865
|
goObservability: z.ZodOptional<z.ZodEnum<{
|
|
813
866
|
none: "none";
|
|
814
867
|
opentelemetry: "opentelemetry";
|
|
868
|
+
prometheus: "prometheus";
|
|
869
|
+
}>>;
|
|
870
|
+
goValidation: z.ZodOptional<z.ZodEnum<{
|
|
871
|
+
none: "none";
|
|
872
|
+
validator: "validator";
|
|
873
|
+
}>>;
|
|
874
|
+
goQuality: z.ZodOptional<z.ZodEnum<{
|
|
875
|
+
none: "none";
|
|
876
|
+
"golangci-lint": "golangci-lint";
|
|
877
|
+
}>>;
|
|
878
|
+
goMigrations: z.ZodOptional<z.ZodEnum<{
|
|
879
|
+
none: "none";
|
|
880
|
+
"golang-migrate": "golang-migrate";
|
|
881
|
+
}>>;
|
|
882
|
+
goTemplating: z.ZodOptional<z.ZodEnum<{
|
|
883
|
+
none: "none";
|
|
884
|
+
templ: "templ";
|
|
885
|
+
}>>;
|
|
886
|
+
goProtoTooling: z.ZodOptional<z.ZodEnum<{
|
|
887
|
+
none: "none";
|
|
888
|
+
buf: "buf";
|
|
889
|
+
}>>;
|
|
890
|
+
goDI: z.ZodOptional<z.ZodEnum<{
|
|
891
|
+
none: "none";
|
|
892
|
+
fx: "fx";
|
|
815
893
|
}>>;
|
|
816
894
|
javaWebFramework: z.ZodOptional<z.ZodEnum<{
|
|
817
895
|
none: "none";
|
|
@@ -873,9 +951,9 @@ declare const router: {
|
|
|
873
951
|
}>>>;
|
|
874
952
|
javaTestingLibraries: z.ZodOptional<z.ZodArray<z.ZodEnum<{
|
|
875
953
|
none: "none";
|
|
954
|
+
testcontainers: "testcontainers";
|
|
876
955
|
junit5: "junit5";
|
|
877
956
|
mockito: "mockito";
|
|
878
|
-
testcontainers: "testcontainers";
|
|
879
957
|
assertj: "assertj";
|
|
880
958
|
"rest-assured": "rest-assured";
|
|
881
959
|
wiremock: "wiremock";
|
|
@@ -956,18 +1034,22 @@ declare const router: {
|
|
|
956
1034
|
none: "none";
|
|
957
1035
|
ecto: "ecto";
|
|
958
1036
|
"ecto-sql": "ecto-sql";
|
|
1037
|
+
myxql: "myxql";
|
|
1038
|
+
ecto_sqlite3: "ecto_sqlite3";
|
|
959
1039
|
}>>;
|
|
960
1040
|
elixirAuth: z.ZodOptional<z.ZodEnum<{
|
|
961
1041
|
none: "none";
|
|
962
1042
|
"phx-gen-auth": "phx-gen-auth";
|
|
963
1043
|
ueberauth: "ueberauth";
|
|
964
1044
|
guardian: "guardian";
|
|
1045
|
+
pow: "pow";
|
|
965
1046
|
}>>;
|
|
966
1047
|
elixirApi: z.ZodOptional<z.ZodEnum<{
|
|
967
1048
|
none: "none";
|
|
968
1049
|
grpc: "grpc";
|
|
969
1050
|
rest: "rest";
|
|
970
1051
|
absinthe: "absinthe";
|
|
1052
|
+
open_api_spex: "open_api_spex";
|
|
971
1053
|
}>>;
|
|
972
1054
|
elixirRealtime: z.ZodOptional<z.ZodEnum<{
|
|
973
1055
|
none: "none";
|
|
@@ -990,6 +1072,7 @@ declare const router: {
|
|
|
990
1072
|
none: "none";
|
|
991
1073
|
req: "req";
|
|
992
1074
|
finch: "finch";
|
|
1075
|
+
tesla: "tesla";
|
|
993
1076
|
}>>;
|
|
994
1077
|
elixirJson: z.ZodOptional<z.ZodEnum<{
|
|
995
1078
|
none: "none";
|
|
@@ -998,15 +1081,18 @@ declare const router: {
|
|
|
998
1081
|
elixirEmail: z.ZodOptional<z.ZodEnum<{
|
|
999
1082
|
none: "none";
|
|
1000
1083
|
swoosh: "swoosh";
|
|
1084
|
+
bamboo: "bamboo";
|
|
1001
1085
|
}>>;
|
|
1002
1086
|
elixirCaching: z.ZodOptional<z.ZodEnum<{
|
|
1003
1087
|
none: "none";
|
|
1004
1088
|
cachex: "cachex";
|
|
1005
1089
|
nebulex: "nebulex";
|
|
1090
|
+
redix: "redix";
|
|
1006
1091
|
}>>;
|
|
1007
1092
|
elixirObservability: z.ZodOptional<z.ZodEnum<{
|
|
1008
1093
|
none: "none";
|
|
1009
1094
|
opentelemetry: "opentelemetry";
|
|
1095
|
+
sentry: "sentry";
|
|
1010
1096
|
telemetry: "telemetry";
|
|
1011
1097
|
prom_ex: "prom_ex";
|
|
1012
1098
|
}>>;
|
|
@@ -1016,12 +1102,37 @@ declare const router: {
|
|
|
1016
1102
|
mox: "mox";
|
|
1017
1103
|
bypass: "bypass";
|
|
1018
1104
|
wallaby: "wallaby";
|
|
1105
|
+
stream_data: "stream_data";
|
|
1106
|
+
ex_machina: "ex_machina";
|
|
1019
1107
|
}>>;
|
|
1020
1108
|
elixirQuality: z.ZodOptional<z.ZodEnum<{
|
|
1021
1109
|
none: "none";
|
|
1022
1110
|
credo: "credo";
|
|
1023
1111
|
dialyxir: "dialyxir";
|
|
1024
1112
|
sobelow: "sobelow";
|
|
1113
|
+
excoveralls: "excoveralls";
|
|
1114
|
+
mix_audit: "mix_audit";
|
|
1115
|
+
}>>;
|
|
1116
|
+
elixirI18n: z.ZodOptional<z.ZodEnum<{
|
|
1117
|
+
none: "none";
|
|
1118
|
+
gettext: "gettext";
|
|
1119
|
+
}>>;
|
|
1120
|
+
elixirHttpServer: z.ZodOptional<z.ZodEnum<{
|
|
1121
|
+
none: "none";
|
|
1122
|
+
bandit: "bandit";
|
|
1123
|
+
cowboy: "cowboy";
|
|
1124
|
+
}>>;
|
|
1125
|
+
elixirApplicationFramework: z.ZodOptional<z.ZodEnum<{
|
|
1126
|
+
none: "none";
|
|
1127
|
+
ash: "ash";
|
|
1128
|
+
}>>;
|
|
1129
|
+
elixirDocumentation: z.ZodOptional<z.ZodEnum<{
|
|
1130
|
+
none: "none";
|
|
1131
|
+
ex_doc: "ex_doc";
|
|
1132
|
+
}>>;
|
|
1133
|
+
elixirClustering: z.ZodOptional<z.ZodEnum<{
|
|
1134
|
+
none: "none";
|
|
1135
|
+
libcluster: "libcluster";
|
|
1025
1136
|
}>>;
|
|
1026
1137
|
elixirDeploy: z.ZodOptional<z.ZodEnum<{
|
|
1027
1138
|
none: "none";
|
|
@@ -1034,6 +1145,9 @@ declare const router: {
|
|
|
1034
1145
|
none: "none";
|
|
1035
1146
|
nx: "nx";
|
|
1036
1147
|
broadway: "broadway";
|
|
1148
|
+
ex_aws: "ex_aws";
|
|
1149
|
+
floki: "floki";
|
|
1150
|
+
rustler: "rustler";
|
|
1037
1151
|
}>>>;
|
|
1038
1152
|
aiDocs: z.ZodOptional<z.ZodArray<z.ZodEnum<{
|
|
1039
1153
|
none: "none";
|
|
@@ -1052,11 +1166,11 @@ declare const router: {
|
|
|
1052
1166
|
orm: "none" | "drizzle" | "prisma" | "mongoose" | "typeorm" | "kysely" | "mikroorm" | "sequelize";
|
|
1053
1167
|
backend: "effect" | "none" | "hono" | "express" | "fastify" | "elysia" | "fets" | "nestjs" | "adonisjs" | "nitro" | "encore" | "convex" | "self";
|
|
1054
1168
|
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")[];
|
|
1169
|
+
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")[];
|
|
1170
|
+
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
1171
|
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";
|
|
1172
|
+
auth: "none" | "better-auth" | "better-auth-organizations" | "go-better-auth" | "clerk" | "nextauth" | "stack-auth" | "supabase-auth" | "auth0" | "workos" | "kinde" | "passport";
|
|
1173
|
+
payments: "none" | "revenuecat" | "polar" | "stripe" | "lemon-squeezy" | "paddle" | "paypal" | "dodo" | "creem" | "autumn" | "commet";
|
|
1060
1174
|
git: boolean;
|
|
1061
1175
|
packageManager: "bun" | "npm" | "pnpm" | "yarn";
|
|
1062
1176
|
versionChannel: "stable" | "latest" | "beta";
|
|
@@ -1065,24 +1179,24 @@ declare const router: {
|
|
|
1065
1179
|
api: "none" | "trpc" | "orpc" | "ts-rest" | "garph" | "graphql-yoga" | "apollo-server" | "openapi";
|
|
1066
1180
|
webDeploy: "none" | "docker" | "cloudflare" | "fly" | "railway" | "render" | "netlify" | "sst" | "vercel";
|
|
1067
1181
|
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";
|
|
1182
|
+
ai: "none" | "langgraph" | "openai-sdk" | "anthropic-sdk" | "google-adk" | "langchain" | "llamaindex" | "vercel-ai" | "mastra" | "voltagent" | "openai-agents" | "modelfusion" | "tanstack-ai" | "ai-cli";
|
|
1069
1183
|
effect: "effect" | "none" | "effect-full";
|
|
1070
1184
|
stateManagement: "none" | "zustand" | "jotai" | "nanostores" | "redux-toolkit" | "mobx" | "xstate" | "valtio" | "tanstack-store" | "legend-state";
|
|
1071
1185
|
forms: "none" | "tanstack-form" | "react-hook-form" | "formik" | "final-form" | "conform" | "modular-forms";
|
|
1072
|
-
testing: "none" | "vitest" | "playwright" | "vitest-playwright" | "jest" | "cypress";
|
|
1186
|
+
testing: "none" | "vitest" | "playwright" | "vitest-playwright" | "jest" | "mocha" | "cypress";
|
|
1073
1187
|
email: "none" | "react-email" | "resend" | "nodemailer" | "postmark" | "sendgrid" | "aws-ses" | "mailgun" | "plunk";
|
|
1074
|
-
cssFramework: "none" | "tailwind" | "scss" | "less" | "postcss-only";
|
|
1188
|
+
cssFramework: "none" | "tailwind" | "scss" | "less" | "postcss-only" | "styled-components";
|
|
1075
1189
|
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
1190
|
validation: "none" | "zod" | "valibot" | "arktype" | "typebox" | "typia" | "runtypes" | "effect-schema";
|
|
1077
|
-
realtime: "none" | "socket-io" | "partykit" | "ably" | "pusher" | "liveblocks" | "yjs";
|
|
1191
|
+
realtime: "none" | "socket-io" | "ws" | "partykit" | "ably" | "pusher" | "liveblocks" | "yjs";
|
|
1078
1192
|
jobQueue: "none" | "bullmq" | "trigger-dev" | "inngest" | "temporal";
|
|
1079
1193
|
animation: "none" | "framer-motion" | "gsap" | "react-spring" | "auto-animate" | "lottie";
|
|
1080
1194
|
fileUpload: "none" | "uploadthing" | "filepond" | "uppy";
|
|
1081
1195
|
logging: "none" | "pino" | "winston" | "evlog";
|
|
1082
1196
|
observability: "none" | "opentelemetry" | "sentry" | "grafana" | "datadog" | "axiom" | "betterstack";
|
|
1083
1197
|
featureFlags: "none" | "growthbook" | "posthog" | "launchdarkly" | "flagsmith" | "unleash";
|
|
1084
|
-
analytics: "none" | "posthog" | "plausible" | "umami";
|
|
1085
|
-
cms: "none" | "payload" | "sanity" | "strapi" | "tinacms" | "directus" | "keystatic";
|
|
1198
|
+
analytics: "none" | "posthog" | "plausible" | "umami" | "ga4";
|
|
1199
|
+
cms: "none" | "payload" | "sanity" | "strapi" | "tinacms" | "directus" | "keystatic" | "contentful";
|
|
1086
1200
|
caching: "none" | "redis" | "upstash-redis";
|
|
1087
1201
|
rateLimit: "none" | "arcjet" | "upstash-ratelimit";
|
|
1088
1202
|
i18n: "none" | "paraglide" | "i18next" | "next-intl" | "intlayer";
|
|
@@ -1096,24 +1210,24 @@ declare const router: {
|
|
|
1096
1210
|
mobilePush: "none" | "expo-notifications";
|
|
1097
1211
|
mobileOTA: "none" | "expo-updates";
|
|
1098
1212
|
mobileDeepLinking: "none" | "expo-linking";
|
|
1099
|
-
rustWebFramework: "none" | "axum" | "actix-web" | "rocket" | "poem" | "loco";
|
|
1100
|
-
rustFrontend: "none" | "leptos" | "dioxus";
|
|
1101
|
-
rustOrm: "none" | "sea-orm" | "sqlx" | "diesel";
|
|
1102
|
-
rustApi: "none" | "tonic" | "async-graphql";
|
|
1213
|
+
rustWebFramework: "none" | "axum" | "actix-web" | "rocket" | "poem" | "loco" | "warp" | "salvo";
|
|
1214
|
+
rustFrontend: "none" | "leptos" | "dioxus" | "yew";
|
|
1215
|
+
rustOrm: "none" | "mongodb" | "sea-orm" | "sqlx" | "diesel" | "rusqlite" | "tokio-postgres";
|
|
1216
|
+
rustApi: "none" | "tonic" | "async-graphql" | "jsonrpsee";
|
|
1103
1217
|
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")[];
|
|
1218
|
+
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
1219
|
rustLogging: "none" | "tracing" | "env-logger";
|
|
1106
1220
|
rustErrorHandling: "none" | "anyhow-thiserror" | "eyre";
|
|
1107
1221
|
rustCaching: "none" | "redis" | "moka";
|
|
1108
|
-
rustAuth: "none" | "oauth2" | "torii";
|
|
1222
|
+
rustAuth: "none" | "oauth2" | "torii" | "openidconnect" | "tower-sessions";
|
|
1109
1223
|
rustRealtime: "none" | "tokio-tungstenite";
|
|
1110
|
-
rustMessageQueue: "none" | "lapin";
|
|
1111
|
-
rustObservability: "none" | "opentelemetry";
|
|
1112
|
-
rustTemplating: "none" | "askama" | "tera";
|
|
1224
|
+
rustMessageQueue: "none" | "lapin" | "rdkafka" | "async-nats";
|
|
1225
|
+
rustObservability: "none" | "opentelemetry" | "metrics";
|
|
1226
|
+
rustTemplating: "none" | "askama" | "tera" | "minijinja";
|
|
1113
1227
|
pythonWebFramework: "none" | "fastapi" | "django" | "flask" | "litestar" | "starlette";
|
|
1114
1228
|
pythonOrm: "none" | "sqlalchemy" | "sqlmodel" | "tortoise-orm" | "peewee";
|
|
1115
1229
|
pythonValidation: "none" | "pydantic";
|
|
1116
|
-
pythonAi: ("none" | "langgraph" | "
|
|
1230
|
+
pythonAi: ("none" | "langgraph" | "openai-sdk" | "anthropic-sdk" | "google-adk" | "langchain" | "llamaindex" | "crewai" | "haystack" | "pydantic-ai" | "smolagents")[];
|
|
1117
1231
|
pythonAuth: "none" | "authlib" | "jwt" | "fastapi-users";
|
|
1118
1232
|
pythonApi: "none" | "django-rest-framework" | "django-ninja";
|
|
1119
1233
|
pythonTaskQueue: "none" | "celery" | "rq" | "dramatiq" | "huey" | "taskiq";
|
|
@@ -1124,18 +1238,24 @@ declare const router: {
|
|
|
1124
1238
|
pythonRealtime: "none" | "python-socketio" | "websockets";
|
|
1125
1239
|
pythonObservability: "none" | "opentelemetry";
|
|
1126
1240
|
pythonCli: ("none" | "typer" | "click" | "rich")[];
|
|
1127
|
-
goWebFramework: "none" | "gin" | "echo" | "fiber" | "chi" | "stdlib";
|
|
1128
|
-
goOrm: "none" | "bun" | "gorm" | "sqlc" | "ent";
|
|
1129
|
-
goApi: "none" | "grpc-go" | "gqlgen";
|
|
1241
|
+
goWebFramework: "none" | "gin" | "echo" | "fiber" | "chi" | "stdlib" | "go-zero" | "kratos" | "httprouter";
|
|
1242
|
+
goOrm: "none" | "bun" | "sqlx" | "gorm" | "sqlc" | "ent";
|
|
1243
|
+
goApi: "none" | "grpc-go" | "gqlgen" | "grpc-gateway" | "connect-go" | "oapi-codegen";
|
|
1130
1244
|
goCli: "none" | "cobra" | "bubbletea" | "urfave-cli";
|
|
1131
1245
|
goLogging: "none" | "zap" | "zerolog" | "slog" | "logrus";
|
|
1132
|
-
goAuth: "none" | "jwt" | "casbin" | "goth";
|
|
1133
|
-
goTesting: ("none" | "testify" | "gomock")[];
|
|
1246
|
+
goAuth: "none" | "oauth2" | "jwt" | "casbin" | "goth";
|
|
1247
|
+
goTesting: ("none" | "testify" | "gomock" | "testcontainers" | "ginkgo-gomega" | "mockery")[];
|
|
1134
1248
|
goRealtime: "none" | "gorilla-websocket" | "centrifuge";
|
|
1135
|
-
goMessageQueue: "none" | "nats" | "watermill";
|
|
1249
|
+
goMessageQueue: "none" | "nats" | "watermill" | "kafka-go" | "asynq";
|
|
1136
1250
|
goCaching: "none" | "redis" | "ristretto";
|
|
1137
1251
|
goConfig: "none" | "viper" | "koanf";
|
|
1138
|
-
goObservability: "none" | "opentelemetry";
|
|
1252
|
+
goObservability: "none" | "opentelemetry" | "prometheus";
|
|
1253
|
+
goValidation: "none" | "validator";
|
|
1254
|
+
goQuality: "none" | "golangci-lint";
|
|
1255
|
+
goMigrations: "none" | "golang-migrate";
|
|
1256
|
+
goTemplating: "none" | "templ";
|
|
1257
|
+
goProtoTooling: "none" | "buf";
|
|
1258
|
+
goDI: "none" | "fx";
|
|
1139
1259
|
javaWebFramework: "none" | "spring-boot" | "quarkus" | "micronaut";
|
|
1140
1260
|
javaBuildTool: "none" | "maven" | "gradle";
|
|
1141
1261
|
javaOrm: "none" | "spring-data-jpa" | "jooq" | "mybatis";
|
|
@@ -1143,7 +1263,7 @@ declare const router: {
|
|
|
1143
1263
|
javaApi: "none" | "spring-graphql" | "openapi-generator" | "grpc";
|
|
1144
1264
|
javaLogging: "none" | "logback" | "log4j2";
|
|
1145
1265
|
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" | "
|
|
1266
|
+
javaTestingLibraries: ("none" | "testcontainers" | "junit5" | "mockito" | "assertj" | "rest-assured" | "wiremock" | "awaitility" | "archunit" | "jqwik")[];
|
|
1147
1267
|
dotnetWebFramework: "none" | "aspnet-minimal" | "aspnet-mvc" | "aspnet-blazor";
|
|
1148
1268
|
dotnetOrm: "none" | "ef-core" | "dapper" | "linq2db";
|
|
1149
1269
|
dotnetAuth: "none" | "aspnet-identity" | "duende-identityserver" | "auth0-aspnet";
|
|
@@ -1156,24 +1276,29 @@ declare const router: {
|
|
|
1156
1276
|
dotnetCaching: "none" | "redis" | "memory-cache";
|
|
1157
1277
|
dotnetDeploy: "none" | "docker" | "azure" | "aws";
|
|
1158
1278
|
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";
|
|
1279
|
+
elixirOrm: "none" | "ecto" | "ecto-sql" | "myxql" | "ecto_sqlite3";
|
|
1280
|
+
elixirAuth: "none" | "phx-gen-auth" | "ueberauth" | "guardian" | "pow";
|
|
1281
|
+
elixirApi: "none" | "grpc" | "rest" | "absinthe" | "open_api_spex";
|
|
1162
1282
|
elixirRealtime: "none" | "channels" | "presence" | "pubsub" | "live-view-streams";
|
|
1163
1283
|
elixirJobs: "none" | "oban" | "quantum";
|
|
1164
1284
|
elixirValidation: "none" | "ecto-changesets" | "nimble-options";
|
|
1165
|
-
elixirHttp: "none" | "req" | "finch";
|
|
1285
|
+
elixirHttp: "none" | "req" | "finch" | "tesla";
|
|
1166
1286
|
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";
|
|
1287
|
+
elixirEmail: "none" | "swoosh" | "bamboo";
|
|
1288
|
+
elixirCaching: "none" | "cachex" | "nebulex" | "redix";
|
|
1289
|
+
elixirObservability: "none" | "opentelemetry" | "sentry" | "telemetry" | "prom_ex";
|
|
1290
|
+
elixirTesting: "none" | "ex_unit" | "mox" | "bypass" | "wallaby" | "stream_data" | "ex_machina";
|
|
1291
|
+
elixirQuality: "none" | "credo" | "dialyxir" | "sobelow" | "excoveralls" | "mix_audit";
|
|
1292
|
+
elixirI18n: "none" | "gettext";
|
|
1293
|
+
elixirHttpServer: "none" | "bandit" | "cowboy";
|
|
1294
|
+
elixirApplicationFramework: "none" | "ash";
|
|
1295
|
+
elixirDocumentation: "none" | "ex_doc";
|
|
1296
|
+
elixirClustering: "none" | "libcluster";
|
|
1172
1297
|
elixirDeploy: "none" | "docker" | "fly" | "gigalixir" | "mix-release";
|
|
1173
|
-
elixirLibraries: ("none" | "nx" | "broadway")[];
|
|
1298
|
+
elixirLibraries: ("none" | "nx" | "broadway" | "ex_aws" | "floki" | "rustler")[];
|
|
1174
1299
|
aiDocs: ("none" | "claude-md" | "agents-md" | "cursorrules")[];
|
|
1175
1300
|
workspaceShape?: "monorepo" | "single-app" | undefined;
|
|
1176
|
-
astroIntegration?: "none" | "
|
|
1301
|
+
astroIntegration?: "none" | "vue" | "svelte" | "solid" | "react" | undefined;
|
|
1177
1302
|
shadcnBase?: "radix" | "base" | undefined;
|
|
1178
1303
|
shadcnStyle?: "vega" | "nova" | "maia" | "lyra" | "mira" | "luma" | "sera" | undefined;
|
|
1179
1304
|
shadcnIconLibrary?: "lucide" | "tabler" | "hugeicons" | "phosphor" | "remixicon" | "heroicons" | "react-icons" | undefined;
|
|
@@ -1184,7 +1309,7 @@ declare const router: {
|
|
|
1184
1309
|
javaLanguage?: "java" | "kotlin" | undefined;
|
|
1185
1310
|
stackParts?: {
|
|
1186
1311
|
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" | "
|
|
1312
|
+
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" | "mobile" | "graphql" | "deploy" | "migrations" | "navigation" | "ui" | "css" | "storage" | "push" | "ota" | "deepLinking" | "appPlatform" | "dataFetching" | "workspaceTooling" | "language" | "buildTool" | "cli" | "errorHandling" | "httpClient" | "libraries" | "templating";
|
|
1188
1313
|
toolId: string;
|
|
1189
1314
|
ecosystem: "typescript" | "react-native" | "rust" | "python" | "go" | "java" | "elixir" | "dotnet" | "universal";
|
|
1190
1315
|
source: "selected" | "defaulted" | "provided" | "legacy" | "adjusted";
|
|
@@ -1216,11 +1341,11 @@ declare const router: {
|
|
|
1216
1341
|
orm: "none" | "drizzle" | "prisma" | "mongoose" | "typeorm" | "kysely" | "mikroorm" | "sequelize";
|
|
1217
1342
|
backend: "effect" | "none" | "hono" | "express" | "fastify" | "elysia" | "fets" | "nestjs" | "adonisjs" | "nitro" | "encore" | "convex" | "self";
|
|
1218
1343
|
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")[];
|
|
1344
|
+
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")[];
|
|
1345
|
+
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
1346
|
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";
|
|
1347
|
+
auth: "none" | "better-auth" | "better-auth-organizations" | "go-better-auth" | "clerk" | "nextauth" | "stack-auth" | "supabase-auth" | "auth0" | "workos" | "kinde" | "passport";
|
|
1348
|
+
payments: "none" | "revenuecat" | "polar" | "stripe" | "lemon-squeezy" | "paddle" | "paypal" | "dodo" | "creem" | "autumn" | "commet";
|
|
1224
1349
|
git: boolean;
|
|
1225
1350
|
packageManager: "bun" | "npm" | "pnpm" | "yarn";
|
|
1226
1351
|
versionChannel: "stable" | "latest" | "beta";
|
|
@@ -1229,24 +1354,24 @@ declare const router: {
|
|
|
1229
1354
|
api: "none" | "trpc" | "orpc" | "ts-rest" | "garph" | "graphql-yoga" | "apollo-server" | "openapi";
|
|
1230
1355
|
webDeploy: "none" | "docker" | "cloudflare" | "fly" | "railway" | "render" | "netlify" | "sst" | "vercel";
|
|
1231
1356
|
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";
|
|
1357
|
+
ai: "none" | "langgraph" | "openai-sdk" | "anthropic-sdk" | "google-adk" | "langchain" | "llamaindex" | "vercel-ai" | "mastra" | "voltagent" | "openai-agents" | "modelfusion" | "tanstack-ai" | "ai-cli";
|
|
1233
1358
|
effect: "effect" | "none" | "effect-full";
|
|
1234
1359
|
stateManagement: "none" | "zustand" | "jotai" | "nanostores" | "redux-toolkit" | "mobx" | "xstate" | "valtio" | "tanstack-store" | "legend-state";
|
|
1235
1360
|
forms: "none" | "tanstack-form" | "react-hook-form" | "formik" | "final-form" | "conform" | "modular-forms";
|
|
1236
|
-
testing: "none" | "vitest" | "playwright" | "vitest-playwright" | "jest" | "cypress";
|
|
1361
|
+
testing: "none" | "vitest" | "playwright" | "vitest-playwright" | "jest" | "mocha" | "cypress";
|
|
1237
1362
|
email: "none" | "react-email" | "resend" | "nodemailer" | "postmark" | "sendgrid" | "aws-ses" | "mailgun" | "plunk";
|
|
1238
|
-
cssFramework: "none" | "tailwind" | "scss" | "less" | "postcss-only";
|
|
1363
|
+
cssFramework: "none" | "tailwind" | "scss" | "less" | "postcss-only" | "styled-components";
|
|
1239
1364
|
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
1365
|
validation: "none" | "zod" | "valibot" | "arktype" | "typebox" | "typia" | "runtypes" | "effect-schema";
|
|
1241
|
-
realtime: "none" | "socket-io" | "partykit" | "ably" | "pusher" | "liveblocks" | "yjs";
|
|
1366
|
+
realtime: "none" | "socket-io" | "ws" | "partykit" | "ably" | "pusher" | "liveblocks" | "yjs";
|
|
1242
1367
|
jobQueue: "none" | "bullmq" | "trigger-dev" | "inngest" | "temporal";
|
|
1243
1368
|
animation: "none" | "framer-motion" | "gsap" | "react-spring" | "auto-animate" | "lottie";
|
|
1244
1369
|
fileUpload: "none" | "uploadthing" | "filepond" | "uppy";
|
|
1245
1370
|
logging: "none" | "pino" | "winston" | "evlog";
|
|
1246
1371
|
observability: "none" | "opentelemetry" | "sentry" | "grafana" | "datadog" | "axiom" | "betterstack";
|
|
1247
1372
|
featureFlags: "none" | "growthbook" | "posthog" | "launchdarkly" | "flagsmith" | "unleash";
|
|
1248
|
-
analytics: "none" | "posthog" | "plausible" | "umami";
|
|
1249
|
-
cms: "none" | "payload" | "sanity" | "strapi" | "tinacms" | "directus" | "keystatic";
|
|
1373
|
+
analytics: "none" | "posthog" | "plausible" | "umami" | "ga4";
|
|
1374
|
+
cms: "none" | "payload" | "sanity" | "strapi" | "tinacms" | "directus" | "keystatic" | "contentful";
|
|
1250
1375
|
caching: "none" | "redis" | "upstash-redis";
|
|
1251
1376
|
rateLimit: "none" | "arcjet" | "upstash-ratelimit";
|
|
1252
1377
|
i18n: "none" | "paraglide" | "i18next" | "next-intl" | "intlayer";
|
|
@@ -1260,24 +1385,24 @@ declare const router: {
|
|
|
1260
1385
|
mobilePush: "none" | "expo-notifications";
|
|
1261
1386
|
mobileOTA: "none" | "expo-updates";
|
|
1262
1387
|
mobileDeepLinking: "none" | "expo-linking";
|
|
1263
|
-
rustWebFramework: "none" | "axum" | "actix-web" | "rocket" | "poem" | "loco";
|
|
1264
|
-
rustFrontend: "none" | "leptos" | "dioxus";
|
|
1265
|
-
rustOrm: "none" | "sea-orm" | "sqlx" | "diesel";
|
|
1266
|
-
rustApi: "none" | "tonic" | "async-graphql";
|
|
1388
|
+
rustWebFramework: "none" | "axum" | "actix-web" | "rocket" | "poem" | "loco" | "warp" | "salvo";
|
|
1389
|
+
rustFrontend: "none" | "leptos" | "dioxus" | "yew";
|
|
1390
|
+
rustOrm: "none" | "mongodb" | "sea-orm" | "sqlx" | "diesel" | "rusqlite" | "tokio-postgres";
|
|
1391
|
+
rustApi: "none" | "tonic" | "async-graphql" | "jsonrpsee";
|
|
1267
1392
|
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")[];
|
|
1393
|
+
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
1394
|
rustLogging: "none" | "tracing" | "env-logger";
|
|
1270
1395
|
rustErrorHandling: "none" | "anyhow-thiserror" | "eyre";
|
|
1271
1396
|
rustCaching: "none" | "redis" | "moka";
|
|
1272
|
-
rustAuth: "none" | "oauth2" | "torii";
|
|
1397
|
+
rustAuth: "none" | "oauth2" | "torii" | "openidconnect" | "tower-sessions";
|
|
1273
1398
|
rustRealtime: "none" | "tokio-tungstenite";
|
|
1274
|
-
rustMessageQueue: "none" | "lapin";
|
|
1275
|
-
rustObservability: "none" | "opentelemetry";
|
|
1276
|
-
rustTemplating: "none" | "askama" | "tera";
|
|
1399
|
+
rustMessageQueue: "none" | "lapin" | "rdkafka" | "async-nats";
|
|
1400
|
+
rustObservability: "none" | "opentelemetry" | "metrics";
|
|
1401
|
+
rustTemplating: "none" | "askama" | "tera" | "minijinja";
|
|
1277
1402
|
pythonWebFramework: "none" | "fastapi" | "django" | "flask" | "litestar" | "starlette";
|
|
1278
1403
|
pythonOrm: "none" | "sqlalchemy" | "sqlmodel" | "tortoise-orm" | "peewee";
|
|
1279
1404
|
pythonValidation: "none" | "pydantic";
|
|
1280
|
-
pythonAi: ("none" | "langgraph" | "
|
|
1405
|
+
pythonAi: ("none" | "langgraph" | "openai-sdk" | "anthropic-sdk" | "google-adk" | "langchain" | "llamaindex" | "crewai" | "haystack" | "pydantic-ai" | "smolagents")[];
|
|
1281
1406
|
pythonAuth: "none" | "authlib" | "jwt" | "fastapi-users";
|
|
1282
1407
|
pythonApi: "none" | "django-rest-framework" | "django-ninja";
|
|
1283
1408
|
pythonTaskQueue: "none" | "celery" | "rq" | "dramatiq" | "huey" | "taskiq";
|
|
@@ -1288,18 +1413,24 @@ declare const router: {
|
|
|
1288
1413
|
pythonRealtime: "none" | "python-socketio" | "websockets";
|
|
1289
1414
|
pythonObservability: "none" | "opentelemetry";
|
|
1290
1415
|
pythonCli: ("none" | "typer" | "click" | "rich")[];
|
|
1291
|
-
goWebFramework: "none" | "gin" | "echo" | "fiber" | "chi" | "stdlib";
|
|
1292
|
-
goOrm: "none" | "bun" | "gorm" | "sqlc" | "ent";
|
|
1293
|
-
goApi: "none" | "grpc-go" | "gqlgen";
|
|
1416
|
+
goWebFramework: "none" | "gin" | "echo" | "fiber" | "chi" | "stdlib" | "go-zero" | "kratos" | "httprouter";
|
|
1417
|
+
goOrm: "none" | "bun" | "sqlx" | "gorm" | "sqlc" | "ent";
|
|
1418
|
+
goApi: "none" | "grpc-go" | "gqlgen" | "grpc-gateway" | "connect-go" | "oapi-codegen";
|
|
1294
1419
|
goCli: "none" | "cobra" | "bubbletea" | "urfave-cli";
|
|
1295
1420
|
goLogging: "none" | "zap" | "zerolog" | "slog" | "logrus";
|
|
1296
|
-
goAuth: "none" | "jwt" | "casbin" | "goth";
|
|
1297
|
-
goTesting: ("none" | "testify" | "gomock")[];
|
|
1421
|
+
goAuth: "none" | "oauth2" | "jwt" | "casbin" | "goth";
|
|
1422
|
+
goTesting: ("none" | "testify" | "gomock" | "testcontainers" | "ginkgo-gomega" | "mockery")[];
|
|
1298
1423
|
goRealtime: "none" | "gorilla-websocket" | "centrifuge";
|
|
1299
|
-
goMessageQueue: "none" | "nats" | "watermill";
|
|
1424
|
+
goMessageQueue: "none" | "nats" | "watermill" | "kafka-go" | "asynq";
|
|
1300
1425
|
goCaching: "none" | "redis" | "ristretto";
|
|
1301
1426
|
goConfig: "none" | "viper" | "koanf";
|
|
1302
|
-
goObservability: "none" | "opentelemetry";
|
|
1427
|
+
goObservability: "none" | "opentelemetry" | "prometheus";
|
|
1428
|
+
goValidation: "none" | "validator";
|
|
1429
|
+
goQuality: "none" | "golangci-lint";
|
|
1430
|
+
goMigrations: "none" | "golang-migrate";
|
|
1431
|
+
goTemplating: "none" | "templ";
|
|
1432
|
+
goProtoTooling: "none" | "buf";
|
|
1433
|
+
goDI: "none" | "fx";
|
|
1303
1434
|
javaWebFramework: "none" | "spring-boot" | "quarkus" | "micronaut";
|
|
1304
1435
|
javaBuildTool: "none" | "maven" | "gradle";
|
|
1305
1436
|
javaOrm: "none" | "spring-data-jpa" | "jooq" | "mybatis";
|
|
@@ -1307,7 +1438,7 @@ declare const router: {
|
|
|
1307
1438
|
javaApi: "none" | "spring-graphql" | "openapi-generator" | "grpc";
|
|
1308
1439
|
javaLogging: "none" | "logback" | "log4j2";
|
|
1309
1440
|
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" | "
|
|
1441
|
+
javaTestingLibraries: ("none" | "testcontainers" | "junit5" | "mockito" | "assertj" | "rest-assured" | "wiremock" | "awaitility" | "archunit" | "jqwik")[];
|
|
1311
1442
|
dotnetWebFramework: "none" | "aspnet-minimal" | "aspnet-mvc" | "aspnet-blazor";
|
|
1312
1443
|
dotnetOrm: "none" | "ef-core" | "dapper" | "linq2db";
|
|
1313
1444
|
dotnetAuth: "none" | "aspnet-identity" | "duende-identityserver" | "auth0-aspnet";
|
|
@@ -1320,24 +1451,29 @@ declare const router: {
|
|
|
1320
1451
|
dotnetCaching: "none" | "redis" | "memory-cache";
|
|
1321
1452
|
dotnetDeploy: "none" | "docker" | "azure" | "aws";
|
|
1322
1453
|
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";
|
|
1454
|
+
elixirOrm: "none" | "ecto" | "ecto-sql" | "myxql" | "ecto_sqlite3";
|
|
1455
|
+
elixirAuth: "none" | "phx-gen-auth" | "ueberauth" | "guardian" | "pow";
|
|
1456
|
+
elixirApi: "none" | "grpc" | "rest" | "absinthe" | "open_api_spex";
|
|
1326
1457
|
elixirRealtime: "none" | "channels" | "presence" | "pubsub" | "live-view-streams";
|
|
1327
1458
|
elixirJobs: "none" | "oban" | "quantum";
|
|
1328
1459
|
elixirValidation: "none" | "ecto-changesets" | "nimble-options";
|
|
1329
|
-
elixirHttp: "none" | "req" | "finch";
|
|
1460
|
+
elixirHttp: "none" | "req" | "finch" | "tesla";
|
|
1330
1461
|
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";
|
|
1462
|
+
elixirEmail: "none" | "swoosh" | "bamboo";
|
|
1463
|
+
elixirCaching: "none" | "cachex" | "nebulex" | "redix";
|
|
1464
|
+
elixirObservability: "none" | "opentelemetry" | "sentry" | "telemetry" | "prom_ex";
|
|
1465
|
+
elixirTesting: "none" | "ex_unit" | "mox" | "bypass" | "wallaby" | "stream_data" | "ex_machina";
|
|
1466
|
+
elixirQuality: "none" | "credo" | "dialyxir" | "sobelow" | "excoveralls" | "mix_audit";
|
|
1467
|
+
elixirI18n: "none" | "gettext";
|
|
1468
|
+
elixirHttpServer: "none" | "bandit" | "cowboy";
|
|
1469
|
+
elixirApplicationFramework: "none" | "ash";
|
|
1470
|
+
elixirDocumentation: "none" | "ex_doc";
|
|
1471
|
+
elixirClustering: "none" | "libcluster";
|
|
1336
1472
|
elixirDeploy: "none" | "docker" | "fly" | "gigalixir" | "mix-release";
|
|
1337
|
-
elixirLibraries: ("none" | "nx" | "broadway")[];
|
|
1473
|
+
elixirLibraries: ("none" | "nx" | "broadway" | "ex_aws" | "floki" | "rustler")[];
|
|
1338
1474
|
aiDocs: ("none" | "claude-md" | "agents-md" | "cursorrules")[];
|
|
1339
1475
|
workspaceShape?: "monorepo" | "single-app" | undefined;
|
|
1340
|
-
astroIntegration?: "none" | "
|
|
1476
|
+
astroIntegration?: "none" | "vue" | "svelte" | "solid" | "react" | undefined;
|
|
1341
1477
|
shadcnBase?: "radix" | "base" | undefined;
|
|
1342
1478
|
shadcnStyle?: "vega" | "nova" | "maia" | "lyra" | "mira" | "luma" | "sera" | undefined;
|
|
1343
1479
|
shadcnIconLibrary?: "lucide" | "tabler" | "hugeicons" | "phosphor" | "remixicon" | "heroicons" | "react-icons" | undefined;
|
|
@@ -1348,7 +1484,7 @@ declare const router: {
|
|
|
1348
1484
|
javaLanguage?: "java" | "kotlin" | undefined;
|
|
1349
1485
|
stackParts?: {
|
|
1350
1486
|
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" | "
|
|
1487
|
+
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" | "mobile" | "graphql" | "deploy" | "migrations" | "navigation" | "ui" | "css" | "storage" | "push" | "ota" | "deepLinking" | "appPlatform" | "dataFetching" | "workspaceTooling" | "language" | "buildTool" | "cli" | "errorHandling" | "httpClient" | "libraries" | "templating";
|
|
1352
1488
|
toolId: string;
|
|
1353
1489
|
ecosystem: "typescript" | "react-native" | "rust" | "python" | "go" | "java" | "elixir" | "dotnet" | "universal";
|
|
1354
1490
|
source: "selected" | "defaulted" | "provided" | "legacy" | "adjusted";
|
|
@@ -1394,11 +1530,11 @@ declare const router: {
|
|
|
1394
1530
|
orm: "none" | "drizzle" | "prisma" | "mongoose" | "typeorm" | "kysely" | "mikroorm" | "sequelize";
|
|
1395
1531
|
backend: "effect" | "none" | "hono" | "express" | "fastify" | "elysia" | "fets" | "nestjs" | "adonisjs" | "nitro" | "encore" | "convex" | "self";
|
|
1396
1532
|
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")[];
|
|
1533
|
+
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")[];
|
|
1534
|
+
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
1535
|
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";
|
|
1536
|
+
auth: "none" | "better-auth" | "better-auth-organizations" | "go-better-auth" | "clerk" | "nextauth" | "stack-auth" | "supabase-auth" | "auth0" | "workos" | "kinde" | "passport";
|
|
1537
|
+
payments: "none" | "revenuecat" | "polar" | "stripe" | "lemon-squeezy" | "paddle" | "paypal" | "dodo" | "creem" | "autumn" | "commet";
|
|
1402
1538
|
git: boolean;
|
|
1403
1539
|
packageManager: "bun" | "npm" | "pnpm" | "yarn";
|
|
1404
1540
|
versionChannel: "stable" | "latest" | "beta";
|
|
@@ -1407,24 +1543,24 @@ declare const router: {
|
|
|
1407
1543
|
api: "none" | "trpc" | "orpc" | "ts-rest" | "garph" | "graphql-yoga" | "apollo-server" | "openapi";
|
|
1408
1544
|
webDeploy: "none" | "docker" | "cloudflare" | "fly" | "railway" | "render" | "netlify" | "sst" | "vercel";
|
|
1409
1545
|
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";
|
|
1546
|
+
ai: "none" | "langgraph" | "openai-sdk" | "anthropic-sdk" | "google-adk" | "langchain" | "llamaindex" | "vercel-ai" | "mastra" | "voltagent" | "openai-agents" | "modelfusion" | "tanstack-ai" | "ai-cli";
|
|
1411
1547
|
effect: "effect" | "none" | "effect-full";
|
|
1412
1548
|
stateManagement: "none" | "zustand" | "jotai" | "nanostores" | "redux-toolkit" | "mobx" | "xstate" | "valtio" | "tanstack-store" | "legend-state";
|
|
1413
1549
|
forms: "none" | "tanstack-form" | "react-hook-form" | "formik" | "final-form" | "conform" | "modular-forms";
|
|
1414
|
-
testing: "none" | "vitest" | "playwright" | "vitest-playwright" | "jest" | "cypress";
|
|
1550
|
+
testing: "none" | "vitest" | "playwright" | "vitest-playwright" | "jest" | "mocha" | "cypress";
|
|
1415
1551
|
email: "none" | "react-email" | "resend" | "nodemailer" | "postmark" | "sendgrid" | "aws-ses" | "mailgun" | "plunk";
|
|
1416
|
-
cssFramework: "none" | "tailwind" | "scss" | "less" | "postcss-only";
|
|
1552
|
+
cssFramework: "none" | "tailwind" | "scss" | "less" | "postcss-only" | "styled-components";
|
|
1417
1553
|
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
1554
|
validation: "none" | "zod" | "valibot" | "arktype" | "typebox" | "typia" | "runtypes" | "effect-schema";
|
|
1419
|
-
realtime: "none" | "socket-io" | "partykit" | "ably" | "pusher" | "liveblocks" | "yjs";
|
|
1555
|
+
realtime: "none" | "socket-io" | "ws" | "partykit" | "ably" | "pusher" | "liveblocks" | "yjs";
|
|
1420
1556
|
jobQueue: "none" | "bullmq" | "trigger-dev" | "inngest" | "temporal";
|
|
1421
1557
|
animation: "none" | "framer-motion" | "gsap" | "react-spring" | "auto-animate" | "lottie";
|
|
1422
1558
|
fileUpload: "none" | "uploadthing" | "filepond" | "uppy";
|
|
1423
1559
|
logging: "none" | "pino" | "winston" | "evlog";
|
|
1424
1560
|
observability: "none" | "opentelemetry" | "sentry" | "grafana" | "datadog" | "axiom" | "betterstack";
|
|
1425
1561
|
featureFlags: "none" | "growthbook" | "posthog" | "launchdarkly" | "flagsmith" | "unleash";
|
|
1426
|
-
analytics: "none" | "posthog" | "plausible" | "umami";
|
|
1427
|
-
cms: "none" | "payload" | "sanity" | "strapi" | "tinacms" | "directus" | "keystatic";
|
|
1562
|
+
analytics: "none" | "posthog" | "plausible" | "umami" | "ga4";
|
|
1563
|
+
cms: "none" | "payload" | "sanity" | "strapi" | "tinacms" | "directus" | "keystatic" | "contentful";
|
|
1428
1564
|
caching: "none" | "redis" | "upstash-redis";
|
|
1429
1565
|
rateLimit: "none" | "arcjet" | "upstash-ratelimit";
|
|
1430
1566
|
i18n: "none" | "paraglide" | "i18next" | "next-intl" | "intlayer";
|
|
@@ -1438,24 +1574,24 @@ declare const router: {
|
|
|
1438
1574
|
mobilePush: "none" | "expo-notifications";
|
|
1439
1575
|
mobileOTA: "none" | "expo-updates";
|
|
1440
1576
|
mobileDeepLinking: "none" | "expo-linking";
|
|
1441
|
-
rustWebFramework: "none" | "axum" | "actix-web" | "rocket" | "poem" | "loco";
|
|
1442
|
-
rustFrontend: "none" | "leptos" | "dioxus";
|
|
1443
|
-
rustOrm: "none" | "sea-orm" | "sqlx" | "diesel";
|
|
1444
|
-
rustApi: "none" | "tonic" | "async-graphql";
|
|
1577
|
+
rustWebFramework: "none" | "axum" | "actix-web" | "rocket" | "poem" | "loco" | "warp" | "salvo";
|
|
1578
|
+
rustFrontend: "none" | "leptos" | "dioxus" | "yew";
|
|
1579
|
+
rustOrm: "none" | "mongodb" | "sea-orm" | "sqlx" | "diesel" | "rusqlite" | "tokio-postgres";
|
|
1580
|
+
rustApi: "none" | "tonic" | "async-graphql" | "jsonrpsee";
|
|
1445
1581
|
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")[];
|
|
1582
|
+
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
1583
|
rustLogging: "none" | "tracing" | "env-logger";
|
|
1448
1584
|
rustErrorHandling: "none" | "anyhow-thiserror" | "eyre";
|
|
1449
1585
|
rustCaching: "none" | "redis" | "moka";
|
|
1450
|
-
rustAuth: "none" | "oauth2" | "torii";
|
|
1586
|
+
rustAuth: "none" | "oauth2" | "torii" | "openidconnect" | "tower-sessions";
|
|
1451
1587
|
rustRealtime: "none" | "tokio-tungstenite";
|
|
1452
|
-
rustMessageQueue: "none" | "lapin";
|
|
1453
|
-
rustObservability: "none" | "opentelemetry";
|
|
1454
|
-
rustTemplating: "none" | "askama" | "tera";
|
|
1588
|
+
rustMessageQueue: "none" | "lapin" | "rdkafka" | "async-nats";
|
|
1589
|
+
rustObservability: "none" | "opentelemetry" | "metrics";
|
|
1590
|
+
rustTemplating: "none" | "askama" | "tera" | "minijinja";
|
|
1455
1591
|
pythonWebFramework: "none" | "fastapi" | "django" | "flask" | "litestar" | "starlette";
|
|
1456
1592
|
pythonOrm: "none" | "sqlalchemy" | "sqlmodel" | "tortoise-orm" | "peewee";
|
|
1457
1593
|
pythonValidation: "none" | "pydantic";
|
|
1458
|
-
pythonAi: ("none" | "langgraph" | "
|
|
1594
|
+
pythonAi: ("none" | "langgraph" | "openai-sdk" | "anthropic-sdk" | "google-adk" | "langchain" | "llamaindex" | "crewai" | "haystack" | "pydantic-ai" | "smolagents")[];
|
|
1459
1595
|
pythonAuth: "none" | "authlib" | "jwt" | "fastapi-users";
|
|
1460
1596
|
pythonApi: "none" | "django-rest-framework" | "django-ninja";
|
|
1461
1597
|
pythonTaskQueue: "none" | "celery" | "rq" | "dramatiq" | "huey" | "taskiq";
|
|
@@ -1466,18 +1602,24 @@ declare const router: {
|
|
|
1466
1602
|
pythonRealtime: "none" | "python-socketio" | "websockets";
|
|
1467
1603
|
pythonObservability: "none" | "opentelemetry";
|
|
1468
1604
|
pythonCli: ("none" | "typer" | "click" | "rich")[];
|
|
1469
|
-
goWebFramework: "none" | "gin" | "echo" | "fiber" | "chi" | "stdlib";
|
|
1470
|
-
goOrm: "none" | "bun" | "gorm" | "sqlc" | "ent";
|
|
1471
|
-
goApi: "none" | "grpc-go" | "gqlgen";
|
|
1605
|
+
goWebFramework: "none" | "gin" | "echo" | "fiber" | "chi" | "stdlib" | "go-zero" | "kratos" | "httprouter";
|
|
1606
|
+
goOrm: "none" | "bun" | "sqlx" | "gorm" | "sqlc" | "ent";
|
|
1607
|
+
goApi: "none" | "grpc-go" | "gqlgen" | "grpc-gateway" | "connect-go" | "oapi-codegen";
|
|
1472
1608
|
goCli: "none" | "cobra" | "bubbletea" | "urfave-cli";
|
|
1473
1609
|
goLogging: "none" | "zap" | "zerolog" | "slog" | "logrus";
|
|
1474
|
-
goAuth: "none" | "jwt" | "casbin" | "goth";
|
|
1475
|
-
goTesting: ("none" | "testify" | "gomock")[];
|
|
1610
|
+
goAuth: "none" | "oauth2" | "jwt" | "casbin" | "goth";
|
|
1611
|
+
goTesting: ("none" | "testify" | "gomock" | "testcontainers" | "ginkgo-gomega" | "mockery")[];
|
|
1476
1612
|
goRealtime: "none" | "gorilla-websocket" | "centrifuge";
|
|
1477
|
-
goMessageQueue: "none" | "nats" | "watermill";
|
|
1613
|
+
goMessageQueue: "none" | "nats" | "watermill" | "kafka-go" | "asynq";
|
|
1478
1614
|
goCaching: "none" | "redis" | "ristretto";
|
|
1479
1615
|
goConfig: "none" | "viper" | "koanf";
|
|
1480
|
-
goObservability: "none" | "opentelemetry";
|
|
1616
|
+
goObservability: "none" | "opentelemetry" | "prometheus";
|
|
1617
|
+
goValidation: "none" | "validator";
|
|
1618
|
+
goQuality: "none" | "golangci-lint";
|
|
1619
|
+
goMigrations: "none" | "golang-migrate";
|
|
1620
|
+
goTemplating: "none" | "templ";
|
|
1621
|
+
goProtoTooling: "none" | "buf";
|
|
1622
|
+
goDI: "none" | "fx";
|
|
1481
1623
|
javaWebFramework: "none" | "spring-boot" | "quarkus" | "micronaut";
|
|
1482
1624
|
javaBuildTool: "none" | "maven" | "gradle";
|
|
1483
1625
|
javaOrm: "none" | "spring-data-jpa" | "jooq" | "mybatis";
|
|
@@ -1485,7 +1627,7 @@ declare const router: {
|
|
|
1485
1627
|
javaApi: "none" | "spring-graphql" | "openapi-generator" | "grpc";
|
|
1486
1628
|
javaLogging: "none" | "logback" | "log4j2";
|
|
1487
1629
|
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" | "
|
|
1630
|
+
javaTestingLibraries: ("none" | "testcontainers" | "junit5" | "mockito" | "assertj" | "rest-assured" | "wiremock" | "awaitility" | "archunit" | "jqwik")[];
|
|
1489
1631
|
dotnetWebFramework: "none" | "aspnet-minimal" | "aspnet-mvc" | "aspnet-blazor";
|
|
1490
1632
|
dotnetOrm: "none" | "ef-core" | "dapper" | "linq2db";
|
|
1491
1633
|
dotnetAuth: "none" | "aspnet-identity" | "duende-identityserver" | "auth0-aspnet";
|
|
@@ -1498,24 +1640,29 @@ declare const router: {
|
|
|
1498
1640
|
dotnetCaching: "none" | "redis" | "memory-cache";
|
|
1499
1641
|
dotnetDeploy: "none" | "docker" | "azure" | "aws";
|
|
1500
1642
|
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";
|
|
1643
|
+
elixirOrm: "none" | "ecto" | "ecto-sql" | "myxql" | "ecto_sqlite3";
|
|
1644
|
+
elixirAuth: "none" | "phx-gen-auth" | "ueberauth" | "guardian" | "pow";
|
|
1645
|
+
elixirApi: "none" | "grpc" | "rest" | "absinthe" | "open_api_spex";
|
|
1504
1646
|
elixirRealtime: "none" | "channels" | "presence" | "pubsub" | "live-view-streams";
|
|
1505
1647
|
elixirJobs: "none" | "oban" | "quantum";
|
|
1506
1648
|
elixirValidation: "none" | "ecto-changesets" | "nimble-options";
|
|
1507
|
-
elixirHttp: "none" | "req" | "finch";
|
|
1649
|
+
elixirHttp: "none" | "req" | "finch" | "tesla";
|
|
1508
1650
|
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";
|
|
1651
|
+
elixirEmail: "none" | "swoosh" | "bamboo";
|
|
1652
|
+
elixirCaching: "none" | "cachex" | "nebulex" | "redix";
|
|
1653
|
+
elixirObservability: "none" | "opentelemetry" | "sentry" | "telemetry" | "prom_ex";
|
|
1654
|
+
elixirTesting: "none" | "ex_unit" | "mox" | "bypass" | "wallaby" | "stream_data" | "ex_machina";
|
|
1655
|
+
elixirQuality: "none" | "credo" | "dialyxir" | "sobelow" | "excoveralls" | "mix_audit";
|
|
1656
|
+
elixirI18n: "none" | "gettext";
|
|
1657
|
+
elixirHttpServer: "none" | "bandit" | "cowboy";
|
|
1658
|
+
elixirApplicationFramework: "none" | "ash";
|
|
1659
|
+
elixirDocumentation: "none" | "ex_doc";
|
|
1660
|
+
elixirClustering: "none" | "libcluster";
|
|
1514
1661
|
elixirDeploy: "none" | "docker" | "fly" | "gigalixir" | "mix-release";
|
|
1515
|
-
elixirLibraries: ("none" | "nx" | "broadway")[];
|
|
1662
|
+
elixirLibraries: ("none" | "nx" | "broadway" | "ex_aws" | "floki" | "rustler")[];
|
|
1516
1663
|
aiDocs: ("none" | "claude-md" | "agents-md" | "cursorrules")[];
|
|
1517
1664
|
workspaceShape?: "monorepo" | "single-app" | undefined;
|
|
1518
|
-
astroIntegration?: "none" | "
|
|
1665
|
+
astroIntegration?: "none" | "vue" | "svelte" | "solid" | "react" | undefined;
|
|
1519
1666
|
shadcnBase?: "radix" | "base" | undefined;
|
|
1520
1667
|
shadcnStyle?: "vega" | "nova" | "maia" | "lyra" | "mira" | "luma" | "sera" | undefined;
|
|
1521
1668
|
shadcnIconLibrary?: "lucide" | "tabler" | "hugeicons" | "phosphor" | "remixicon" | "heroicons" | "react-icons" | undefined;
|
|
@@ -1526,7 +1673,7 @@ declare const router: {
|
|
|
1526
1673
|
javaLanguage?: "java" | "kotlin" | undefined;
|
|
1527
1674
|
stackParts?: {
|
|
1528
1675
|
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" | "
|
|
1676
|
+
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" | "mobile" | "graphql" | "deploy" | "migrations" | "navigation" | "ui" | "css" | "storage" | "push" | "ota" | "deepLinking" | "appPlatform" | "dataFetching" | "workspaceTooling" | "language" | "buildTool" | "cli" | "errorHandling" | "httpClient" | "libraries" | "templating";
|
|
1530
1677
|
toolId: string;
|
|
1531
1678
|
ecosystem: "typescript" | "react-native" | "rust" | "python" | "go" | "java" | "elixir" | "dotnet" | "universal";
|
|
1532
1679
|
source: "selected" | "defaulted" | "provided" | "legacy" | "adjusted";
|
|
@@ -1558,11 +1705,11 @@ declare const router: {
|
|
|
1558
1705
|
orm: "none" | "drizzle" | "prisma" | "mongoose" | "typeorm" | "kysely" | "mikroorm" | "sequelize";
|
|
1559
1706
|
backend: "effect" | "none" | "hono" | "express" | "fastify" | "elysia" | "fets" | "nestjs" | "adonisjs" | "nitro" | "encore" | "convex" | "self";
|
|
1560
1707
|
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")[];
|
|
1708
|
+
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")[];
|
|
1709
|
+
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
1710
|
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";
|
|
1711
|
+
auth: "none" | "better-auth" | "better-auth-organizations" | "go-better-auth" | "clerk" | "nextauth" | "stack-auth" | "supabase-auth" | "auth0" | "workos" | "kinde" | "passport";
|
|
1712
|
+
payments: "none" | "revenuecat" | "polar" | "stripe" | "lemon-squeezy" | "paddle" | "paypal" | "dodo" | "creem" | "autumn" | "commet";
|
|
1566
1713
|
git: boolean;
|
|
1567
1714
|
packageManager: "bun" | "npm" | "pnpm" | "yarn";
|
|
1568
1715
|
versionChannel: "stable" | "latest" | "beta";
|
|
@@ -1571,24 +1718,24 @@ declare const router: {
|
|
|
1571
1718
|
api: "none" | "trpc" | "orpc" | "ts-rest" | "garph" | "graphql-yoga" | "apollo-server" | "openapi";
|
|
1572
1719
|
webDeploy: "none" | "docker" | "cloudflare" | "fly" | "railway" | "render" | "netlify" | "sst" | "vercel";
|
|
1573
1720
|
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";
|
|
1721
|
+
ai: "none" | "langgraph" | "openai-sdk" | "anthropic-sdk" | "google-adk" | "langchain" | "llamaindex" | "vercel-ai" | "mastra" | "voltagent" | "openai-agents" | "modelfusion" | "tanstack-ai" | "ai-cli";
|
|
1575
1722
|
effect: "effect" | "none" | "effect-full";
|
|
1576
1723
|
stateManagement: "none" | "zustand" | "jotai" | "nanostores" | "redux-toolkit" | "mobx" | "xstate" | "valtio" | "tanstack-store" | "legend-state";
|
|
1577
1724
|
forms: "none" | "tanstack-form" | "react-hook-form" | "formik" | "final-form" | "conform" | "modular-forms";
|
|
1578
|
-
testing: "none" | "vitest" | "playwright" | "vitest-playwright" | "jest" | "cypress";
|
|
1725
|
+
testing: "none" | "vitest" | "playwright" | "vitest-playwright" | "jest" | "mocha" | "cypress";
|
|
1579
1726
|
email: "none" | "react-email" | "resend" | "nodemailer" | "postmark" | "sendgrid" | "aws-ses" | "mailgun" | "plunk";
|
|
1580
|
-
cssFramework: "none" | "tailwind" | "scss" | "less" | "postcss-only";
|
|
1727
|
+
cssFramework: "none" | "tailwind" | "scss" | "less" | "postcss-only" | "styled-components";
|
|
1581
1728
|
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
1729
|
validation: "none" | "zod" | "valibot" | "arktype" | "typebox" | "typia" | "runtypes" | "effect-schema";
|
|
1583
|
-
realtime: "none" | "socket-io" | "partykit" | "ably" | "pusher" | "liveblocks" | "yjs";
|
|
1730
|
+
realtime: "none" | "socket-io" | "ws" | "partykit" | "ably" | "pusher" | "liveblocks" | "yjs";
|
|
1584
1731
|
jobQueue: "none" | "bullmq" | "trigger-dev" | "inngest" | "temporal";
|
|
1585
1732
|
animation: "none" | "framer-motion" | "gsap" | "react-spring" | "auto-animate" | "lottie";
|
|
1586
1733
|
fileUpload: "none" | "uploadthing" | "filepond" | "uppy";
|
|
1587
1734
|
logging: "none" | "pino" | "winston" | "evlog";
|
|
1588
1735
|
observability: "none" | "opentelemetry" | "sentry" | "grafana" | "datadog" | "axiom" | "betterstack";
|
|
1589
1736
|
featureFlags: "none" | "growthbook" | "posthog" | "launchdarkly" | "flagsmith" | "unleash";
|
|
1590
|
-
analytics: "none" | "posthog" | "plausible" | "umami";
|
|
1591
|
-
cms: "none" | "payload" | "sanity" | "strapi" | "tinacms" | "directus" | "keystatic";
|
|
1737
|
+
analytics: "none" | "posthog" | "plausible" | "umami" | "ga4";
|
|
1738
|
+
cms: "none" | "payload" | "sanity" | "strapi" | "tinacms" | "directus" | "keystatic" | "contentful";
|
|
1592
1739
|
caching: "none" | "redis" | "upstash-redis";
|
|
1593
1740
|
rateLimit: "none" | "arcjet" | "upstash-ratelimit";
|
|
1594
1741
|
i18n: "none" | "paraglide" | "i18next" | "next-intl" | "intlayer";
|
|
@@ -1602,24 +1749,24 @@ declare const router: {
|
|
|
1602
1749
|
mobilePush: "none" | "expo-notifications";
|
|
1603
1750
|
mobileOTA: "none" | "expo-updates";
|
|
1604
1751
|
mobileDeepLinking: "none" | "expo-linking";
|
|
1605
|
-
rustWebFramework: "none" | "axum" | "actix-web" | "rocket" | "poem" | "loco";
|
|
1606
|
-
rustFrontend: "none" | "leptos" | "dioxus";
|
|
1607
|
-
rustOrm: "none" | "sea-orm" | "sqlx" | "diesel";
|
|
1608
|
-
rustApi: "none" | "tonic" | "async-graphql";
|
|
1752
|
+
rustWebFramework: "none" | "axum" | "actix-web" | "rocket" | "poem" | "loco" | "warp" | "salvo";
|
|
1753
|
+
rustFrontend: "none" | "leptos" | "dioxus" | "yew";
|
|
1754
|
+
rustOrm: "none" | "mongodb" | "sea-orm" | "sqlx" | "diesel" | "rusqlite" | "tokio-postgres";
|
|
1755
|
+
rustApi: "none" | "tonic" | "async-graphql" | "jsonrpsee";
|
|
1609
1756
|
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")[];
|
|
1757
|
+
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
1758
|
rustLogging: "none" | "tracing" | "env-logger";
|
|
1612
1759
|
rustErrorHandling: "none" | "anyhow-thiserror" | "eyre";
|
|
1613
1760
|
rustCaching: "none" | "redis" | "moka";
|
|
1614
|
-
rustAuth: "none" | "oauth2" | "torii";
|
|
1761
|
+
rustAuth: "none" | "oauth2" | "torii" | "openidconnect" | "tower-sessions";
|
|
1615
1762
|
rustRealtime: "none" | "tokio-tungstenite";
|
|
1616
|
-
rustMessageQueue: "none" | "lapin";
|
|
1617
|
-
rustObservability: "none" | "opentelemetry";
|
|
1618
|
-
rustTemplating: "none" | "askama" | "tera";
|
|
1763
|
+
rustMessageQueue: "none" | "lapin" | "rdkafka" | "async-nats";
|
|
1764
|
+
rustObservability: "none" | "opentelemetry" | "metrics";
|
|
1765
|
+
rustTemplating: "none" | "askama" | "tera" | "minijinja";
|
|
1619
1766
|
pythonWebFramework: "none" | "fastapi" | "django" | "flask" | "litestar" | "starlette";
|
|
1620
1767
|
pythonOrm: "none" | "sqlalchemy" | "sqlmodel" | "tortoise-orm" | "peewee";
|
|
1621
1768
|
pythonValidation: "none" | "pydantic";
|
|
1622
|
-
pythonAi: ("none" | "langgraph" | "
|
|
1769
|
+
pythonAi: ("none" | "langgraph" | "openai-sdk" | "anthropic-sdk" | "google-adk" | "langchain" | "llamaindex" | "crewai" | "haystack" | "pydantic-ai" | "smolagents")[];
|
|
1623
1770
|
pythonAuth: "none" | "authlib" | "jwt" | "fastapi-users";
|
|
1624
1771
|
pythonApi: "none" | "django-rest-framework" | "django-ninja";
|
|
1625
1772
|
pythonTaskQueue: "none" | "celery" | "rq" | "dramatiq" | "huey" | "taskiq";
|
|
@@ -1630,18 +1777,24 @@ declare const router: {
|
|
|
1630
1777
|
pythonRealtime: "none" | "python-socketio" | "websockets";
|
|
1631
1778
|
pythonObservability: "none" | "opentelemetry";
|
|
1632
1779
|
pythonCli: ("none" | "typer" | "click" | "rich")[];
|
|
1633
|
-
goWebFramework: "none" | "gin" | "echo" | "fiber" | "chi" | "stdlib";
|
|
1634
|
-
goOrm: "none" | "bun" | "gorm" | "sqlc" | "ent";
|
|
1635
|
-
goApi: "none" | "grpc-go" | "gqlgen";
|
|
1780
|
+
goWebFramework: "none" | "gin" | "echo" | "fiber" | "chi" | "stdlib" | "go-zero" | "kratos" | "httprouter";
|
|
1781
|
+
goOrm: "none" | "bun" | "sqlx" | "gorm" | "sqlc" | "ent";
|
|
1782
|
+
goApi: "none" | "grpc-go" | "gqlgen" | "grpc-gateway" | "connect-go" | "oapi-codegen";
|
|
1636
1783
|
goCli: "none" | "cobra" | "bubbletea" | "urfave-cli";
|
|
1637
1784
|
goLogging: "none" | "zap" | "zerolog" | "slog" | "logrus";
|
|
1638
|
-
goAuth: "none" | "jwt" | "casbin" | "goth";
|
|
1639
|
-
goTesting: ("none" | "testify" | "gomock")[];
|
|
1785
|
+
goAuth: "none" | "oauth2" | "jwt" | "casbin" | "goth";
|
|
1786
|
+
goTesting: ("none" | "testify" | "gomock" | "testcontainers" | "ginkgo-gomega" | "mockery")[];
|
|
1640
1787
|
goRealtime: "none" | "gorilla-websocket" | "centrifuge";
|
|
1641
|
-
goMessageQueue: "none" | "nats" | "watermill";
|
|
1788
|
+
goMessageQueue: "none" | "nats" | "watermill" | "kafka-go" | "asynq";
|
|
1642
1789
|
goCaching: "none" | "redis" | "ristretto";
|
|
1643
1790
|
goConfig: "none" | "viper" | "koanf";
|
|
1644
|
-
goObservability: "none" | "opentelemetry";
|
|
1791
|
+
goObservability: "none" | "opentelemetry" | "prometheus";
|
|
1792
|
+
goValidation: "none" | "validator";
|
|
1793
|
+
goQuality: "none" | "golangci-lint";
|
|
1794
|
+
goMigrations: "none" | "golang-migrate";
|
|
1795
|
+
goTemplating: "none" | "templ";
|
|
1796
|
+
goProtoTooling: "none" | "buf";
|
|
1797
|
+
goDI: "none" | "fx";
|
|
1645
1798
|
javaWebFramework: "none" | "spring-boot" | "quarkus" | "micronaut";
|
|
1646
1799
|
javaBuildTool: "none" | "maven" | "gradle";
|
|
1647
1800
|
javaOrm: "none" | "spring-data-jpa" | "jooq" | "mybatis";
|
|
@@ -1649,7 +1802,7 @@ declare const router: {
|
|
|
1649
1802
|
javaApi: "none" | "spring-graphql" | "openapi-generator" | "grpc";
|
|
1650
1803
|
javaLogging: "none" | "logback" | "log4j2";
|
|
1651
1804
|
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" | "
|
|
1805
|
+
javaTestingLibraries: ("none" | "testcontainers" | "junit5" | "mockito" | "assertj" | "rest-assured" | "wiremock" | "awaitility" | "archunit" | "jqwik")[];
|
|
1653
1806
|
dotnetWebFramework: "none" | "aspnet-minimal" | "aspnet-mvc" | "aspnet-blazor";
|
|
1654
1807
|
dotnetOrm: "none" | "ef-core" | "dapper" | "linq2db";
|
|
1655
1808
|
dotnetAuth: "none" | "aspnet-identity" | "duende-identityserver" | "auth0-aspnet";
|
|
@@ -1662,24 +1815,29 @@ declare const router: {
|
|
|
1662
1815
|
dotnetCaching: "none" | "redis" | "memory-cache";
|
|
1663
1816
|
dotnetDeploy: "none" | "docker" | "azure" | "aws";
|
|
1664
1817
|
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";
|
|
1818
|
+
elixirOrm: "none" | "ecto" | "ecto-sql" | "myxql" | "ecto_sqlite3";
|
|
1819
|
+
elixirAuth: "none" | "phx-gen-auth" | "ueberauth" | "guardian" | "pow";
|
|
1820
|
+
elixirApi: "none" | "grpc" | "rest" | "absinthe" | "open_api_spex";
|
|
1668
1821
|
elixirRealtime: "none" | "channels" | "presence" | "pubsub" | "live-view-streams";
|
|
1669
1822
|
elixirJobs: "none" | "oban" | "quantum";
|
|
1670
1823
|
elixirValidation: "none" | "ecto-changesets" | "nimble-options";
|
|
1671
|
-
elixirHttp: "none" | "req" | "finch";
|
|
1824
|
+
elixirHttp: "none" | "req" | "finch" | "tesla";
|
|
1672
1825
|
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";
|
|
1826
|
+
elixirEmail: "none" | "swoosh" | "bamboo";
|
|
1827
|
+
elixirCaching: "none" | "cachex" | "nebulex" | "redix";
|
|
1828
|
+
elixirObservability: "none" | "opentelemetry" | "sentry" | "telemetry" | "prom_ex";
|
|
1829
|
+
elixirTesting: "none" | "ex_unit" | "mox" | "bypass" | "wallaby" | "stream_data" | "ex_machina";
|
|
1830
|
+
elixirQuality: "none" | "credo" | "dialyxir" | "sobelow" | "excoveralls" | "mix_audit";
|
|
1831
|
+
elixirI18n: "none" | "gettext";
|
|
1832
|
+
elixirHttpServer: "none" | "bandit" | "cowboy";
|
|
1833
|
+
elixirApplicationFramework: "none" | "ash";
|
|
1834
|
+
elixirDocumentation: "none" | "ex_doc";
|
|
1835
|
+
elixirClustering: "none" | "libcluster";
|
|
1678
1836
|
elixirDeploy: "none" | "docker" | "fly" | "gigalixir" | "mix-release";
|
|
1679
|
-
elixirLibraries: ("none" | "nx" | "broadway")[];
|
|
1837
|
+
elixirLibraries: ("none" | "nx" | "broadway" | "ex_aws" | "floki" | "rustler")[];
|
|
1680
1838
|
aiDocs: ("none" | "claude-md" | "agents-md" | "cursorrules")[];
|
|
1681
1839
|
workspaceShape?: "monorepo" | "single-app" | undefined;
|
|
1682
|
-
astroIntegration?: "none" | "
|
|
1840
|
+
astroIntegration?: "none" | "vue" | "svelte" | "solid" | "react" | undefined;
|
|
1683
1841
|
shadcnBase?: "radix" | "base" | undefined;
|
|
1684
1842
|
shadcnStyle?: "vega" | "nova" | "maia" | "lyra" | "mira" | "luma" | "sera" | undefined;
|
|
1685
1843
|
shadcnIconLibrary?: "lucide" | "tabler" | "hugeicons" | "phosphor" | "remixicon" | "heroicons" | "react-icons" | undefined;
|
|
@@ -1690,7 +1848,7 @@ declare const router: {
|
|
|
1690
1848
|
javaLanguage?: "java" | "kotlin" | undefined;
|
|
1691
1849
|
stackParts?: {
|
|
1692
1850
|
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" | "
|
|
1851
|
+
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" | "mobile" | "graphql" | "deploy" | "migrations" | "navigation" | "ui" | "css" | "storage" | "push" | "ota" | "deepLinking" | "appPlatform" | "dataFetching" | "workspaceTooling" | "language" | "buildTool" | "cli" | "errorHandling" | "httpClient" | "libraries" | "templating";
|
|
1694
1852
|
toolId: string;
|
|
1695
1853
|
ecosystem: "typescript" | "react-native" | "rust" | "python" | "go" | "java" | "elixir" | "dotnet" | "universal";
|
|
1696
1854
|
source: "selected" | "defaulted" | "provided" | "legacy" | "adjusted";
|
|
@@ -1742,10 +1900,10 @@ declare const router: {
|
|
|
1742
1900
|
}>>;
|
|
1743
1901
|
astroIntegration: z.ZodOptional<z.ZodEnum<{
|
|
1744
1902
|
none: "none";
|
|
1903
|
+
vue: "vue";
|
|
1745
1904
|
svelte: "svelte";
|
|
1746
1905
|
solid: "solid";
|
|
1747
1906
|
react: "react";
|
|
1748
|
-
vue: "vue";
|
|
1749
1907
|
}>>;
|
|
1750
1908
|
runtime: z.ZodOptional<z.ZodEnum<{
|
|
1751
1909
|
none: "none";
|
|
@@ -1754,13 +1912,13 @@ declare const router: {
|
|
|
1754
1912
|
workers: "workers";
|
|
1755
1913
|
}>>;
|
|
1756
1914
|
backend: z.ZodOptional<z.ZodEnum<{
|
|
1757
|
-
effect: "effect";
|
|
1758
1915
|
none: "none";
|
|
1759
1916
|
hono: "hono";
|
|
1760
1917
|
express: "express";
|
|
1761
1918
|
fastify: "fastify";
|
|
1762
1919
|
elysia: "elysia";
|
|
1763
1920
|
fets: "fets";
|
|
1921
|
+
effect: "effect";
|
|
1764
1922
|
nestjs: "nestjs";
|
|
1765
1923
|
adonisjs: "adonisjs";
|
|
1766
1924
|
nitro: "nitro";
|
|
@@ -1833,6 +1991,7 @@ declare const router: {
|
|
|
1833
1991
|
auth0: "auth0";
|
|
1834
1992
|
workos: "workos";
|
|
1835
1993
|
kinde: "kinde";
|
|
1994
|
+
passport: "passport";
|
|
1836
1995
|
}>>;
|
|
1837
1996
|
payments: z.ZodOptional<z.ZodEnum<{
|
|
1838
1997
|
none: "none";
|
|
@@ -1841,6 +2000,7 @@ declare const router: {
|
|
|
1841
2000
|
stripe: "stripe";
|
|
1842
2001
|
"lemon-squeezy": "lemon-squeezy";
|
|
1843
2002
|
paddle: "paddle";
|
|
2003
|
+
paypal: "paypal";
|
|
1844
2004
|
dodo: "dodo";
|
|
1845
2005
|
creem: "creem";
|
|
1846
2006
|
autumn: "autumn";
|
|
@@ -1915,11 +2075,13 @@ declare const router: {
|
|
|
1915
2075
|
playwright: "playwright";
|
|
1916
2076
|
"vitest-playwright": "vitest-playwright";
|
|
1917
2077
|
jest: "jest";
|
|
2078
|
+
mocha: "mocha";
|
|
1918
2079
|
cypress: "cypress";
|
|
1919
2080
|
}>>;
|
|
1920
2081
|
realtime: z.ZodOptional<z.ZodEnum<{
|
|
1921
2082
|
none: "none";
|
|
1922
2083
|
"socket-io": "socket-io";
|
|
2084
|
+
ws: "ws";
|
|
1923
2085
|
partykit: "partykit";
|
|
1924
2086
|
ably: "ably";
|
|
1925
2087
|
pusher: "pusher";
|
|
@@ -1987,6 +2149,7 @@ declare const router: {
|
|
|
1987
2149
|
scss: "scss";
|
|
1988
2150
|
less: "less";
|
|
1989
2151
|
"postcss-only": "postcss-only";
|
|
2152
|
+
"styled-components": "styled-components";
|
|
1990
2153
|
}>>;
|
|
1991
2154
|
uiLibrary: z.ZodOptional<z.ZodEnum<{
|
|
1992
2155
|
none: "none";
|
|
@@ -2013,6 +2176,7 @@ declare const router: {
|
|
|
2013
2176
|
tinacms: "tinacms";
|
|
2014
2177
|
directus: "directus";
|
|
2015
2178
|
keystatic: "keystatic";
|
|
2179
|
+
contentful: "contentful";
|
|
2016
2180
|
}>>;
|
|
2017
2181
|
featureFlags: z.ZodOptional<z.ZodEnum<{
|
|
2018
2182
|
none: "none";
|
|
@@ -2027,6 +2191,7 @@ declare const router: {
|
|
|
2027
2191
|
posthog: "posthog";
|
|
2028
2192
|
plausible: "plausible";
|
|
2029
2193
|
umami: "umami";
|
|
2194
|
+
ga4: "ga4";
|
|
2030
2195
|
}>>;
|
|
2031
2196
|
mobileNavigation: z.ZodOptional<z.ZodEnum<{
|
|
2032
2197
|
none: "none";
|
|
@@ -2035,9 +2200,9 @@ declare const router: {
|
|
|
2035
2200
|
}>>;
|
|
2036
2201
|
mobileUI: z.ZodOptional<z.ZodEnum<{
|
|
2037
2202
|
none: "none";
|
|
2203
|
+
uniwind: "uniwind";
|
|
2038
2204
|
tamagui: "tamagui";
|
|
2039
2205
|
"gluestack-ui": "gluestack-ui";
|
|
2040
|
-
uniwind: "uniwind";
|
|
2041
2206
|
unistyles: "unistyles";
|
|
2042
2207
|
}>>;
|
|
2043
2208
|
mobileStorage: z.ZodOptional<z.ZodEnum<{
|
|
@@ -2074,8 +2239,8 @@ declare const router: {
|
|
|
2074
2239
|
beta: "beta";
|
|
2075
2240
|
}>>;
|
|
2076
2241
|
examples: z.ZodOptional<z.ZodArray<z.ZodEnum<{
|
|
2077
|
-
ai: "ai";
|
|
2078
2242
|
none: "none";
|
|
2243
|
+
ai: "ai";
|
|
2079
2244
|
"chat-sdk": "chat-sdk";
|
|
2080
2245
|
"tanstack-showcase": "tanstack-showcase";
|
|
2081
2246
|
}>>>;
|
|
@@ -2086,6 +2251,8 @@ declare const router: {
|
|
|
2086
2251
|
voltagent: "voltagent";
|
|
2087
2252
|
langgraph: "langgraph";
|
|
2088
2253
|
"openai-agents": "openai-agents";
|
|
2254
|
+
"openai-sdk": "openai-sdk";
|
|
2255
|
+
"anthropic-sdk": "anthropic-sdk";
|
|
2089
2256
|
"google-adk": "google-adk";
|
|
2090
2257
|
modelfusion: "modelfusion";
|
|
2091
2258
|
langchain: "langchain";
|
|
@@ -2101,8 +2268,8 @@ declare const router: {
|
|
|
2101
2268
|
}>>>;
|
|
2102
2269
|
install: z.ZodOptional<z.ZodBoolean>;
|
|
2103
2270
|
effect: z.ZodOptional<z.ZodEnum<{
|
|
2104
|
-
effect: "effect";
|
|
2105
2271
|
none: "none";
|
|
2272
|
+
effect: "effect";
|
|
2106
2273
|
"effect-full": "effect-full";
|
|
2107
2274
|
}>>;
|
|
2108
2275
|
shadcnBase: z.ZodOptional<z.ZodEnum<{
|
|
@@ -2171,8 +2338,8 @@ declare const router: {
|
|
|
2171
2338
|
"geist-mono": "geist-mono";
|
|
2172
2339
|
}>>;
|
|
2173
2340
|
shadcnRadius: z.ZodOptional<z.ZodEnum<{
|
|
2174
|
-
default: "default";
|
|
2175
2341
|
none: "none";
|
|
2342
|
+
default: "default";
|
|
2176
2343
|
small: "small";
|
|
2177
2344
|
medium: "medium";
|
|
2178
2345
|
large: "large";
|
|
@@ -2184,22 +2351,29 @@ declare const router: {
|
|
|
2184
2351
|
rocket: "rocket";
|
|
2185
2352
|
poem: "poem";
|
|
2186
2353
|
loco: "loco";
|
|
2354
|
+
warp: "warp";
|
|
2355
|
+
salvo: "salvo";
|
|
2187
2356
|
}>>;
|
|
2188
2357
|
rustFrontend: z.ZodOptional<z.ZodEnum<{
|
|
2189
2358
|
none: "none";
|
|
2190
2359
|
leptos: "leptos";
|
|
2191
2360
|
dioxus: "dioxus";
|
|
2361
|
+
yew: "yew";
|
|
2192
2362
|
}>>;
|
|
2193
2363
|
rustOrm: z.ZodOptional<z.ZodEnum<{
|
|
2194
2364
|
none: "none";
|
|
2365
|
+
mongodb: "mongodb";
|
|
2195
2366
|
"sea-orm": "sea-orm";
|
|
2196
2367
|
sqlx: "sqlx";
|
|
2197
2368
|
diesel: "diesel";
|
|
2369
|
+
rusqlite: "rusqlite";
|
|
2370
|
+
"tokio-postgres": "tokio-postgres";
|
|
2198
2371
|
}>>;
|
|
2199
2372
|
rustApi: z.ZodOptional<z.ZodEnum<{
|
|
2200
2373
|
none: "none";
|
|
2201
2374
|
tonic: "tonic";
|
|
2202
2375
|
"async-graphql": "async-graphql";
|
|
2376
|
+
jsonrpsee: "jsonrpsee";
|
|
2203
2377
|
}>>;
|
|
2204
2378
|
rustCli: z.ZodOptional<z.ZodEnum<{
|
|
2205
2379
|
none: "none";
|
|
@@ -2207,12 +2381,12 @@ declare const router: {
|
|
|
2207
2381
|
ratatui: "ratatui";
|
|
2208
2382
|
}>>;
|
|
2209
2383
|
rustLibraries: z.ZodOptional<z.ZodArray<z.ZodEnum<{
|
|
2210
|
-
config: "config";
|
|
2211
2384
|
none: "none";
|
|
2212
2385
|
serde: "serde";
|
|
2213
2386
|
uuid: "uuid";
|
|
2214
2387
|
chrono: "chrono";
|
|
2215
2388
|
reqwest: "reqwest";
|
|
2389
|
+
config: "config";
|
|
2216
2390
|
dashmap: "dashmap";
|
|
2217
2391
|
"parking-lot": "parking-lot";
|
|
2218
2392
|
secrecy: "secrecy";
|
|
@@ -2225,6 +2399,13 @@ declare const router: {
|
|
|
2225
2399
|
mockall: "mockall";
|
|
2226
2400
|
proptest: "proptest";
|
|
2227
2401
|
insta: "insta";
|
|
2402
|
+
rand: "rand";
|
|
2403
|
+
regex: "regex";
|
|
2404
|
+
rayon: "rayon";
|
|
2405
|
+
itertools: "itertools";
|
|
2406
|
+
rstest: "rstest";
|
|
2407
|
+
"cargo-nextest": "cargo-nextest";
|
|
2408
|
+
"cargo-audit": "cargo-audit";
|
|
2228
2409
|
}>>>;
|
|
2229
2410
|
rustLogging: z.ZodOptional<z.ZodEnum<{
|
|
2230
2411
|
none: "none";
|
|
@@ -2245,6 +2426,8 @@ declare const router: {
|
|
|
2245
2426
|
none: "none";
|
|
2246
2427
|
oauth2: "oauth2";
|
|
2247
2428
|
torii: "torii";
|
|
2429
|
+
openidconnect: "openidconnect";
|
|
2430
|
+
"tower-sessions": "tower-sessions";
|
|
2248
2431
|
}>>;
|
|
2249
2432
|
rustRealtime: z.ZodOptional<z.ZodEnum<{
|
|
2250
2433
|
none: "none";
|
|
@@ -2253,15 +2436,19 @@ declare const router: {
|
|
|
2253
2436
|
rustMessageQueue: z.ZodOptional<z.ZodEnum<{
|
|
2254
2437
|
none: "none";
|
|
2255
2438
|
lapin: "lapin";
|
|
2439
|
+
rdkafka: "rdkafka";
|
|
2440
|
+
"async-nats": "async-nats";
|
|
2256
2441
|
}>>;
|
|
2257
2442
|
rustObservability: z.ZodOptional<z.ZodEnum<{
|
|
2258
2443
|
none: "none";
|
|
2259
2444
|
opentelemetry: "opentelemetry";
|
|
2445
|
+
metrics: "metrics";
|
|
2260
2446
|
}>>;
|
|
2261
2447
|
rustTemplating: z.ZodOptional<z.ZodEnum<{
|
|
2262
2448
|
none: "none";
|
|
2263
2449
|
askama: "askama";
|
|
2264
2450
|
tera: "tera";
|
|
2451
|
+
minijinja: "minijinja";
|
|
2265
2452
|
}>>;
|
|
2266
2453
|
pythonWebFramework: z.ZodOptional<z.ZodEnum<{
|
|
2267
2454
|
none: "none";
|
|
@@ -2285,11 +2472,11 @@ declare const router: {
|
|
|
2285
2472
|
pythonAi: z.ZodOptional<z.ZodArray<z.ZodEnum<{
|
|
2286
2473
|
none: "none";
|
|
2287
2474
|
langgraph: "langgraph";
|
|
2475
|
+
"openai-sdk": "openai-sdk";
|
|
2476
|
+
"anthropic-sdk": "anthropic-sdk";
|
|
2288
2477
|
"google-adk": "google-adk";
|
|
2289
2478
|
langchain: "langchain";
|
|
2290
2479
|
llamaindex: "llamaindex";
|
|
2291
|
-
"openai-sdk": "openai-sdk";
|
|
2292
|
-
"anthropic-sdk": "anthropic-sdk";
|
|
2293
2480
|
crewai: "crewai";
|
|
2294
2481
|
haystack: "haystack";
|
|
2295
2482
|
"pydantic-ai": "pydantic-ai";
|
|
@@ -2357,10 +2544,14 @@ declare const router: {
|
|
|
2357
2544
|
fiber: "fiber";
|
|
2358
2545
|
chi: "chi";
|
|
2359
2546
|
stdlib: "stdlib";
|
|
2547
|
+
"go-zero": "go-zero";
|
|
2548
|
+
kratos: "kratos";
|
|
2549
|
+
httprouter: "httprouter";
|
|
2360
2550
|
}>>;
|
|
2361
2551
|
goOrm: z.ZodOptional<z.ZodEnum<{
|
|
2362
2552
|
none: "none";
|
|
2363
2553
|
bun: "bun";
|
|
2554
|
+
sqlx: "sqlx";
|
|
2364
2555
|
gorm: "gorm";
|
|
2365
2556
|
sqlc: "sqlc";
|
|
2366
2557
|
ent: "ent";
|
|
@@ -2369,6 +2560,9 @@ declare const router: {
|
|
|
2369
2560
|
none: "none";
|
|
2370
2561
|
"grpc-go": "grpc-go";
|
|
2371
2562
|
gqlgen: "gqlgen";
|
|
2563
|
+
"grpc-gateway": "grpc-gateway";
|
|
2564
|
+
"connect-go": "connect-go";
|
|
2565
|
+
"oapi-codegen": "oapi-codegen";
|
|
2372
2566
|
}>>;
|
|
2373
2567
|
goCli: z.ZodOptional<z.ZodEnum<{
|
|
2374
2568
|
none: "none";
|
|
@@ -2385,6 +2579,7 @@ declare const router: {
|
|
|
2385
2579
|
}>>;
|
|
2386
2580
|
goAuth: z.ZodOptional<z.ZodEnum<{
|
|
2387
2581
|
none: "none";
|
|
2582
|
+
oauth2: "oauth2";
|
|
2388
2583
|
jwt: "jwt";
|
|
2389
2584
|
casbin: "casbin";
|
|
2390
2585
|
goth: "goth";
|
|
@@ -2393,6 +2588,9 @@ declare const router: {
|
|
|
2393
2588
|
none: "none";
|
|
2394
2589
|
testify: "testify";
|
|
2395
2590
|
gomock: "gomock";
|
|
2591
|
+
testcontainers: "testcontainers";
|
|
2592
|
+
"ginkgo-gomega": "ginkgo-gomega";
|
|
2593
|
+
mockery: "mockery";
|
|
2396
2594
|
}>>>;
|
|
2397
2595
|
goRealtime: z.ZodOptional<z.ZodEnum<{
|
|
2398
2596
|
none: "none";
|
|
@@ -2403,6 +2601,8 @@ declare const router: {
|
|
|
2403
2601
|
none: "none";
|
|
2404
2602
|
nats: "nats";
|
|
2405
2603
|
watermill: "watermill";
|
|
2604
|
+
"kafka-go": "kafka-go";
|
|
2605
|
+
asynq: "asynq";
|
|
2406
2606
|
}>>;
|
|
2407
2607
|
goCaching: z.ZodOptional<z.ZodEnum<{
|
|
2408
2608
|
none: "none";
|
|
@@ -2417,6 +2617,31 @@ declare const router: {
|
|
|
2417
2617
|
goObservability: z.ZodOptional<z.ZodEnum<{
|
|
2418
2618
|
none: "none";
|
|
2419
2619
|
opentelemetry: "opentelemetry";
|
|
2620
|
+
prometheus: "prometheus";
|
|
2621
|
+
}>>;
|
|
2622
|
+
goValidation: z.ZodOptional<z.ZodEnum<{
|
|
2623
|
+
none: "none";
|
|
2624
|
+
validator: "validator";
|
|
2625
|
+
}>>;
|
|
2626
|
+
goQuality: z.ZodOptional<z.ZodEnum<{
|
|
2627
|
+
none: "none";
|
|
2628
|
+
"golangci-lint": "golangci-lint";
|
|
2629
|
+
}>>;
|
|
2630
|
+
goMigrations: z.ZodOptional<z.ZodEnum<{
|
|
2631
|
+
none: "none";
|
|
2632
|
+
"golang-migrate": "golang-migrate";
|
|
2633
|
+
}>>;
|
|
2634
|
+
goTemplating: z.ZodOptional<z.ZodEnum<{
|
|
2635
|
+
none: "none";
|
|
2636
|
+
templ: "templ";
|
|
2637
|
+
}>>;
|
|
2638
|
+
goProtoTooling: z.ZodOptional<z.ZodEnum<{
|
|
2639
|
+
none: "none";
|
|
2640
|
+
buf: "buf";
|
|
2641
|
+
}>>;
|
|
2642
|
+
goDI: z.ZodOptional<z.ZodEnum<{
|
|
2643
|
+
none: "none";
|
|
2644
|
+
fx: "fx";
|
|
2420
2645
|
}>>;
|
|
2421
2646
|
javaLanguage: z.ZodOptional<z.ZodEnum<{
|
|
2422
2647
|
java: "java";
|
|
@@ -2478,9 +2703,9 @@ declare const router: {
|
|
|
2478
2703
|
}>>>;
|
|
2479
2704
|
javaTestingLibraries: z.ZodOptional<z.ZodArray<z.ZodEnum<{
|
|
2480
2705
|
none: "none";
|
|
2706
|
+
testcontainers: "testcontainers";
|
|
2481
2707
|
junit5: "junit5";
|
|
2482
2708
|
mockito: "mockito";
|
|
2483
|
-
testcontainers: "testcontainers";
|
|
2484
2709
|
assertj: "assertj";
|
|
2485
2710
|
"rest-assured": "rest-assured";
|
|
2486
2711
|
wiremock: "wiremock";
|
|
@@ -2561,18 +2786,22 @@ declare const router: {
|
|
|
2561
2786
|
none: "none";
|
|
2562
2787
|
ecto: "ecto";
|
|
2563
2788
|
"ecto-sql": "ecto-sql";
|
|
2789
|
+
myxql: "myxql";
|
|
2790
|
+
ecto_sqlite3: "ecto_sqlite3";
|
|
2564
2791
|
}>>;
|
|
2565
2792
|
elixirAuth: z.ZodOptional<z.ZodEnum<{
|
|
2566
2793
|
none: "none";
|
|
2567
2794
|
"phx-gen-auth": "phx-gen-auth";
|
|
2568
2795
|
ueberauth: "ueberauth";
|
|
2569
2796
|
guardian: "guardian";
|
|
2797
|
+
pow: "pow";
|
|
2570
2798
|
}>>;
|
|
2571
2799
|
elixirApi: z.ZodOptional<z.ZodEnum<{
|
|
2572
2800
|
none: "none";
|
|
2573
2801
|
grpc: "grpc";
|
|
2574
2802
|
rest: "rest";
|
|
2575
2803
|
absinthe: "absinthe";
|
|
2804
|
+
open_api_spex: "open_api_spex";
|
|
2576
2805
|
}>>;
|
|
2577
2806
|
elixirRealtime: z.ZodOptional<z.ZodEnum<{
|
|
2578
2807
|
none: "none";
|
|
@@ -2595,6 +2824,7 @@ declare const router: {
|
|
|
2595
2824
|
none: "none";
|
|
2596
2825
|
req: "req";
|
|
2597
2826
|
finch: "finch";
|
|
2827
|
+
tesla: "tesla";
|
|
2598
2828
|
}>>;
|
|
2599
2829
|
elixirJson: z.ZodOptional<z.ZodEnum<{
|
|
2600
2830
|
none: "none";
|
|
@@ -2603,15 +2833,18 @@ declare const router: {
|
|
|
2603
2833
|
elixirEmail: z.ZodOptional<z.ZodEnum<{
|
|
2604
2834
|
none: "none";
|
|
2605
2835
|
swoosh: "swoosh";
|
|
2836
|
+
bamboo: "bamboo";
|
|
2606
2837
|
}>>;
|
|
2607
2838
|
elixirCaching: z.ZodOptional<z.ZodEnum<{
|
|
2608
2839
|
none: "none";
|
|
2609
2840
|
cachex: "cachex";
|
|
2610
2841
|
nebulex: "nebulex";
|
|
2842
|
+
redix: "redix";
|
|
2611
2843
|
}>>;
|
|
2612
2844
|
elixirObservability: z.ZodOptional<z.ZodEnum<{
|
|
2613
2845
|
none: "none";
|
|
2614
2846
|
opentelemetry: "opentelemetry";
|
|
2847
|
+
sentry: "sentry";
|
|
2615
2848
|
telemetry: "telemetry";
|
|
2616
2849
|
prom_ex: "prom_ex";
|
|
2617
2850
|
}>>;
|
|
@@ -2621,12 +2854,37 @@ declare const router: {
|
|
|
2621
2854
|
mox: "mox";
|
|
2622
2855
|
bypass: "bypass";
|
|
2623
2856
|
wallaby: "wallaby";
|
|
2857
|
+
stream_data: "stream_data";
|
|
2858
|
+
ex_machina: "ex_machina";
|
|
2624
2859
|
}>>;
|
|
2625
2860
|
elixirQuality: z.ZodOptional<z.ZodEnum<{
|
|
2626
2861
|
none: "none";
|
|
2627
2862
|
credo: "credo";
|
|
2628
2863
|
dialyxir: "dialyxir";
|
|
2629
2864
|
sobelow: "sobelow";
|
|
2865
|
+
excoveralls: "excoveralls";
|
|
2866
|
+
mix_audit: "mix_audit";
|
|
2867
|
+
}>>;
|
|
2868
|
+
elixirI18n: z.ZodOptional<z.ZodEnum<{
|
|
2869
|
+
none: "none";
|
|
2870
|
+
gettext: "gettext";
|
|
2871
|
+
}>>;
|
|
2872
|
+
elixirHttpServer: z.ZodOptional<z.ZodEnum<{
|
|
2873
|
+
none: "none";
|
|
2874
|
+
bandit: "bandit";
|
|
2875
|
+
cowboy: "cowboy";
|
|
2876
|
+
}>>;
|
|
2877
|
+
elixirApplicationFramework: z.ZodOptional<z.ZodEnum<{
|
|
2878
|
+
none: "none";
|
|
2879
|
+
ash: "ash";
|
|
2880
|
+
}>>;
|
|
2881
|
+
elixirDocumentation: z.ZodOptional<z.ZodEnum<{
|
|
2882
|
+
none: "none";
|
|
2883
|
+
ex_doc: "ex_doc";
|
|
2884
|
+
}>>;
|
|
2885
|
+
elixirClustering: z.ZodOptional<z.ZodEnum<{
|
|
2886
|
+
none: "none";
|
|
2887
|
+
libcluster: "libcluster";
|
|
2630
2888
|
}>>;
|
|
2631
2889
|
elixirDeploy: z.ZodOptional<z.ZodEnum<{
|
|
2632
2890
|
none: "none";
|
|
@@ -2639,6 +2897,9 @@ declare const router: {
|
|
|
2639
2897
|
none: "none";
|
|
2640
2898
|
nx: "nx";
|
|
2641
2899
|
broadway: "broadway";
|
|
2900
|
+
ex_aws: "ex_aws";
|
|
2901
|
+
floki: "floki";
|
|
2902
|
+
rustler: "rustler";
|
|
2642
2903
|
}>>>;
|
|
2643
2904
|
part: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
2644
2905
|
dryRun: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
@@ -2657,6 +2918,8 @@ declare const router: {
|
|
|
2657
2918
|
"tanstack-router": "tanstack-router";
|
|
2658
2919
|
"react-router": "react-router";
|
|
2659
2920
|
"react-vite": "react-vite";
|
|
2921
|
+
"vanilla-vite": "vanilla-vite";
|
|
2922
|
+
vue: "vue";
|
|
2660
2923
|
"tanstack-start": "tanstack-start";
|
|
2661
2924
|
next: "next";
|
|
2662
2925
|
vinext: "vinext";
|
|
@@ -2703,6 +2966,15 @@ declare const router: {
|
|
|
2703
2966
|
devcontainer: "devcontainer";
|
|
2704
2967
|
"docker-compose": "docker-compose";
|
|
2705
2968
|
"github-actions": "github-actions";
|
|
2969
|
+
eslint: "eslint";
|
|
2970
|
+
prettier: "prettier";
|
|
2971
|
+
axios: "axios";
|
|
2972
|
+
firebase: "firebase";
|
|
2973
|
+
"graphql-codegen": "graphql-codegen";
|
|
2974
|
+
"openapi-typescript": "openapi-typescript";
|
|
2975
|
+
"apollo-client": "apollo-client";
|
|
2976
|
+
electron: "electron";
|
|
2977
|
+
capacitor: "capacitor";
|
|
2706
2978
|
}>>>;
|
|
2707
2979
|
projectDir: z.ZodOptional<z.ZodString>;
|
|
2708
2980
|
acknowledgeArchitectureChange: z.ZodOptional<z.ZodBoolean>;
|
|
@@ -2882,8 +3154,14 @@ type Frontend = import__better_fullstack_types.Frontend;
|
|
|
2882
3154
|
type GoApi = import__better_fullstack_types.GoApi;
|
|
2883
3155
|
type GoAuth = import__better_fullstack_types.GoAuth;
|
|
2884
3156
|
type GoCli = import__better_fullstack_types.GoCli;
|
|
3157
|
+
type GoDI = import__better_fullstack_types.GoDI;
|
|
2885
3158
|
type GoLogging = import__better_fullstack_types.GoLogging;
|
|
3159
|
+
type GoMigrations = import__better_fullstack_types.GoMigrations;
|
|
2886
3160
|
type GoOrm = import__better_fullstack_types.GoOrm;
|
|
3161
|
+
type GoProtoTooling = import__better_fullstack_types.GoProtoTooling;
|
|
3162
|
+
type GoQuality = import__better_fullstack_types.GoQuality;
|
|
3163
|
+
type GoTemplating = import__better_fullstack_types.GoTemplating;
|
|
3164
|
+
type GoValidation = import__better_fullstack_types.GoValidation;
|
|
2887
3165
|
type GoWebFramework = import__better_fullstack_types.GoWebFramework;
|
|
2888
3166
|
type InitResult = import__better_fullstack_types.InitResult;
|
|
2889
3167
|
type JavaAuth = import__better_fullstack_types.JavaAuth;
|
|
@@ -2915,4 +3193,4 @@ type ServerDeploy = import__better_fullstack_types.ServerDeploy;
|
|
|
2915
3193
|
type Template = import__better_fullstack_types.Template;
|
|
2916
3194
|
type UILibrary = import__better_fullstack_types.UILibrary;
|
|
2917
3195
|
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 };
|
|
3196
|
+
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 };
|