create-better-fullstack 2.1.3 → 2.1.5

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/index.d.mts CHANGED
@@ -37,10 +37,10 @@ declare const router: {
37
37
  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<{
38
38
  template: z.ZodOptional<z.ZodEnum<{
39
39
  none: "none";
40
+ uniwind: "uniwind";
40
41
  mern: "mern";
41
42
  pern: "pern";
42
43
  t3: "t3";
43
- uniwind: "uniwind";
44
44
  }>>;
45
45
  fromHistory: z.ZodOptional<z.ZodNumber>;
46
46
  config: z.ZodOptional<z.ZodString>;
@@ -118,8 +118,8 @@ declare const router: {
118
118
  uppy: "uppy";
119
119
  }>>;
120
120
  effect: z.ZodOptional<z.ZodEnum<{
121
- none: "none";
122
121
  effect: "effect";
122
+ none: "none";
123
123
  "effect-full": "effect-full";
124
124
  }>>;
125
125
  stateManagement: z.ZodOptional<z.ZodEnum<{
@@ -279,9 +279,9 @@ declare const router: {
279
279
  }>>;
280
280
  mobileUI: z.ZodOptional<z.ZodEnum<{
281
281
  none: "none";
282
- uniwind: "uniwind";
283
282
  tamagui: "tamagui";
284
283
  "gluestack-ui": "gluestack-ui";
284
+ uniwind: "uniwind";
285
285
  unistyles: "unistyles";
286
286
  }>>;
287
287
  mobileStorage: z.ZodOptional<z.ZodEnum<{
@@ -366,8 +366,8 @@ declare const router: {
366
366
  "github-actions": "github-actions";
367
367
  }>>>;
368
368
  examples: z.ZodOptional<z.ZodArray<z.ZodEnum<{
369
- none: "none";
370
369
  ai: "ai";
370
+ none: "none";
371
371
  "chat-sdk": "chat-sdk";
372
372
  "tanstack-showcase": "tanstack-showcase";
373
373
  }>>>;
@@ -516,8 +516,8 @@ declare const router: {
516
516
  "geist-mono": "geist-mono";
517
517
  }>>;
518
518
  shadcnRadius: z.ZodOptional<z.ZodEnum<{
519
- none: "none";
520
519
  default: "default";
520
+ none: "none";
521
521
  small: "small";
522
522
  medium: "medium";
523
523
  large: "large";
@@ -545,10 +545,10 @@ declare const router: {
545
545
  vercel: "vercel";
546
546
  }>>;
547
547
  directoryConflict: z.ZodOptional<z.ZodEnum<{
548
+ error: "error";
548
549
  merge: "merge";
549
550
  overwrite: "overwrite";
550
551
  increment: "increment";
551
- error: "error";
552
552
  }>>;
553
553
  renderTitle: z.ZodOptional<z.ZodBoolean>;
554
554
  disableAnalytics: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
@@ -581,12 +581,12 @@ declare const router: {
581
581
  ratatui: "ratatui";
582
582
  }>>;
583
583
  rustLibraries: z.ZodOptional<z.ZodArray<z.ZodEnum<{
584
+ config: "config";
584
585
  none: "none";
585
586
  serde: "serde";
586
587
  uuid: "uuid";
587
588
  chrono: "chrono";
588
589
  reqwest: "reqwest";
589
- config: "config";
590
590
  dashmap: "dashmap";
591
591
  "parking-lot": "parking-lot";
592
592
  secrecy: "secrecy";
@@ -1151,7 +1151,7 @@ declare const router: {
1151
1151
  shadcnRadius?: "default" | "none" | "small" | "medium" | "large" | undefined;
1152
1152
  stackParts?: {
1153
1153
  id: string;
1154
- 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" | "deploy" | "navigation" | "ui" | "css" | "storage" | "appPlatform" | "dataFetching" | "workspaceTooling" | "buildTool" | "cli" | "errorHandling" | "httpClient" | "libraries" | "templating";
1154
+ 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" | "push" | "mobile" | "graphql" | "deploy" | "navigation" | "ui" | "css" | "storage" | "ota" | "deepLinking" | "appPlatform" | "dataFetching" | "workspaceTooling" | "buildTool" | "cli" | "errorHandling" | "httpClient" | "libraries" | "templating";
1155
1155
  toolId: string;
1156
1156
  ecosystem: "typescript" | "react-native" | "rust" | "python" | "go" | "java" | "elixir" | "dotnet" | "universal";
1157
1157
  source: "selected" | "defaulted" | "provided" | "legacy" | "adjusted";
@@ -1313,7 +1313,7 @@ declare const router: {
1313
1313
  shadcnRadius?: "default" | "none" | "small" | "medium" | "large" | undefined;
1314
1314
  stackParts?: {
1315
1315
  id: string;
1316
- 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" | "deploy" | "navigation" | "ui" | "css" | "storage" | "appPlatform" | "dataFetching" | "workspaceTooling" | "buildTool" | "cli" | "errorHandling" | "httpClient" | "libraries" | "templating";
1316
+ 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" | "push" | "mobile" | "graphql" | "deploy" | "navigation" | "ui" | "css" | "storage" | "ota" | "deepLinking" | "appPlatform" | "dataFetching" | "workspaceTooling" | "buildTool" | "cli" | "errorHandling" | "httpClient" | "libraries" | "templating";
1317
1317
  toolId: string;
1318
1318
  ecosystem: "typescript" | "react-native" | "rust" | "python" | "go" | "java" | "elixir" | "dotnet" | "universal";
1319
1319
  source: "selected" | "defaulted" | "provided" | "legacy" | "adjusted";
@@ -1489,7 +1489,7 @@ declare const router: {
1489
1489
  shadcnRadius?: "default" | "none" | "small" | "medium" | "large" | undefined;
1490
1490
  stackParts?: {
1491
1491
  id: string;
1492
- 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" | "deploy" | "navigation" | "ui" | "css" | "storage" | "appPlatform" | "dataFetching" | "workspaceTooling" | "buildTool" | "cli" | "errorHandling" | "httpClient" | "libraries" | "templating";
1492
+ 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" | "push" | "mobile" | "graphql" | "deploy" | "navigation" | "ui" | "css" | "storage" | "ota" | "deepLinking" | "appPlatform" | "dataFetching" | "workspaceTooling" | "buildTool" | "cli" | "errorHandling" | "httpClient" | "libraries" | "templating";
1493
1493
  toolId: string;
1494
1494
  ecosystem: "typescript" | "react-native" | "rust" | "python" | "go" | "java" | "elixir" | "dotnet" | "universal";
1495
1495
  source: "selected" | "defaulted" | "provided" | "legacy" | "adjusted";
@@ -1651,7 +1651,7 @@ declare const router: {
1651
1651
  shadcnRadius?: "default" | "none" | "small" | "medium" | "large" | undefined;
1652
1652
  stackParts?: {
1653
1653
  id: string;
1654
- 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" | "deploy" | "navigation" | "ui" | "css" | "storage" | "appPlatform" | "dataFetching" | "workspaceTooling" | "buildTool" | "cli" | "errorHandling" | "httpClient" | "libraries" | "templating";
1654
+ 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" | "push" | "mobile" | "graphql" | "deploy" | "navigation" | "ui" | "css" | "storage" | "ota" | "deepLinking" | "appPlatform" | "dataFetching" | "workspaceTooling" | "buildTool" | "cli" | "errorHandling" | "httpClient" | "libraries" | "templating";
1655
1655
  toolId: string;
1656
1656
  ecosystem: "typescript" | "react-native" | "rust" | "python" | "go" | "java" | "elixir" | "dotnet" | "universal";
1657
1657
  source: "selected" | "defaulted" | "provided" | "legacy" | "adjusted";
@@ -1691,37 +1691,74 @@ declare const router: {
1691
1691
  docs: _orpc_server0.Procedure<_orpc_server0.MergedInitialContext<Record<never, never>, Record<never, never>, Record<never, never>>, Record<never, never>, _orpc_server0.Schema<unknown, unknown>, _orpc_server0.Schema<void, void>, _orpc_server0.MergedErrorMap<Record<never, never>, Record<never, never>>, Record<never, never>>;
1692
1692
  builder: _orpc_server0.Procedure<_orpc_server0.MergedInitialContext<Record<never, never>, Record<never, never>, Record<never, never>>, Record<never, never>, _orpc_server0.Schema<unknown, unknown>, _orpc_server0.Schema<void, void>, _orpc_server0.MergedErrorMap<Record<never, never>, Record<never, never>>, Record<never, never>>;
1693
1693
  add: _orpc_server0.Procedure<_orpc_server0.MergedInitialContext<Record<never, never>, Record<never, never>, Record<never, never>>, Record<never, never>, z.ZodObject<{
1694
- addons: z.ZodOptional<z.ZodArray<z.ZodEnum<{
1694
+ api: z.ZodOptional<z.ZodEnum<{
1695
1695
  none: "none";
1696
- pwa: "pwa";
1697
- tauri: "tauri";
1698
- starlight: "starlight";
1699
- biome: "biome";
1700
- lefthook: "lefthook";
1701
- husky: "husky";
1702
- ruler: "ruler";
1703
- mcp: "mcp";
1704
- skills: "skills";
1705
- turborepo: "turborepo";
1706
- nx: "nx";
1707
- fumadocs: "fumadocs";
1708
- ultracite: "ultracite";
1709
- oxlint: "oxlint";
1710
- opentui: "opentui";
1711
- wxt: "wxt";
1712
- msw: "msw";
1713
- storybook: "storybook";
1714
- swr: "swr";
1715
- "tanstack-query": "tanstack-query";
1716
- "tanstack-table": "tanstack-table";
1717
- "tanstack-virtual": "tanstack-virtual";
1718
- "tanstack-db": "tanstack-db";
1719
- "tanstack-pacer": "tanstack-pacer";
1720
- "backend-utils": "backend-utils";
1721
- devcontainer: "devcontainer";
1722
- "docker-compose": "docker-compose";
1723
- "github-actions": "github-actions";
1724
- }>>>;
1696
+ trpc: "trpc";
1697
+ orpc: "orpc";
1698
+ "ts-rest": "ts-rest";
1699
+ garph: "garph";
1700
+ "graphql-yoga": "graphql-yoga";
1701
+ "apollo-server": "apollo-server";
1702
+ openapi: "openapi";
1703
+ }>>;
1704
+ astroIntegration: z.ZodOptional<z.ZodEnum<{
1705
+ none: "none";
1706
+ svelte: "svelte";
1707
+ solid: "solid";
1708
+ react: "react";
1709
+ vue: "vue";
1710
+ }>>;
1711
+ runtime: z.ZodOptional<z.ZodEnum<{
1712
+ none: "none";
1713
+ bun: "bun";
1714
+ node: "node";
1715
+ workers: "workers";
1716
+ }>>;
1717
+ backend: z.ZodOptional<z.ZodEnum<{
1718
+ none: "none";
1719
+ hono: "hono";
1720
+ express: "express";
1721
+ fastify: "fastify";
1722
+ elysia: "elysia";
1723
+ fets: "fets";
1724
+ nestjs: "nestjs";
1725
+ adonisjs: "adonisjs";
1726
+ nitro: "nitro";
1727
+ encore: "encore";
1728
+ convex: "convex";
1729
+ self: "self";
1730
+ }>>;
1731
+ database: z.ZodOptional<z.ZodEnum<{
1732
+ none: "none";
1733
+ sqlite: "sqlite";
1734
+ postgres: "postgres";
1735
+ mysql: "mysql";
1736
+ mongodb: "mongodb";
1737
+ edgedb: "edgedb";
1738
+ redis: "redis";
1739
+ }>>;
1740
+ orm: z.ZodOptional<z.ZodEnum<{
1741
+ none: "none";
1742
+ drizzle: "drizzle";
1743
+ prisma: "prisma";
1744
+ mongoose: "mongoose";
1745
+ typeorm: "typeorm";
1746
+ kysely: "kysely";
1747
+ mikroorm: "mikroorm";
1748
+ sequelize: "sequelize";
1749
+ }>>;
1750
+ dbSetup: z.ZodOptional<z.ZodEnum<{
1751
+ none: "none";
1752
+ turso: "turso";
1753
+ neon: "neon";
1754
+ "prisma-postgres": "prisma-postgres";
1755
+ planetscale: "planetscale";
1756
+ "mongodb-atlas": "mongodb-atlas";
1757
+ supabase: "supabase";
1758
+ upstash: "upstash";
1759
+ d1: "d1";
1760
+ docker: "docker";
1761
+ }>>;
1725
1762
  webDeploy: z.ZodOptional<z.ZodEnum<{
1726
1763
  none: "none";
1727
1764
  docker: "docker";
@@ -1744,73 +1781,940 @@ declare const router: {
1744
1781
  sst: "sst";
1745
1782
  vercel: "vercel";
1746
1783
  }>>;
1747
- install: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
1748
- packageManager: z.ZodOptional<z.ZodEnum<{
1749
- bun: "bun";
1750
- npm: "npm";
1751
- pnpm: "pnpm";
1752
- yarn: "yarn";
1784
+ auth: z.ZodOptional<z.ZodEnum<{
1785
+ none: "none";
1786
+ "better-auth": "better-auth";
1787
+ "better-auth-organizations": "better-auth-organizations";
1788
+ "go-better-auth": "go-better-auth";
1789
+ clerk: "clerk";
1790
+ nextauth: "nextauth";
1791
+ "stack-auth": "stack-auth";
1792
+ "supabase-auth": "supabase-auth";
1793
+ auth0: "auth0";
1794
+ workos: "workos";
1795
+ kinde: "kinde";
1753
1796
  }>>;
1754
- projectDir: z.ZodOptional<z.ZodString>;
1755
- }, z.core.$strip>, _orpc_server0.Schema<void, void>, _orpc_server0.MergedErrorMap<Record<never, never>, Record<never, never>>, Record<never, never>>;
1756
- history: _orpc_server0.Procedure<_orpc_server0.MergedInitialContext<Record<never, never>, Record<never, never>, Record<never, never>>, Record<never, never>, z.ZodObject<{
1757
- limit: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
1758
- clear: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
1759
- json: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
1760
- }, z.core.$strip>, _orpc_server0.Schema<void, void>, _orpc_server0.MergedErrorMap<Record<never, never>, Record<never, never>>, Record<never, never>>;
1761
- telemetry: _orpc_server0.Procedure<_orpc_server0.MergedInitialContext<Record<never, never>, Record<never, never>, Record<never, never>>, Record<never, never>, z.ZodTuple<[z.ZodDefault<z.ZodOptional<z.ZodEnum<{
1762
- status: "status";
1763
- enable: "enable";
1764
- disable: "disable";
1765
- }>>>, z.ZodObject<{
1766
- json: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
1767
- }, z.core.$strip>], null>, _orpc_server0.Schema<void, void>, _orpc_server0.MergedErrorMap<Record<never, never>, Record<never, never>>, Record<never, never>>;
1768
- "update-deps": _orpc_server0.Procedure<_orpc_server0.MergedInitialContext<Record<never, never>, Record<never, never>, Record<never, never>>, Record<never, never>, z.ZodObject<{
1769
- check: z.ZodDefault<z.ZodBoolean>;
1770
- patch: z.ZodDefault<z.ZodBoolean>;
1771
- all: z.ZodDefault<z.ZodBoolean>;
1772
- ecosystem: z.ZodOptional<z.ZodString>;
1773
- "list-ecosystems": z.ZodDefault<z.ZodBoolean>;
1774
- }, z.core.$strip>, _orpc_server0.Schema<void, void>, _orpc_server0.MergedErrorMap<Record<never, never>, Record<never, never>>, Record<never, never>>;
1775
- mcp: _orpc_server0.Procedure<_orpc_server0.MergedInitialContext<Record<never, never>, Record<never, never>, Record<never, never>>, Record<never, never>, _orpc_server0.Schema<unknown, unknown>, _orpc_server0.Schema<void, void>, _orpc_server0.MergedErrorMap<Record<never, never>, Record<never, never>>, Record<never, never>>;
1776
- doctor: _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<{
1777
- skipChecks: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
1778
- json: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
1779
- }, z.core.$strip>], null>, _orpc_server0.Schema<void, void>, _orpc_server0.MergedErrorMap<Record<never, never>, Record<never, never>>, Record<never, never>>;
1780
- };
1781
- declare function createBtsCli(): trpc_cli0.TrpcCli;
1782
- /**
1783
- * Programmatic API to create a new Better Fullstack project.
1784
- * Returns pure JSON - no console output, no interactive prompts.
1785
- *
1786
- * @example
1787
- * ```typescript
1788
- * import { create } from "create-better-fullstack";
1789
- *
1790
- * const result = await create("my-app", {
1791
- * frontend: ["tanstack-router"],
1792
- * backend: "hono",
1793
- * runtime: "bun",
1794
- * database: "sqlite",
1795
- * orm: "drizzle",
1796
- * });
1797
- *
1798
- * if (result.success) {
1799
- * console.log(`Project created at: ${result.projectDirectory}`);
1800
- * }
1801
- * ```
1802
- */
1803
- declare function create(projectName?: string, options?: Partial<types_d_exports.CreateInput>): Promise<types_d_exports.InitResult>;
1804
- declare function sponsors(): Promise<void>;
1805
- declare function docs(): Promise<void>;
1806
- declare function builder(): Promise<void>;
1807
- declare function add(input: types_d_exports.AddInput): Promise<AddResult | undefined>;
1808
- declare function history(options?: {
1809
- limit?: number;
1810
- clear?: boolean;
1811
- json?: boolean;
1812
- }): Promise<void>;
1813
- declare function telemetry(action?: "status" | "enable" | "disable", options?: {
1797
+ payments: z.ZodOptional<z.ZodEnum<{
1798
+ none: "none";
1799
+ polar: "polar";
1800
+ stripe: "stripe";
1801
+ "lemon-squeezy": "lemon-squeezy";
1802
+ paddle: "paddle";
1803
+ dodo: "dodo";
1804
+ }>>;
1805
+ email: z.ZodOptional<z.ZodEnum<{
1806
+ none: "none";
1807
+ "react-email": "react-email";
1808
+ resend: "resend";
1809
+ nodemailer: "nodemailer";
1810
+ postmark: "postmark";
1811
+ sendgrid: "sendgrid";
1812
+ "aws-ses": "aws-ses";
1813
+ mailgun: "mailgun";
1814
+ plunk: "plunk";
1815
+ }>>;
1816
+ fileUpload: z.ZodOptional<z.ZodEnum<{
1817
+ none: "none";
1818
+ uploadthing: "uploadthing";
1819
+ filepond: "filepond";
1820
+ uppy: "uppy";
1821
+ }>>;
1822
+ logging: z.ZodOptional<z.ZodEnum<{
1823
+ none: "none";
1824
+ pino: "pino";
1825
+ winston: "winston";
1826
+ evlog: "evlog";
1827
+ }>>;
1828
+ observability: z.ZodOptional<z.ZodEnum<{
1829
+ none: "none";
1830
+ opentelemetry: "opentelemetry";
1831
+ sentry: "sentry";
1832
+ grafana: "grafana";
1833
+ datadog: "datadog";
1834
+ axiom: "axiom";
1835
+ betterstack: "betterstack";
1836
+ }>>;
1837
+ stateManagement: z.ZodOptional<z.ZodEnum<{
1838
+ none: "none";
1839
+ zustand: "zustand";
1840
+ jotai: "jotai";
1841
+ nanostores: "nanostores";
1842
+ "redux-toolkit": "redux-toolkit";
1843
+ mobx: "mobx";
1844
+ xstate: "xstate";
1845
+ valtio: "valtio";
1846
+ "tanstack-store": "tanstack-store";
1847
+ "legend-state": "legend-state";
1848
+ }>>;
1849
+ forms: z.ZodOptional<z.ZodEnum<{
1850
+ none: "none";
1851
+ "tanstack-form": "tanstack-form";
1852
+ "react-hook-form": "react-hook-form";
1853
+ formik: "formik";
1854
+ "final-form": "final-form";
1855
+ conform: "conform";
1856
+ "modular-forms": "modular-forms";
1857
+ }>>;
1858
+ validation: z.ZodOptional<z.ZodEnum<{
1859
+ none: "none";
1860
+ zod: "zod";
1861
+ valibot: "valibot";
1862
+ arktype: "arktype";
1863
+ typebox: "typebox";
1864
+ typia: "typia";
1865
+ runtypes: "runtypes";
1866
+ "effect-schema": "effect-schema";
1867
+ }>>;
1868
+ testing: z.ZodOptional<z.ZodEnum<{
1869
+ none: "none";
1870
+ vitest: "vitest";
1871
+ playwright: "playwright";
1872
+ "vitest-playwright": "vitest-playwright";
1873
+ jest: "jest";
1874
+ cypress: "cypress";
1875
+ }>>;
1876
+ realtime: z.ZodOptional<z.ZodEnum<{
1877
+ none: "none";
1878
+ "socket-io": "socket-io";
1879
+ partykit: "partykit";
1880
+ ably: "ably";
1881
+ pusher: "pusher";
1882
+ liveblocks: "liveblocks";
1883
+ yjs: "yjs";
1884
+ }>>;
1885
+ jobQueue: z.ZodOptional<z.ZodEnum<{
1886
+ none: "none";
1887
+ bullmq: "bullmq";
1888
+ "trigger-dev": "trigger-dev";
1889
+ inngest: "inngest";
1890
+ temporal: "temporal";
1891
+ }>>;
1892
+ caching: z.ZodOptional<z.ZodEnum<{
1893
+ none: "none";
1894
+ "upstash-redis": "upstash-redis";
1895
+ }>>;
1896
+ rateLimit: z.ZodOptional<z.ZodEnum<{
1897
+ none: "none";
1898
+ arcjet: "arcjet";
1899
+ "upstash-ratelimit": "upstash-ratelimit";
1900
+ }>>;
1901
+ i18n: z.ZodOptional<z.ZodEnum<{
1902
+ none: "none";
1903
+ paraglide: "paraglide";
1904
+ i18next: "i18next";
1905
+ "next-intl": "next-intl";
1906
+ }>>;
1907
+ search: z.ZodOptional<z.ZodEnum<{
1908
+ none: "none";
1909
+ meilisearch: "meilisearch";
1910
+ typesense: "typesense";
1911
+ elasticsearch: "elasticsearch";
1912
+ opensearch: "opensearch";
1913
+ algolia: "algolia";
1914
+ }>>;
1915
+ vectorDb: z.ZodOptional<z.ZodEnum<{
1916
+ none: "none";
1917
+ pgvector: "pgvector";
1918
+ qdrant: "qdrant";
1919
+ chroma: "chroma";
1920
+ pinecone: "pinecone";
1921
+ }>>;
1922
+ fileStorage: z.ZodOptional<z.ZodEnum<{
1923
+ none: "none";
1924
+ s3: "s3";
1925
+ r2: "r2";
1926
+ cloudinary: "cloudinary";
1927
+ }>>;
1928
+ animation: z.ZodOptional<z.ZodEnum<{
1929
+ none: "none";
1930
+ "framer-motion": "framer-motion";
1931
+ gsap: "gsap";
1932
+ "react-spring": "react-spring";
1933
+ "auto-animate": "auto-animate";
1934
+ lottie: "lottie";
1935
+ }>>;
1936
+ cssFramework: z.ZodOptional<z.ZodEnum<{
1937
+ none: "none";
1938
+ tailwind: "tailwind";
1939
+ scss: "scss";
1940
+ less: "less";
1941
+ "postcss-only": "postcss-only";
1942
+ }>>;
1943
+ uiLibrary: z.ZodOptional<z.ZodEnum<{
1944
+ none: "none";
1945
+ "shadcn-ui": "shadcn-ui";
1946
+ "shadcn-svelte": "shadcn-svelte";
1947
+ daisyui: "daisyui";
1948
+ "radix-ui": "radix-ui";
1949
+ "headless-ui": "headless-ui";
1950
+ "park-ui": "park-ui";
1951
+ "chakra-ui": "chakra-ui";
1952
+ nextui: "nextui";
1953
+ mantine: "mantine";
1954
+ mui: "mui";
1955
+ antd: "antd";
1956
+ "base-ui": "base-ui";
1957
+ "ark-ui": "ark-ui";
1958
+ "react-aria": "react-aria";
1959
+ }>>;
1960
+ cms: z.ZodOptional<z.ZodEnum<{
1961
+ none: "none";
1962
+ payload: "payload";
1963
+ sanity: "sanity";
1964
+ strapi: "strapi";
1965
+ tinacms: "tinacms";
1966
+ directus: "directus";
1967
+ keystatic: "keystatic";
1968
+ }>>;
1969
+ featureFlags: z.ZodOptional<z.ZodEnum<{
1970
+ none: "none";
1971
+ growthbook: "growthbook";
1972
+ posthog: "posthog";
1973
+ launchdarkly: "launchdarkly";
1974
+ flagsmith: "flagsmith";
1975
+ unleash: "unleash";
1976
+ }>>;
1977
+ analytics: z.ZodOptional<z.ZodEnum<{
1978
+ none: "none";
1979
+ plausible: "plausible";
1980
+ umami: "umami";
1981
+ }>>;
1982
+ mobileNavigation: z.ZodOptional<z.ZodEnum<{
1983
+ none: "none";
1984
+ "expo-router": "expo-router";
1985
+ "react-navigation": "react-navigation";
1986
+ }>>;
1987
+ mobileUI: z.ZodOptional<z.ZodEnum<{
1988
+ none: "none";
1989
+ tamagui: "tamagui";
1990
+ "gluestack-ui": "gluestack-ui";
1991
+ uniwind: "uniwind";
1992
+ unistyles: "unistyles";
1993
+ }>>;
1994
+ mobileStorage: z.ZodOptional<z.ZodEnum<{
1995
+ none: "none";
1996
+ mmkv: "mmkv";
1997
+ }>>;
1998
+ mobileTesting: z.ZodOptional<z.ZodEnum<{
1999
+ none: "none";
2000
+ maestro: "maestro";
2001
+ "react-native-testing-library": "react-native-testing-library";
2002
+ "maestro-react-native-testing-library": "maestro-react-native-testing-library";
2003
+ }>>;
2004
+ mobilePush: z.ZodOptional<z.ZodEnum<{
2005
+ none: "none";
2006
+ "expo-notifications": "expo-notifications";
2007
+ }>>;
2008
+ mobileOTA: z.ZodOptional<z.ZodEnum<{
2009
+ none: "none";
2010
+ "expo-updates": "expo-updates";
2011
+ }>>;
2012
+ mobileDeepLinking: z.ZodOptional<z.ZodEnum<{
2013
+ none: "none";
2014
+ "expo-linking": "expo-linking";
2015
+ }>>;
2016
+ packageManager: z.ZodOptional<z.ZodEnum<{
2017
+ bun: "bun";
2018
+ npm: "npm";
2019
+ pnpm: "pnpm";
2020
+ yarn: "yarn";
2021
+ }>>;
2022
+ versionChannel: z.ZodOptional<z.ZodEnum<{
2023
+ stable: "stable";
2024
+ latest: "latest";
2025
+ beta: "beta";
2026
+ }>>;
2027
+ examples: z.ZodOptional<z.ZodArray<z.ZodEnum<{
2028
+ ai: "ai";
2029
+ none: "none";
2030
+ "chat-sdk": "chat-sdk";
2031
+ "tanstack-showcase": "tanstack-showcase";
2032
+ }>>>;
2033
+ ai: z.ZodOptional<z.ZodEnum<{
2034
+ none: "none";
2035
+ "vercel-ai": "vercel-ai";
2036
+ mastra: "mastra";
2037
+ voltagent: "voltagent";
2038
+ langgraph: "langgraph";
2039
+ "openai-agents": "openai-agents";
2040
+ "google-adk": "google-adk";
2041
+ modelfusion: "modelfusion";
2042
+ langchain: "langchain";
2043
+ llamaindex: "llamaindex";
2044
+ "tanstack-ai": "tanstack-ai";
2045
+ "ai-cli": "ai-cli";
2046
+ }>>;
2047
+ aiDocs: z.ZodOptional<z.ZodArray<z.ZodEnum<{
2048
+ none: "none";
2049
+ "claude-md": "claude-md";
2050
+ "agents-md": "agents-md";
2051
+ cursorrules: "cursorrules";
2052
+ }>>>;
2053
+ install: z.ZodOptional<z.ZodBoolean>;
2054
+ effect: z.ZodOptional<z.ZodEnum<{
2055
+ effect: "effect";
2056
+ none: "none";
2057
+ "effect-full": "effect-full";
2058
+ }>>;
2059
+ shadcnBase: z.ZodOptional<z.ZodEnum<{
2060
+ radix: "radix";
2061
+ base: "base";
2062
+ }>>;
2063
+ shadcnStyle: z.ZodOptional<z.ZodEnum<{
2064
+ vega: "vega";
2065
+ nova: "nova";
2066
+ maia: "maia";
2067
+ lyra: "lyra";
2068
+ mira: "mira";
2069
+ luma: "luma";
2070
+ sera: "sera";
2071
+ }>>;
2072
+ shadcnIconLibrary: z.ZodOptional<z.ZodEnum<{
2073
+ lucide: "lucide";
2074
+ tabler: "tabler";
2075
+ hugeicons: "hugeicons";
2076
+ phosphor: "phosphor";
2077
+ remixicon: "remixicon";
2078
+ heroicons: "heroicons";
2079
+ "react-icons": "react-icons";
2080
+ }>>;
2081
+ shadcnColorTheme: z.ZodOptional<z.ZodEnum<{
2082
+ neutral: "neutral";
2083
+ stone: "stone";
2084
+ zinc: "zinc";
2085
+ gray: "gray";
2086
+ amber: "amber";
2087
+ blue: "blue";
2088
+ cyan: "cyan";
2089
+ emerald: "emerald";
2090
+ fuchsia: "fuchsia";
2091
+ green: "green";
2092
+ indigo: "indigo";
2093
+ lime: "lime";
2094
+ orange: "orange";
2095
+ pink: "pink";
2096
+ purple: "purple";
2097
+ red: "red";
2098
+ rose: "rose";
2099
+ sky: "sky";
2100
+ teal: "teal";
2101
+ violet: "violet";
2102
+ yellow: "yellow";
2103
+ }>>;
2104
+ shadcnBaseColor: z.ZodOptional<z.ZodEnum<{
2105
+ neutral: "neutral";
2106
+ stone: "stone";
2107
+ zinc: "zinc";
2108
+ gray: "gray";
2109
+ }>>;
2110
+ shadcnFont: z.ZodOptional<z.ZodEnum<{
2111
+ inter: "inter";
2112
+ geist: "geist";
2113
+ "noto-sans": "noto-sans";
2114
+ "nunito-sans": "nunito-sans";
2115
+ figtree: "figtree";
2116
+ roboto: "roboto";
2117
+ raleway: "raleway";
2118
+ "dm-sans": "dm-sans";
2119
+ "public-sans": "public-sans";
2120
+ outfit: "outfit";
2121
+ "jetbrains-mono": "jetbrains-mono";
2122
+ "geist-mono": "geist-mono";
2123
+ }>>;
2124
+ shadcnRadius: z.ZodOptional<z.ZodEnum<{
2125
+ default: "default";
2126
+ none: "none";
2127
+ small: "small";
2128
+ medium: "medium";
2129
+ large: "large";
2130
+ }>>;
2131
+ rustWebFramework: z.ZodOptional<z.ZodEnum<{
2132
+ none: "none";
2133
+ axum: "axum";
2134
+ "actix-web": "actix-web";
2135
+ rocket: "rocket";
2136
+ }>>;
2137
+ rustFrontend: z.ZodOptional<z.ZodEnum<{
2138
+ none: "none";
2139
+ leptos: "leptos";
2140
+ dioxus: "dioxus";
2141
+ }>>;
2142
+ rustOrm: z.ZodOptional<z.ZodEnum<{
2143
+ none: "none";
2144
+ "sea-orm": "sea-orm";
2145
+ sqlx: "sqlx";
2146
+ diesel: "diesel";
2147
+ }>>;
2148
+ rustApi: z.ZodOptional<z.ZodEnum<{
2149
+ none: "none";
2150
+ tonic: "tonic";
2151
+ "async-graphql": "async-graphql";
2152
+ }>>;
2153
+ rustCli: z.ZodOptional<z.ZodEnum<{
2154
+ none: "none";
2155
+ clap: "clap";
2156
+ ratatui: "ratatui";
2157
+ }>>;
2158
+ rustLibraries: z.ZodOptional<z.ZodArray<z.ZodEnum<{
2159
+ config: "config";
2160
+ none: "none";
2161
+ serde: "serde";
2162
+ uuid: "uuid";
2163
+ chrono: "chrono";
2164
+ reqwest: "reqwest";
2165
+ dashmap: "dashmap";
2166
+ "parking-lot": "parking-lot";
2167
+ secrecy: "secrecy";
2168
+ "tokio-util": "tokio-util";
2169
+ utoipa: "utoipa";
2170
+ validator: "validator";
2171
+ jsonwebtoken: "jsonwebtoken";
2172
+ argon2: "argon2";
2173
+ "tokio-test": "tokio-test";
2174
+ mockall: "mockall";
2175
+ proptest: "proptest";
2176
+ insta: "insta";
2177
+ }>>>;
2178
+ rustLogging: z.ZodOptional<z.ZodEnum<{
2179
+ none: "none";
2180
+ tracing: "tracing";
2181
+ "env-logger": "env-logger";
2182
+ }>>;
2183
+ rustErrorHandling: z.ZodOptional<z.ZodEnum<{
2184
+ none: "none";
2185
+ "anyhow-thiserror": "anyhow-thiserror";
2186
+ eyre: "eyre";
2187
+ }>>;
2188
+ rustCaching: z.ZodOptional<z.ZodEnum<{
2189
+ none: "none";
2190
+ redis: "redis";
2191
+ moka: "moka";
2192
+ }>>;
2193
+ rustAuth: z.ZodOptional<z.ZodEnum<{
2194
+ none: "none";
2195
+ oauth2: "oauth2";
2196
+ torii: "torii";
2197
+ }>>;
2198
+ rustRealtime: z.ZodOptional<z.ZodEnum<{
2199
+ none: "none";
2200
+ "tokio-tungstenite": "tokio-tungstenite";
2201
+ }>>;
2202
+ rustMessageQueue: z.ZodOptional<z.ZodEnum<{
2203
+ none: "none";
2204
+ lapin: "lapin";
2205
+ }>>;
2206
+ rustObservability: z.ZodOptional<z.ZodEnum<{
2207
+ none: "none";
2208
+ opentelemetry: "opentelemetry";
2209
+ }>>;
2210
+ rustTemplating: z.ZodOptional<z.ZodEnum<{
2211
+ none: "none";
2212
+ askama: "askama";
2213
+ tera: "tera";
2214
+ }>>;
2215
+ pythonWebFramework: z.ZodOptional<z.ZodEnum<{
2216
+ none: "none";
2217
+ fastapi: "fastapi";
2218
+ django: "django";
2219
+ flask: "flask";
2220
+ litestar: "litestar";
2221
+ starlette: "starlette";
2222
+ }>>;
2223
+ pythonOrm: z.ZodOptional<z.ZodEnum<{
2224
+ none: "none";
2225
+ sqlalchemy: "sqlalchemy";
2226
+ sqlmodel: "sqlmodel";
2227
+ "tortoise-orm": "tortoise-orm";
2228
+ peewee: "peewee";
2229
+ }>>;
2230
+ pythonValidation: z.ZodOptional<z.ZodEnum<{
2231
+ none: "none";
2232
+ pydantic: "pydantic";
2233
+ }>>;
2234
+ pythonAi: z.ZodOptional<z.ZodArray<z.ZodEnum<{
2235
+ none: "none";
2236
+ langgraph: "langgraph";
2237
+ "google-adk": "google-adk";
2238
+ langchain: "langchain";
2239
+ llamaindex: "llamaindex";
2240
+ "openai-sdk": "openai-sdk";
2241
+ "anthropic-sdk": "anthropic-sdk";
2242
+ crewai: "crewai";
2243
+ haystack: "haystack";
2244
+ "pydantic-ai": "pydantic-ai";
2245
+ smolagents: "smolagents";
2246
+ }>>>;
2247
+ pythonAuth: z.ZodOptional<z.ZodEnum<{
2248
+ none: "none";
2249
+ authlib: "authlib";
2250
+ jwt: "jwt";
2251
+ "fastapi-users": "fastapi-users";
2252
+ }>>;
2253
+ pythonApi: z.ZodOptional<z.ZodEnum<{
2254
+ none: "none";
2255
+ "django-rest-framework": "django-rest-framework";
2256
+ "django-ninja": "django-ninja";
2257
+ }>>;
2258
+ pythonTaskQueue: z.ZodOptional<z.ZodEnum<{
2259
+ none: "none";
2260
+ celery: "celery";
2261
+ rq: "rq";
2262
+ dramatiq: "dramatiq";
2263
+ huey: "huey";
2264
+ taskiq: "taskiq";
2265
+ }>>;
2266
+ pythonGraphql: z.ZodOptional<z.ZodEnum<{
2267
+ none: "none";
2268
+ strawberry: "strawberry";
2269
+ ariadne: "ariadne";
2270
+ }>>;
2271
+ pythonQuality: z.ZodOptional<z.ZodEnum<{
2272
+ none: "none";
2273
+ ruff: "ruff";
2274
+ mypy: "mypy";
2275
+ pyright: "pyright";
2276
+ }>>;
2277
+ pythonTesting: z.ZodOptional<z.ZodArray<z.ZodEnum<{
2278
+ none: "none";
2279
+ pytest: "pytest";
2280
+ hypothesis: "hypothesis";
2281
+ }>>>;
2282
+ pythonCaching: z.ZodOptional<z.ZodEnum<{
2283
+ none: "none";
2284
+ redis: "redis";
2285
+ aiocache: "aiocache";
2286
+ }>>;
2287
+ pythonRealtime: z.ZodOptional<z.ZodEnum<{
2288
+ none: "none";
2289
+ "python-socketio": "python-socketio";
2290
+ websockets: "websockets";
2291
+ }>>;
2292
+ pythonObservability: z.ZodOptional<z.ZodEnum<{
2293
+ none: "none";
2294
+ opentelemetry: "opentelemetry";
2295
+ }>>;
2296
+ pythonCli: z.ZodOptional<z.ZodArray<z.ZodEnum<{
2297
+ none: "none";
2298
+ typer: "typer";
2299
+ click: "click";
2300
+ rich: "rich";
2301
+ }>>>;
2302
+ goWebFramework: z.ZodOptional<z.ZodEnum<{
2303
+ none: "none";
2304
+ gin: "gin";
2305
+ echo: "echo";
2306
+ fiber: "fiber";
2307
+ chi: "chi";
2308
+ }>>;
2309
+ goOrm: z.ZodOptional<z.ZodEnum<{
2310
+ none: "none";
2311
+ gorm: "gorm";
2312
+ sqlc: "sqlc";
2313
+ ent: "ent";
2314
+ }>>;
2315
+ goApi: z.ZodOptional<z.ZodEnum<{
2316
+ none: "none";
2317
+ "grpc-go": "grpc-go";
2318
+ gqlgen: "gqlgen";
2319
+ }>>;
2320
+ goCli: z.ZodOptional<z.ZodEnum<{
2321
+ none: "none";
2322
+ cobra: "cobra";
2323
+ bubbletea: "bubbletea";
2324
+ "urfave-cli": "urfave-cli";
2325
+ }>>;
2326
+ goLogging: z.ZodOptional<z.ZodEnum<{
2327
+ none: "none";
2328
+ zap: "zap";
2329
+ zerolog: "zerolog";
2330
+ slog: "slog";
2331
+ logrus: "logrus";
2332
+ }>>;
2333
+ goAuth: z.ZodOptional<z.ZodEnum<{
2334
+ none: "none";
2335
+ jwt: "jwt";
2336
+ casbin: "casbin";
2337
+ goth: "goth";
2338
+ }>>;
2339
+ goTesting: z.ZodOptional<z.ZodArray<z.ZodEnum<{
2340
+ none: "none";
2341
+ testify: "testify";
2342
+ gomock: "gomock";
2343
+ }>>>;
2344
+ goRealtime: z.ZodOptional<z.ZodEnum<{
2345
+ none: "none";
2346
+ "gorilla-websocket": "gorilla-websocket";
2347
+ centrifuge: "centrifuge";
2348
+ }>>;
2349
+ goMessageQueue: z.ZodOptional<z.ZodEnum<{
2350
+ none: "none";
2351
+ nats: "nats";
2352
+ watermill: "watermill";
2353
+ }>>;
2354
+ goCaching: z.ZodOptional<z.ZodEnum<{
2355
+ none: "none";
2356
+ redis: "redis";
2357
+ ristretto: "ristretto";
2358
+ }>>;
2359
+ goConfig: z.ZodOptional<z.ZodEnum<{
2360
+ none: "none";
2361
+ viper: "viper";
2362
+ koanf: "koanf";
2363
+ }>>;
2364
+ goObservability: z.ZodOptional<z.ZodEnum<{
2365
+ none: "none";
2366
+ opentelemetry: "opentelemetry";
2367
+ }>>;
2368
+ javaWebFramework: z.ZodOptional<z.ZodEnum<{
2369
+ none: "none";
2370
+ "spring-boot": "spring-boot";
2371
+ quarkus: "quarkus";
2372
+ }>>;
2373
+ javaBuildTool: z.ZodOptional<z.ZodEnum<{
2374
+ none: "none";
2375
+ maven: "maven";
2376
+ gradle: "gradle";
2377
+ }>>;
2378
+ javaOrm: z.ZodOptional<z.ZodEnum<{
2379
+ none: "none";
2380
+ "spring-data-jpa": "spring-data-jpa";
2381
+ jooq: "jooq";
2382
+ mybatis: "mybatis";
2383
+ }>>;
2384
+ javaAuth: z.ZodOptional<z.ZodEnum<{
2385
+ none: "none";
2386
+ "spring-security": "spring-security";
2387
+ keycloak: "keycloak";
2388
+ }>>;
2389
+ javaApi: z.ZodOptional<z.ZodEnum<{
2390
+ none: "none";
2391
+ "spring-graphql": "spring-graphql";
2392
+ }>>;
2393
+ javaLogging: z.ZodOptional<z.ZodEnum<{
2394
+ none: "none";
2395
+ logback: "logback";
2396
+ }>>;
2397
+ javaLibraries: z.ZodOptional<z.ZodArray<z.ZodEnum<{
2398
+ none: "none";
2399
+ "spring-actuator": "spring-actuator";
2400
+ "spring-validation": "spring-validation";
2401
+ flyway: "flyway";
2402
+ liquibase: "liquibase";
2403
+ "springdoc-openapi": "springdoc-openapi";
2404
+ lombok: "lombok";
2405
+ mapstruct: "mapstruct";
2406
+ caffeine: "caffeine";
2407
+ resilience4j: "resilience4j";
2408
+ "spring-webflux": "spring-webflux";
2409
+ "spring-batch": "spring-batch";
2410
+ "spring-kafka": "spring-kafka";
2411
+ "spring-mail": "spring-mail";
2412
+ "spring-devtools": "spring-devtools";
2413
+ "micrometer-prometheus": "micrometer-prometheus";
2414
+ thymeleaf: "thymeleaf";
2415
+ "spring-amqp": "spring-amqp";
2416
+ "opentelemetry-java": "opentelemetry-java";
2417
+ }>>>;
2418
+ javaTestingLibraries: z.ZodOptional<z.ZodArray<z.ZodEnum<{
2419
+ none: "none";
2420
+ junit5: "junit5";
2421
+ mockito: "mockito";
2422
+ testcontainers: "testcontainers";
2423
+ assertj: "assertj";
2424
+ "rest-assured": "rest-assured";
2425
+ wiremock: "wiremock";
2426
+ awaitility: "awaitility";
2427
+ archunit: "archunit";
2428
+ jqwik: "jqwik";
2429
+ }>>>;
2430
+ dotnetWebFramework: z.ZodOptional<z.ZodEnum<{
2431
+ none: "none";
2432
+ "aspnet-minimal": "aspnet-minimal";
2433
+ "aspnet-mvc": "aspnet-mvc";
2434
+ "aspnet-blazor": "aspnet-blazor";
2435
+ }>>;
2436
+ dotnetOrm: z.ZodOptional<z.ZodEnum<{
2437
+ none: "none";
2438
+ "ef-core": "ef-core";
2439
+ dapper: "dapper";
2440
+ linq2db: "linq2db";
2441
+ }>>;
2442
+ dotnetAuth: z.ZodOptional<z.ZodEnum<{
2443
+ none: "none";
2444
+ "aspnet-identity": "aspnet-identity";
2445
+ "duende-identityserver": "duende-identityserver";
2446
+ "auth0-aspnet": "auth0-aspnet";
2447
+ }>>;
2448
+ dotnetApi: z.ZodOptional<z.ZodEnum<{
2449
+ none: "none";
2450
+ "minimal-api": "minimal-api";
2451
+ "graphql-hotchocolate": "graphql-hotchocolate";
2452
+ "grpc-dotnet": "grpc-dotnet";
2453
+ }>>;
2454
+ dotnetTesting: z.ZodOptional<z.ZodArray<z.ZodEnum<{
2455
+ none: "none";
2456
+ xunit: "xunit";
2457
+ nunit: "nunit";
2458
+ moq: "moq";
2459
+ "testcontainers-dotnet": "testcontainers-dotnet";
2460
+ }>>>;
2461
+ dotnetJobQueue: z.ZodOptional<z.ZodEnum<{
2462
+ none: "none";
2463
+ hangfire: "hangfire";
2464
+ "quartz-net": "quartz-net";
2465
+ "hosted-services": "hosted-services";
2466
+ }>>;
2467
+ dotnetRealtime: z.ZodOptional<z.ZodEnum<{
2468
+ none: "none";
2469
+ signalr: "signalr";
2470
+ }>>;
2471
+ dotnetObservability: z.ZodOptional<z.ZodArray<z.ZodEnum<{
2472
+ none: "none";
2473
+ "opentelemetry-dotnet": "opentelemetry-dotnet";
2474
+ serilog: "serilog";
2475
+ nlog: "nlog";
2476
+ "health-checks": "health-checks";
2477
+ }>>>;
2478
+ dotnetValidation: z.ZodOptional<z.ZodEnum<{
2479
+ none: "none";
2480
+ fluentvalidation: "fluentvalidation";
2481
+ "data-annotations": "data-annotations";
2482
+ }>>;
2483
+ dotnetCaching: z.ZodOptional<z.ZodEnum<{
2484
+ none: "none";
2485
+ redis: "redis";
2486
+ "memory-cache": "memory-cache";
2487
+ }>>;
2488
+ dotnetDeploy: z.ZodOptional<z.ZodEnum<{
2489
+ none: "none";
2490
+ docker: "docker";
2491
+ azure: "azure";
2492
+ aws: "aws";
2493
+ }>>;
2494
+ elixirWebFramework: z.ZodOptional<z.ZodEnum<{
2495
+ none: "none";
2496
+ phoenix: "phoenix";
2497
+ "phoenix-live-view": "phoenix-live-view";
2498
+ }>>;
2499
+ elixirOrm: z.ZodOptional<z.ZodEnum<{
2500
+ none: "none";
2501
+ ecto: "ecto";
2502
+ "ecto-sql": "ecto-sql";
2503
+ }>>;
2504
+ elixirAuth: z.ZodOptional<z.ZodEnum<{
2505
+ none: "none";
2506
+ "phx-gen-auth": "phx-gen-auth";
2507
+ ueberauth: "ueberauth";
2508
+ guardian: "guardian";
2509
+ }>>;
2510
+ elixirApi: z.ZodOptional<z.ZodEnum<{
2511
+ none: "none";
2512
+ rest: "rest";
2513
+ absinthe: "absinthe";
2514
+ grpc: "grpc";
2515
+ }>>;
2516
+ elixirRealtime: z.ZodOptional<z.ZodEnum<{
2517
+ none: "none";
2518
+ channels: "channels";
2519
+ presence: "presence";
2520
+ pubsub: "pubsub";
2521
+ "live-view-streams": "live-view-streams";
2522
+ }>>;
2523
+ elixirJobs: z.ZodOptional<z.ZodEnum<{
2524
+ none: "none";
2525
+ oban: "oban";
2526
+ quantum: "quantum";
2527
+ }>>;
2528
+ elixirValidation: z.ZodOptional<z.ZodEnum<{
2529
+ none: "none";
2530
+ "ecto-changesets": "ecto-changesets";
2531
+ "nimble-options": "nimble-options";
2532
+ }>>;
2533
+ elixirHttp: z.ZodOptional<z.ZodEnum<{
2534
+ none: "none";
2535
+ req: "req";
2536
+ finch: "finch";
2537
+ }>>;
2538
+ elixirJson: z.ZodOptional<z.ZodEnum<{
2539
+ none: "none";
2540
+ jason: "jason";
2541
+ }>>;
2542
+ elixirEmail: z.ZodOptional<z.ZodEnum<{
2543
+ none: "none";
2544
+ swoosh: "swoosh";
2545
+ }>>;
2546
+ elixirCaching: z.ZodOptional<z.ZodEnum<{
2547
+ none: "none";
2548
+ cachex: "cachex";
2549
+ nebulex: "nebulex";
2550
+ }>>;
2551
+ elixirObservability: z.ZodOptional<z.ZodEnum<{
2552
+ none: "none";
2553
+ opentelemetry: "opentelemetry";
2554
+ telemetry: "telemetry";
2555
+ prom_ex: "prom_ex";
2556
+ }>>;
2557
+ elixirTesting: z.ZodOptional<z.ZodEnum<{
2558
+ none: "none";
2559
+ ex_unit: "ex_unit";
2560
+ mox: "mox";
2561
+ bypass: "bypass";
2562
+ wallaby: "wallaby";
2563
+ }>>;
2564
+ elixirQuality: z.ZodOptional<z.ZodEnum<{
2565
+ none: "none";
2566
+ credo: "credo";
2567
+ dialyxir: "dialyxir";
2568
+ sobelow: "sobelow";
2569
+ }>>;
2570
+ elixirDeploy: z.ZodOptional<z.ZodEnum<{
2571
+ none: "none";
2572
+ docker: "docker";
2573
+ fly: "fly";
2574
+ gigalixir: "gigalixir";
2575
+ "mix-release": "mix-release";
2576
+ }>>;
2577
+ elixirLibraries: z.ZodOptional<z.ZodArray<z.ZodEnum<{
2578
+ none: "none";
2579
+ nx: "nx";
2580
+ broadway: "broadway";
2581
+ }>>>;
2582
+ part: z.ZodOptional<z.ZodArray<z.ZodString>>;
2583
+ dryRun: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
2584
+ ecosystem: z.ZodOptional<z.ZodEnum<{
2585
+ typescript: "typescript";
2586
+ "react-native": "react-native";
2587
+ rust: "rust";
2588
+ python: "python";
2589
+ go: "go";
2590
+ java: "java";
2591
+ elixir: "elixir";
2592
+ dotnet: "dotnet";
2593
+ }>>;
2594
+ frontend: z.ZodOptional<z.ZodArray<z.ZodEnum<{
2595
+ none: "none";
2596
+ "tanstack-router": "tanstack-router";
2597
+ "react-router": "react-router";
2598
+ "react-vite": "react-vite";
2599
+ "tanstack-start": "tanstack-start";
2600
+ next: "next";
2601
+ vinext: "vinext";
2602
+ nuxt: "nuxt";
2603
+ "native-bare": "native-bare";
2604
+ "native-uniwind": "native-uniwind";
2605
+ "native-unistyles": "native-unistyles";
2606
+ svelte: "svelte";
2607
+ solid: "solid";
2608
+ "solid-start": "solid-start";
2609
+ astro: "astro";
2610
+ qwik: "qwik";
2611
+ angular: "angular";
2612
+ redwood: "redwood";
2613
+ fresh: "fresh";
2614
+ }>>>;
2615
+ addons: z.ZodOptional<z.ZodArray<z.ZodEnum<{
2616
+ none: "none";
2617
+ pwa: "pwa";
2618
+ tauri: "tauri";
2619
+ starlight: "starlight";
2620
+ biome: "biome";
2621
+ lefthook: "lefthook";
2622
+ husky: "husky";
2623
+ ruler: "ruler";
2624
+ mcp: "mcp";
2625
+ skills: "skills";
2626
+ turborepo: "turborepo";
2627
+ nx: "nx";
2628
+ fumadocs: "fumadocs";
2629
+ ultracite: "ultracite";
2630
+ oxlint: "oxlint";
2631
+ opentui: "opentui";
2632
+ wxt: "wxt";
2633
+ msw: "msw";
2634
+ storybook: "storybook";
2635
+ swr: "swr";
2636
+ "tanstack-query": "tanstack-query";
2637
+ "tanstack-table": "tanstack-table";
2638
+ "tanstack-virtual": "tanstack-virtual";
2639
+ "tanstack-db": "tanstack-db";
2640
+ "tanstack-pacer": "tanstack-pacer";
2641
+ "backend-utils": "backend-utils";
2642
+ devcontainer: "devcontainer";
2643
+ "docker-compose": "docker-compose";
2644
+ "github-actions": "github-actions";
2645
+ }>>>;
2646
+ projectDir: z.ZodOptional<z.ZodString>;
2647
+ }, z.core.$strip>, _orpc_server0.Schema<void, void>, _orpc_server0.MergedErrorMap<Record<never, never>, Record<never, never>>, Record<never, never>>;
2648
+ history: _orpc_server0.Procedure<_orpc_server0.MergedInitialContext<Record<never, never>, Record<never, never>, Record<never, never>>, Record<never, never>, z.ZodObject<{
2649
+ limit: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
2650
+ clear: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
2651
+ json: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
2652
+ }, z.core.$strip>, _orpc_server0.Schema<void, void>, _orpc_server0.MergedErrorMap<Record<never, never>, Record<never, never>>, Record<never, never>>;
2653
+ telemetry: _orpc_server0.Procedure<_orpc_server0.MergedInitialContext<Record<never, never>, Record<never, never>, Record<never, never>>, Record<never, never>, z.ZodTuple<[z.ZodDefault<z.ZodOptional<z.ZodEnum<{
2654
+ status: "status";
2655
+ enable: "enable";
2656
+ disable: "disable";
2657
+ }>>>, z.ZodObject<{
2658
+ json: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
2659
+ }, z.core.$strip>], null>, _orpc_server0.Schema<void, void>, _orpc_server0.MergedErrorMap<Record<never, never>, Record<never, never>>, Record<never, never>>;
2660
+ "update-deps": _orpc_server0.Procedure<_orpc_server0.MergedInitialContext<Record<never, never>, Record<never, never>, Record<never, never>>, Record<never, never>, z.ZodObject<{
2661
+ check: z.ZodDefault<z.ZodBoolean>;
2662
+ patch: z.ZodDefault<z.ZodBoolean>;
2663
+ all: z.ZodDefault<z.ZodBoolean>;
2664
+ ecosystem: z.ZodOptional<z.ZodString>;
2665
+ "list-ecosystems": z.ZodDefault<z.ZodBoolean>;
2666
+ }, z.core.$strip>, _orpc_server0.Schema<void, void>, _orpc_server0.MergedErrorMap<Record<never, never>, Record<never, never>>, Record<never, never>>;
2667
+ mcp: _orpc_server0.Procedure<_orpc_server0.MergedInitialContext<Record<never, never>, Record<never, never>, Record<never, never>>, Record<never, never>, _orpc_server0.Schema<unknown, unknown>, _orpc_server0.Schema<void, void>, _orpc_server0.MergedErrorMap<Record<never, never>, Record<never, never>>, Record<never, never>>;
2668
+ doctor: _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<{
2669
+ skipChecks: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
2670
+ json: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
2671
+ }, z.core.$strip>], null>, _orpc_server0.Schema<void, void>, _orpc_server0.MergedErrorMap<Record<never, never>, Record<never, never>>, Record<never, never>>;
2672
+ check: _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<{
2673
+ skipChecks: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
2674
+ json: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
2675
+ }, z.core.$strip>], null>, _orpc_server0.Schema<void, void>, _orpc_server0.MergedErrorMap<Record<never, never>, Record<never, never>>, Record<never, never>>;
2676
+ };
2677
+ declare function createBtsCli(): trpc_cli0.TrpcCli;
2678
+ /**
2679
+ * Programmatic API to create a new Better Fullstack project.
2680
+ * Returns pure JSON - no console output, no interactive prompts.
2681
+ *
2682
+ * @example
2683
+ * ```typescript
2684
+ * import { create } from "create-better-fullstack";
2685
+ *
2686
+ * const result = await create("my-app", {
2687
+ * frontend: ["tanstack-router"],
2688
+ * backend: "hono",
2689
+ * runtime: "bun",
2690
+ * database: "sqlite",
2691
+ * orm: "drizzle",
2692
+ * });
2693
+ *
2694
+ * if (result.success) {
2695
+ * console.log(`Project created at: ${result.projectDirectory}`);
2696
+ * }
2697
+ * ```
2698
+ */
2699
+ declare function create(projectName?: string, options?: Partial<types_d_exports.CreateInput>): Promise<types_d_exports.InitResult>;
2700
+ declare function sponsors(): Promise<void>;
2701
+ declare function docs(): Promise<void>;
2702
+ declare function builder(): Promise<void>;
2703
+ declare function add(input: types_d_exports.AddInput): Promise<AddResult | undefined>;
2704
+ declare function history(options?: {
2705
+ limit?: number;
2706
+ clear?: boolean;
2707
+ json?: boolean;
2708
+ }): Promise<void>;
2709
+ declare function telemetry(action?: "status" | "enable" | "disable", options?: {
2710
+ json?: boolean;
2711
+ }): Promise<void>;
2712
+ declare function doctor(projectDir?: string, options?: {
2713
+ skipChecks?: boolean;
2714
+ json?: boolean;
2715
+ }): Promise<void>;
2716
+ declare function check(projectDir?: string, options?: {
2717
+ skipChecks?: boolean;
1814
2718
  json?: boolean;
1815
2719
  }): Promise<void>;
1816
2720
  //#endregion
@@ -1913,4 +2817,4 @@ type ServerDeploy = import__better_fullstack_types.ServerDeploy;
1913
2817
  type Template = import__better_fullstack_types.Template;
1914
2818
  type UILibrary = import__better_fullstack_types.UILibrary;
1915
2819
  type WebDeploy = import__better_fullstack_types.WebDeploy;
1916
- 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, create, createBtsCli, createVirtual, docs, generateVirtualProject, history, router, sponsors, telemetry };
2820
+ 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 };