create-kubojs 3.36.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +266 -0
- package/dist/chunk-BtN16TXe.mjs +28 -0
- package/dist/cli.d.mts +1 -0
- package/dist/cli.mjs +293 -0
- package/dist/index.d.mts +494 -0
- package/dist/index.mjs +3 -0
- package/dist/src-BpWey5Sf.mjs +7933 -0
- package/dist/virtual.d.mts +5 -0
- package/dist/virtual.mjs +4 -0
- package/package.json +104 -0
package/dist/index.d.mts
ADDED
|
@@ -0,0 +1,494 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
import * as _$_trpc_server0 from "@trpc/server";
|
|
3
|
+
import * as _$better_result0 from "better-result";
|
|
4
|
+
import { Result, Result as Result$1 } from "better-result";
|
|
5
|
+
import { TrpcCliMeta, createCli } from "trpc-cli";
|
|
6
|
+
import z from "zod";
|
|
7
|
+
import { EMBEDDED_TEMPLATES, GeneratorError, GeneratorError as GeneratorError$1, GeneratorOptions, TEMPLATE_COUNT, VirtualDirectory, VirtualFile, VirtualFileSystem, VirtualFileTree, VirtualFileTree as VirtualFileTree$1, VirtualNode, generate } from "@kubojs/template-generator";
|
|
8
|
+
|
|
9
|
+
//#region src/types.d.ts
|
|
10
|
+
|
|
11
|
+
import * as import__kubojs_types from "@kubojs/types";
|
|
12
|
+
//#endregion
|
|
13
|
+
//#region src/helpers/core/command-handlers.d.ts
|
|
14
|
+
/**
|
|
15
|
+
* Result type for project creation
|
|
16
|
+
*/
|
|
17
|
+
interface CreateProjectResult {
|
|
18
|
+
success: boolean;
|
|
19
|
+
projectConfig: types_d_exports.ProjectConfig;
|
|
20
|
+
reproducibleCommand: string;
|
|
21
|
+
timeScaffolded: string;
|
|
22
|
+
elapsedTimeMs: number;
|
|
23
|
+
projectDirectory: string;
|
|
24
|
+
relativePath: string;
|
|
25
|
+
error?: string;
|
|
26
|
+
}
|
|
27
|
+
//#endregion
|
|
28
|
+
//#region src/helpers/core/add-handler.d.ts
|
|
29
|
+
interface AddResult {
|
|
30
|
+
success: boolean;
|
|
31
|
+
addedAddons: types_d_exports.Addons[];
|
|
32
|
+
projectDir: string;
|
|
33
|
+
dryRun?: boolean;
|
|
34
|
+
plannedFileCount?: number;
|
|
35
|
+
error?: string;
|
|
36
|
+
}
|
|
37
|
+
//#endregion
|
|
38
|
+
//#region src/utils/errors.d.ts
|
|
39
|
+
declare const UserCancelledError_base: _$better_result0.TaggedErrorClass<"UserCancelledError", {
|
|
40
|
+
message: string;
|
|
41
|
+
}>;
|
|
42
|
+
/**
|
|
43
|
+
* User cancelled the operation (e.g., Ctrl+C in prompts)
|
|
44
|
+
*/
|
|
45
|
+
declare class UserCancelledError extends UserCancelledError_base {
|
|
46
|
+
constructor(args?: {
|
|
47
|
+
message?: string;
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
declare const CLIError_base: _$better_result0.TaggedErrorClass<"CLIError", {
|
|
51
|
+
message: string;
|
|
52
|
+
cause?: unknown;
|
|
53
|
+
}>;
|
|
54
|
+
/**
|
|
55
|
+
* General CLI error for validation failures, invalid flags, etc.
|
|
56
|
+
*/
|
|
57
|
+
declare class CLIError extends CLIError_base {}
|
|
58
|
+
declare const ValidationError_base: _$better_result0.TaggedErrorClass<"ValidationError", {
|
|
59
|
+
field?: string;
|
|
60
|
+
value?: unknown;
|
|
61
|
+
message: string;
|
|
62
|
+
}>;
|
|
63
|
+
/**
|
|
64
|
+
* Validation error for config/flag validation failures
|
|
65
|
+
*/
|
|
66
|
+
declare class ValidationError extends ValidationError_base {
|
|
67
|
+
constructor(args: {
|
|
68
|
+
field?: string;
|
|
69
|
+
value?: unknown;
|
|
70
|
+
message: string;
|
|
71
|
+
});
|
|
72
|
+
}
|
|
73
|
+
declare const CompatibilityError_base: _$better_result0.TaggedErrorClass<"CompatibilityError", {
|
|
74
|
+
options: string[];
|
|
75
|
+
message: string;
|
|
76
|
+
}>;
|
|
77
|
+
/**
|
|
78
|
+
* Compatibility error for incompatible option combinations
|
|
79
|
+
*/
|
|
80
|
+
declare class CompatibilityError extends CompatibilityError_base {
|
|
81
|
+
constructor(args: {
|
|
82
|
+
options: string[];
|
|
83
|
+
message: string;
|
|
84
|
+
});
|
|
85
|
+
}
|
|
86
|
+
declare const DirectoryConflictError_base: _$better_result0.TaggedErrorClass<"DirectoryConflictError", {
|
|
87
|
+
directory: string;
|
|
88
|
+
message: string;
|
|
89
|
+
}>;
|
|
90
|
+
/**
|
|
91
|
+
* Directory conflict error when target directory exists and is not empty
|
|
92
|
+
*/
|
|
93
|
+
declare class DirectoryConflictError extends DirectoryConflictError_base {
|
|
94
|
+
constructor(args: {
|
|
95
|
+
directory: string;
|
|
96
|
+
});
|
|
97
|
+
}
|
|
98
|
+
declare const ProjectCreationError_base: _$better_result0.TaggedErrorClass<"ProjectCreationError", {
|
|
99
|
+
phase: string;
|
|
100
|
+
message: string;
|
|
101
|
+
cause?: unknown;
|
|
102
|
+
}>;
|
|
103
|
+
/**
|
|
104
|
+
* Project creation error for failures during scaffolding
|
|
105
|
+
*/
|
|
106
|
+
declare class ProjectCreationError extends ProjectCreationError_base {
|
|
107
|
+
constructor(args: {
|
|
108
|
+
phase: string;
|
|
109
|
+
message: string;
|
|
110
|
+
cause?: unknown;
|
|
111
|
+
});
|
|
112
|
+
}
|
|
113
|
+
declare const DatabaseSetupError_base: _$better_result0.TaggedErrorClass<"DatabaseSetupError", {
|
|
114
|
+
provider: string;
|
|
115
|
+
message: string;
|
|
116
|
+
cause?: unknown;
|
|
117
|
+
}>;
|
|
118
|
+
/**
|
|
119
|
+
* Database setup error for failures during database configuration
|
|
120
|
+
*/
|
|
121
|
+
declare class DatabaseSetupError extends DatabaseSetupError_base {
|
|
122
|
+
constructor(args: {
|
|
123
|
+
provider: string;
|
|
124
|
+
message: string;
|
|
125
|
+
cause?: unknown;
|
|
126
|
+
});
|
|
127
|
+
}
|
|
128
|
+
//#endregion
|
|
129
|
+
//#region src/index.d.ts
|
|
130
|
+
declare const SchemaNameSchema: z.ZodDefault<z.ZodEnum<{
|
|
131
|
+
all: "all";
|
|
132
|
+
cli: "cli";
|
|
133
|
+
database: "database";
|
|
134
|
+
orm: "orm";
|
|
135
|
+
backend: "backend";
|
|
136
|
+
runtime: "runtime";
|
|
137
|
+
frontend: "frontend";
|
|
138
|
+
addons: "addons";
|
|
139
|
+
examples: "examples";
|
|
140
|
+
packageManager: "packageManager";
|
|
141
|
+
databaseSetup: "databaseSetup";
|
|
142
|
+
api: "api";
|
|
143
|
+
auth: "auth";
|
|
144
|
+
payments: "payments";
|
|
145
|
+
observability: "observability";
|
|
146
|
+
webDeploy: "webDeploy";
|
|
147
|
+
serverDeploy: "serverDeploy";
|
|
148
|
+
directoryConflict: "directoryConflict";
|
|
149
|
+
template: "template";
|
|
150
|
+
addonOptions: "addonOptions";
|
|
151
|
+
dbSetupOptions: "dbSetupOptions";
|
|
152
|
+
createInput: "createInput";
|
|
153
|
+
addInput: "addInput";
|
|
154
|
+
projectConfig: "projectConfig";
|
|
155
|
+
betterTStackConfig: "betterTStackConfig";
|
|
156
|
+
betterTStackConfigFile: "betterTStackConfigFile";
|
|
157
|
+
initResult: "initResult";
|
|
158
|
+
}>>;
|
|
159
|
+
type SchemaName = z.infer<typeof SchemaNameSchema>;
|
|
160
|
+
declare function getSchemaResult(name: SchemaName): unknown;
|
|
161
|
+
declare const router: _$_trpc_server0.TRPCBuiltRouter<{
|
|
162
|
+
ctx: object;
|
|
163
|
+
meta: TrpcCliMeta;
|
|
164
|
+
errorShape: _$_trpc_server0.TRPCDefaultErrorShape;
|
|
165
|
+
transformer: false;
|
|
166
|
+
}, _$_trpc_server0.TRPCDecorateCreateRouterOptions<{
|
|
167
|
+
create: _$_trpc_server0.TRPCMutationProcedure<{
|
|
168
|
+
input: [string | undefined, {
|
|
169
|
+
template?: "none" | "mern" | "pern" | "t3" | "uniwind" | undefined;
|
|
170
|
+
yes?: boolean | undefined;
|
|
171
|
+
yolo?: boolean | undefined;
|
|
172
|
+
dryRun?: boolean | undefined;
|
|
173
|
+
verbose?: boolean | undefined;
|
|
174
|
+
database?: "none" | "sqlite" | "postgres" | "mysql" | "mongodb" | undefined;
|
|
175
|
+
orm?: "none" | "drizzle" | "prisma" | "mongoose" | undefined;
|
|
176
|
+
auth?: "none" | "better-auth" | "clerk" | undefined;
|
|
177
|
+
payments?: "none" | "abacatepay" | undefined;
|
|
178
|
+
observability?: "none" | "getmonitor" | undefined;
|
|
179
|
+
frontend?: ("none" | "tanstack-router" | "react-router" | "tanstack-start" | "next" | "nuxt" | "native-bare" | "native-uniwind" | "native-unistyles" | "svelte" | "solid" | "astro")[] | undefined;
|
|
180
|
+
addons?: ("none" | "pwa" | "tauri" | "electrobun" | "starlight" | "biome" | "lefthook" | "husky" | "mcp" | "turborepo" | "nx" | "vite-plus" | "fumadocs" | "ultracite" | "oxlint" | "opentui" | "wxt" | "skills" | "evlog")[] | undefined;
|
|
181
|
+
examples?: ("none" | "todo" | "ai")[] | undefined;
|
|
182
|
+
git?: boolean | undefined;
|
|
183
|
+
packageManager?: "bun" | "npm" | "pnpm" | undefined;
|
|
184
|
+
install?: boolean | undefined;
|
|
185
|
+
dbSetup?: "none" | "turso" | "neon" | "prisma-postgres" | "planetscale" | "mongodb-atlas" | "supabase" | "d1" | "docker" | undefined;
|
|
186
|
+
backend?: "none" | "hono" | "express" | "fastify" | "elysia" | "convex" | "self" | undefined;
|
|
187
|
+
runtime?: "none" | "bun" | "node" | "workers" | undefined;
|
|
188
|
+
api?: "none" | "trpc" | "orpc" | undefined;
|
|
189
|
+
webDeploy?: "none" | "docker" | "cloudflare" | "vercel" | "guaracloud" | undefined;
|
|
190
|
+
serverDeploy?: "none" | "docker" | "cloudflare" | "vercel" | "guaracloud" | undefined;
|
|
191
|
+
directoryConflict?: "merge" | "overwrite" | "increment" | "error" | undefined;
|
|
192
|
+
renderTitle?: boolean | undefined;
|
|
193
|
+
disableAnalytics?: boolean | undefined;
|
|
194
|
+
manualDb?: boolean | undefined;
|
|
195
|
+
dbSetupOptions?: {
|
|
196
|
+
mode?: "manual" | "auto" | undefined;
|
|
197
|
+
neon?: {
|
|
198
|
+
method?: "neondb" | "neonctl" | undefined;
|
|
199
|
+
projectName?: string | undefined;
|
|
200
|
+
regionId?: string | undefined;
|
|
201
|
+
} | undefined;
|
|
202
|
+
prismaPostgres?: {
|
|
203
|
+
regionId?: string | undefined;
|
|
204
|
+
} | undefined;
|
|
205
|
+
turso?: {
|
|
206
|
+
databaseName?: string | undefined;
|
|
207
|
+
groupName?: string | undefined;
|
|
208
|
+
installCli?: boolean | undefined;
|
|
209
|
+
} | undefined;
|
|
210
|
+
} | undefined;
|
|
211
|
+
}];
|
|
212
|
+
output: CreateProjectResult | undefined;
|
|
213
|
+
meta: TrpcCliMeta;
|
|
214
|
+
}>;
|
|
215
|
+
createJson: _$_trpc_server0.TRPCMutationProcedure<{
|
|
216
|
+
input: {
|
|
217
|
+
projectName?: string | undefined;
|
|
218
|
+
template?: "none" | "mern" | "pern" | "t3" | "uniwind" | undefined;
|
|
219
|
+
yes?: boolean | undefined;
|
|
220
|
+
yolo?: boolean | undefined;
|
|
221
|
+
dryRun?: boolean | undefined;
|
|
222
|
+
verbose?: boolean | undefined;
|
|
223
|
+
addonOptions?: {
|
|
224
|
+
wxt?: {
|
|
225
|
+
template: "svelte" | "solid" | "vanilla" | "vue" | "react";
|
|
226
|
+
devPort?: number | undefined;
|
|
227
|
+
} | undefined;
|
|
228
|
+
fumadocs?: {
|
|
229
|
+
template: "react-router" | "tanstack-start" | "next-mdx" | "next-mdx-static" | "waku" | "react-router-spa" | "tanstack-start-spa";
|
|
230
|
+
devPort?: number | undefined;
|
|
231
|
+
search?: "orama" | "orama-cloud" | undefined;
|
|
232
|
+
ogImage?: "next-og" | "takumi" | undefined;
|
|
233
|
+
aiChat?: "openrouter" | "llmgateway" | "inkeep" | undefined;
|
|
234
|
+
} | undefined;
|
|
235
|
+
opentui?: {
|
|
236
|
+
template: "solid" | "react" | "core";
|
|
237
|
+
} | undefined;
|
|
238
|
+
mcp?: {
|
|
239
|
+
scope?: "project" | "global" | undefined;
|
|
240
|
+
servers?: ("nx" | "better-auth" | "clerk" | "neon" | "planetscale" | "supabase" | "convex" | "kubojs" | "context7" | "cloudflare-docs" | "shadcn" | "next-devtools" | "nuxt-docs" | "nuxt-ui-docs" | "svelte-docs" | "astro-docs" | "expo" | "polar")[] | undefined;
|
|
241
|
+
agents?: ("antigravity" | "cline" | "cline-cli" | "cursor" | "claude-code" | "codex" | "opencode" | "gemini-cli" | "github-copilot-cli" | "mcporter" | "vscode" | "zed" | "claude-desktop" | "goose")[] | undefined;
|
|
242
|
+
} | undefined;
|
|
243
|
+
skills?: {
|
|
244
|
+
scope?: "project" | "global" | undefined;
|
|
245
|
+
agents?: ("antigravity" | "cline" | "cursor" | "claude-code" | "codex" | "opencode" | "gemini-cli" | "goose" | "github-copilot" | "windsurf" | "roo" | "kilo" | "openhands" | "trae" | "amp" | "pi" | "qoder" | "qwen-code" | "kiro-cli" | "droid" | "command-code" | "clawdbot" | "zencoder" | "neovate" | "mcpjam")[] | undefined;
|
|
246
|
+
selections?: {
|
|
247
|
+
source: "vercel-labs/agent-skills" | "vercel/ai" | "vercel/turborepo" | "yusukebe/hono-skill" | "vercel-labs/next-skills" | "nuxt/ui" | "heroui-inc/heroui" | "shadcn/ui" | "better-auth/skills" | "clerk/skills" | "neondatabase/agent-skills" | "supabase/agent-skills" | "planetscale/database-skills" | "expo/skills" | "prisma/skills" | "elysiajs/skills" | "waynesutton/convexskills" | "msmps/opentui-skill" | "haydenbleasel/ultracite" | "https://www.evlog.dev";
|
|
248
|
+
skills: string[];
|
|
249
|
+
}[] | undefined;
|
|
250
|
+
} | undefined;
|
|
251
|
+
ultracite?: {
|
|
252
|
+
linter?: "biome" | "oxlint" | undefined;
|
|
253
|
+
editors?: ("void" | "antigravity" | "cursor" | "vscode" | "zed" | "windsurf" | "trae" | "codebuddy" | "bob" | "kiro")[] | undefined;
|
|
254
|
+
agents?: ("vercel" | "cline" | "codex" | "opencode" | "goose" | "amp" | "pi" | "qoder" | "droid" | "zencoder" | "mcpjam" | "bob" | "universal" | "claude" | "jules" | "replit" | "devin" | "lovable" | "ona" | "openclaw" | "continue" | "snowflake-cortex" | "deepagents" | "kimi-cli" | "mux" | "adal" | "copilot" | "aider" | "firebase-studio" | "open-hands" | "gemini" | "junie" | "augmentcode" | "kilo-code" | "roo-code" | "warp" | "crush" | "qwen" | "amazon-q-cli" | "firebender" | "cursor-cli" | "mistral-vibe")[] | undefined;
|
|
255
|
+
hooks?: ("cursor" | "windsurf" | "codebuddy" | "claude" | "copilot")[] | undefined;
|
|
256
|
+
} | undefined;
|
|
257
|
+
} | undefined;
|
|
258
|
+
dbSetupOptions?: {
|
|
259
|
+
mode?: "manual" | "auto" | undefined;
|
|
260
|
+
neon?: {
|
|
261
|
+
method?: "neondb" | "neonctl" | undefined;
|
|
262
|
+
projectName?: string | undefined;
|
|
263
|
+
regionId?: string | undefined;
|
|
264
|
+
} | undefined;
|
|
265
|
+
prismaPostgres?: {
|
|
266
|
+
regionId?: string | undefined;
|
|
267
|
+
} | undefined;
|
|
268
|
+
turso?: {
|
|
269
|
+
databaseName?: string | undefined;
|
|
270
|
+
groupName?: string | undefined;
|
|
271
|
+
installCli?: boolean | undefined;
|
|
272
|
+
} | undefined;
|
|
273
|
+
} | undefined;
|
|
274
|
+
database?: "none" | "sqlite" | "postgres" | "mysql" | "mongodb" | undefined;
|
|
275
|
+
orm?: "none" | "drizzle" | "prisma" | "mongoose" | undefined;
|
|
276
|
+
auth?: "none" | "better-auth" | "clerk" | undefined;
|
|
277
|
+
payments?: "none" | "abacatepay" | undefined;
|
|
278
|
+
observability?: "none" | "getmonitor" | undefined;
|
|
279
|
+
frontend?: ("none" | "tanstack-router" | "react-router" | "tanstack-start" | "next" | "nuxt" | "native-bare" | "native-uniwind" | "native-unistyles" | "svelte" | "solid" | "astro")[] | undefined;
|
|
280
|
+
addons?: ("none" | "pwa" | "tauri" | "electrobun" | "starlight" | "biome" | "lefthook" | "husky" | "mcp" | "turborepo" | "nx" | "vite-plus" | "fumadocs" | "ultracite" | "oxlint" | "opentui" | "wxt" | "skills" | "evlog")[] | undefined;
|
|
281
|
+
examples?: ("none" | "todo" | "ai")[] | undefined;
|
|
282
|
+
git?: boolean | undefined;
|
|
283
|
+
packageManager?: "bun" | "npm" | "pnpm" | undefined;
|
|
284
|
+
install?: boolean | undefined;
|
|
285
|
+
dbSetup?: "none" | "turso" | "neon" | "prisma-postgres" | "planetscale" | "mongodb-atlas" | "supabase" | "d1" | "docker" | undefined;
|
|
286
|
+
backend?: "none" | "hono" | "express" | "fastify" | "elysia" | "convex" | "self" | undefined;
|
|
287
|
+
runtime?: "none" | "bun" | "node" | "workers" | undefined;
|
|
288
|
+
api?: "none" | "trpc" | "orpc" | undefined;
|
|
289
|
+
webDeploy?: "none" | "docker" | "cloudflare" | "vercel" | "guaracloud" | undefined;
|
|
290
|
+
serverDeploy?: "none" | "docker" | "cloudflare" | "vercel" | "guaracloud" | undefined;
|
|
291
|
+
directoryConflict?: "merge" | "overwrite" | "increment" | "error" | undefined;
|
|
292
|
+
renderTitle?: boolean | undefined;
|
|
293
|
+
disableAnalytics?: boolean | undefined;
|
|
294
|
+
manualDb?: boolean | undefined;
|
|
295
|
+
};
|
|
296
|
+
output: CreateProjectResult;
|
|
297
|
+
meta: TrpcCliMeta;
|
|
298
|
+
}>;
|
|
299
|
+
schema: _$_trpc_server0.TRPCQueryProcedure<{
|
|
300
|
+
input: {
|
|
301
|
+
name?: "all" | "cli" | "database" | "orm" | "backend" | "runtime" | "frontend" | "addons" | "examples" | "packageManager" | "databaseSetup" | "api" | "auth" | "payments" | "observability" | "webDeploy" | "serverDeploy" | "directoryConflict" | "template" | "addonOptions" | "dbSetupOptions" | "createInput" | "addInput" | "projectConfig" | "betterTStackConfig" | "betterTStackConfigFile" | "initResult" | undefined;
|
|
302
|
+
};
|
|
303
|
+
output: unknown;
|
|
304
|
+
meta: TrpcCliMeta;
|
|
305
|
+
}>;
|
|
306
|
+
sponsors: _$_trpc_server0.TRPCMutationProcedure<{
|
|
307
|
+
input: void;
|
|
308
|
+
output: void;
|
|
309
|
+
meta: TrpcCliMeta;
|
|
310
|
+
}>;
|
|
311
|
+
docs: _$_trpc_server0.TRPCMutationProcedure<{
|
|
312
|
+
input: void;
|
|
313
|
+
output: void;
|
|
314
|
+
meta: TrpcCliMeta;
|
|
315
|
+
}>;
|
|
316
|
+
builder: _$_trpc_server0.TRPCMutationProcedure<{
|
|
317
|
+
input: void;
|
|
318
|
+
output: void;
|
|
319
|
+
meta: TrpcCliMeta;
|
|
320
|
+
}>;
|
|
321
|
+
add: _$_trpc_server0.TRPCMutationProcedure<{
|
|
322
|
+
input: {
|
|
323
|
+
addons?: ("none" | "pwa" | "tauri" | "electrobun" | "starlight" | "biome" | "lefthook" | "husky" | "mcp" | "turborepo" | "nx" | "vite-plus" | "fumadocs" | "ultracite" | "oxlint" | "opentui" | "wxt" | "skills" | "evlog")[] | undefined;
|
|
324
|
+
install?: boolean | undefined;
|
|
325
|
+
packageManager?: "bun" | "npm" | "pnpm" | undefined;
|
|
326
|
+
projectDir?: string | undefined;
|
|
327
|
+
};
|
|
328
|
+
output: void;
|
|
329
|
+
meta: TrpcCliMeta;
|
|
330
|
+
}>;
|
|
331
|
+
addJson: _$_trpc_server0.TRPCMutationProcedure<{
|
|
332
|
+
input: {
|
|
333
|
+
addons?: ("none" | "pwa" | "tauri" | "electrobun" | "starlight" | "biome" | "lefthook" | "husky" | "mcp" | "turborepo" | "nx" | "vite-plus" | "fumadocs" | "ultracite" | "oxlint" | "opentui" | "wxt" | "skills" | "evlog")[] | undefined;
|
|
334
|
+
addonOptions?: {
|
|
335
|
+
wxt?: {
|
|
336
|
+
template: "svelte" | "solid" | "vanilla" | "vue" | "react";
|
|
337
|
+
devPort?: number | undefined;
|
|
338
|
+
} | undefined;
|
|
339
|
+
fumadocs?: {
|
|
340
|
+
template: "react-router" | "tanstack-start" | "next-mdx" | "next-mdx-static" | "waku" | "react-router-spa" | "tanstack-start-spa";
|
|
341
|
+
devPort?: number | undefined;
|
|
342
|
+
search?: "orama" | "orama-cloud" | undefined;
|
|
343
|
+
ogImage?: "next-og" | "takumi" | undefined;
|
|
344
|
+
aiChat?: "openrouter" | "llmgateway" | "inkeep" | undefined;
|
|
345
|
+
} | undefined;
|
|
346
|
+
opentui?: {
|
|
347
|
+
template: "solid" | "react" | "core";
|
|
348
|
+
} | undefined;
|
|
349
|
+
mcp?: {
|
|
350
|
+
scope?: "project" | "global" | undefined;
|
|
351
|
+
servers?: ("nx" | "better-auth" | "clerk" | "neon" | "planetscale" | "supabase" | "convex" | "kubojs" | "context7" | "cloudflare-docs" | "shadcn" | "next-devtools" | "nuxt-docs" | "nuxt-ui-docs" | "svelte-docs" | "astro-docs" | "expo" | "polar")[] | undefined;
|
|
352
|
+
agents?: ("antigravity" | "cline" | "cline-cli" | "cursor" | "claude-code" | "codex" | "opencode" | "gemini-cli" | "github-copilot-cli" | "mcporter" | "vscode" | "zed" | "claude-desktop" | "goose")[] | undefined;
|
|
353
|
+
} | undefined;
|
|
354
|
+
skills?: {
|
|
355
|
+
scope?: "project" | "global" | undefined;
|
|
356
|
+
agents?: ("antigravity" | "cline" | "cursor" | "claude-code" | "codex" | "opencode" | "gemini-cli" | "goose" | "github-copilot" | "windsurf" | "roo" | "kilo" | "openhands" | "trae" | "amp" | "pi" | "qoder" | "qwen-code" | "kiro-cli" | "droid" | "command-code" | "clawdbot" | "zencoder" | "neovate" | "mcpjam")[] | undefined;
|
|
357
|
+
selections?: {
|
|
358
|
+
source: "vercel-labs/agent-skills" | "vercel/ai" | "vercel/turborepo" | "yusukebe/hono-skill" | "vercel-labs/next-skills" | "nuxt/ui" | "heroui-inc/heroui" | "shadcn/ui" | "better-auth/skills" | "clerk/skills" | "neondatabase/agent-skills" | "supabase/agent-skills" | "planetscale/database-skills" | "expo/skills" | "prisma/skills" | "elysiajs/skills" | "waynesutton/convexskills" | "msmps/opentui-skill" | "haydenbleasel/ultracite" | "https://www.evlog.dev";
|
|
359
|
+
skills: string[];
|
|
360
|
+
}[] | undefined;
|
|
361
|
+
} | undefined;
|
|
362
|
+
ultracite?: {
|
|
363
|
+
linter?: "biome" | "oxlint" | undefined;
|
|
364
|
+
editors?: ("void" | "antigravity" | "cursor" | "vscode" | "zed" | "windsurf" | "trae" | "codebuddy" | "bob" | "kiro")[] | undefined;
|
|
365
|
+
agents?: ("vercel" | "cline" | "codex" | "opencode" | "goose" | "amp" | "pi" | "qoder" | "droid" | "zencoder" | "mcpjam" | "bob" | "universal" | "claude" | "jules" | "replit" | "devin" | "lovable" | "ona" | "openclaw" | "continue" | "snowflake-cortex" | "deepagents" | "kimi-cli" | "mux" | "adal" | "copilot" | "aider" | "firebase-studio" | "open-hands" | "gemini" | "junie" | "augmentcode" | "kilo-code" | "roo-code" | "warp" | "crush" | "qwen" | "amazon-q-cli" | "firebender" | "cursor-cli" | "mistral-vibe")[] | undefined;
|
|
366
|
+
hooks?: ("cursor" | "windsurf" | "codebuddy" | "claude" | "copilot")[] | undefined;
|
|
367
|
+
} | undefined;
|
|
368
|
+
} | undefined;
|
|
369
|
+
webDeploy?: "none" | "docker" | "cloudflare" | "vercel" | "guaracloud" | undefined;
|
|
370
|
+
serverDeploy?: "none" | "docker" | "cloudflare" | "vercel" | "guaracloud" | undefined;
|
|
371
|
+
projectDir?: string | undefined;
|
|
372
|
+
install?: boolean | undefined;
|
|
373
|
+
packageManager?: "bun" | "npm" | "pnpm" | undefined;
|
|
374
|
+
dryRun?: boolean | undefined;
|
|
375
|
+
};
|
|
376
|
+
output: AddResult;
|
|
377
|
+
meta: TrpcCliMeta;
|
|
378
|
+
}>;
|
|
379
|
+
history: _$_trpc_server0.TRPCMutationProcedure<{
|
|
380
|
+
input: {
|
|
381
|
+
limit?: number | undefined;
|
|
382
|
+
clear?: boolean | undefined;
|
|
383
|
+
json?: boolean | undefined;
|
|
384
|
+
};
|
|
385
|
+
output: void;
|
|
386
|
+
meta: TrpcCliMeta;
|
|
387
|
+
}>;
|
|
388
|
+
}>>;
|
|
389
|
+
declare function createBtsCli(): ReturnType<typeof createCli>;
|
|
390
|
+
/**
|
|
391
|
+
* Error types that can be returned from create/createVirtual
|
|
392
|
+
*/
|
|
393
|
+
type CreateError = UserCancelledError | CLIError | ProjectCreationError;
|
|
394
|
+
/**
|
|
395
|
+
* Programmatic API to create a new I dont know project.
|
|
396
|
+
* Returns a Result type - no console output, no interactive prompts.
|
|
397
|
+
*
|
|
398
|
+
* @example
|
|
399
|
+
* ```typescript
|
|
400
|
+
* import { create, Result } from "kubojs";
|
|
401
|
+
*
|
|
402
|
+
* const result = await create("my-app", {
|
|
403
|
+
* frontend: ["tanstack-router"],
|
|
404
|
+
* backend: "hono",
|
|
405
|
+
* runtime: "bun",
|
|
406
|
+
* database: "sqlite",
|
|
407
|
+
* orm: "drizzle",
|
|
408
|
+
* });
|
|
409
|
+
*
|
|
410
|
+
* result.match({
|
|
411
|
+
* ok: (data) => console.log(`Project created at: ${data.projectDirectory}`),
|
|
412
|
+
* err: (error) => console.error(`Failed: ${error.message}`),
|
|
413
|
+
* });
|
|
414
|
+
*
|
|
415
|
+
* // Or use unwrapOr for a default value
|
|
416
|
+
* const data = result.unwrapOr(null);
|
|
417
|
+
* ```
|
|
418
|
+
*/
|
|
419
|
+
declare function create(projectName?: string, options?: Partial<types_d_exports.CreateInput>): Promise<Result$1<types_d_exports.InitResult, CreateError>>;
|
|
420
|
+
declare function sponsors(): Promise<void>;
|
|
421
|
+
declare function docs(): Promise<void>;
|
|
422
|
+
declare function builder(): Promise<void>;
|
|
423
|
+
/**
|
|
424
|
+
* Programmatic API to generate a project in-memory (virtual filesystem).
|
|
425
|
+
* Returns a Result with a VirtualFileTree without writing to disk.
|
|
426
|
+
* Useful for web previews and testing.
|
|
427
|
+
*
|
|
428
|
+
* @example
|
|
429
|
+
* ```typescript
|
|
430
|
+
* import { createVirtual, EMBEDDED_TEMPLATES, Result } from "kubojs";
|
|
431
|
+
*
|
|
432
|
+
* const result = await createVirtual({
|
|
433
|
+
* frontend: ["tanstack-router"],
|
|
434
|
+
* backend: "hono",
|
|
435
|
+
* runtime: "bun",
|
|
436
|
+
* database: "sqlite",
|
|
437
|
+
* orm: "drizzle",
|
|
438
|
+
* });
|
|
439
|
+
*
|
|
440
|
+
* result.match({
|
|
441
|
+
* ok: (tree) => console.log(`Generated ${tree.fileCount} files`),
|
|
442
|
+
* err: (error) => console.error(`Failed: ${error.message}`),
|
|
443
|
+
* });
|
|
444
|
+
* ```
|
|
445
|
+
*/
|
|
446
|
+
declare function createVirtual(options: Partial<Omit<types_d_exports.ProjectConfig, "projectDir" | "relativePath">>): Promise<Result$1<VirtualFileTree$1, GeneratorError$1>>;
|
|
447
|
+
/**
|
|
448
|
+
* Programmatic API to add addons to an existing I dont know project.
|
|
449
|
+
*
|
|
450
|
+
* @example
|
|
451
|
+
* ```typescript
|
|
452
|
+
* import { add } from "kubojs";
|
|
453
|
+
*
|
|
454
|
+
* const result = await add({
|
|
455
|
+
* addons: ["biome", "husky"],
|
|
456
|
+
* install: true,
|
|
457
|
+
* });
|
|
458
|
+
*
|
|
459
|
+
* if (result?.success) {
|
|
460
|
+
* console.log(`Added: ${result.addedAddons.join(", ")}`);
|
|
461
|
+
* }
|
|
462
|
+
* ```
|
|
463
|
+
*/
|
|
464
|
+
declare function add(options?: {
|
|
465
|
+
addons?: types_d_exports.Addons[];
|
|
466
|
+
addonOptions?: types_d_exports.AddonOptions;
|
|
467
|
+
install?: boolean;
|
|
468
|
+
packageManager?: types_d_exports.PackageManager;
|
|
469
|
+
projectDir?: string;
|
|
470
|
+
dryRun?: boolean;
|
|
471
|
+
}): Promise<AddResult | undefined>;
|
|
472
|
+
type API = import__kubojs_types.API;
|
|
473
|
+
type AddonOptions = import__kubojs_types.AddonOptions;
|
|
474
|
+
type Addons = import__kubojs_types.Addons;
|
|
475
|
+
type Auth = import__kubojs_types.Auth;
|
|
476
|
+
type Backend = import__kubojs_types.Backend;
|
|
477
|
+
type BetterTStackConfig = import__kubojs_types.BetterTStackConfig;
|
|
478
|
+
type CreateInput = import__kubojs_types.CreateInput;
|
|
479
|
+
type Database = import__kubojs_types.Database;
|
|
480
|
+
type DatabaseSetup = import__kubojs_types.DatabaseSetup;
|
|
481
|
+
type DbSetupOptions = import__kubojs_types.DbSetupOptions;
|
|
482
|
+
type DirectoryConflict = import__kubojs_types.DirectoryConflict;
|
|
483
|
+
type Examples = import__kubojs_types.Examples;
|
|
484
|
+
type Frontend = import__kubojs_types.Frontend;
|
|
485
|
+
type InitResult = import__kubojs_types.InitResult;
|
|
486
|
+
type ORM = import__kubojs_types.ORM;
|
|
487
|
+
type Observability = import__kubojs_types.Observability;
|
|
488
|
+
type PackageManager = import__kubojs_types.PackageManager;
|
|
489
|
+
type Payments = import__kubojs_types.Payments;
|
|
490
|
+
type Runtime = import__kubojs_types.Runtime;
|
|
491
|
+
type ServerDeploy = import__kubojs_types.ServerDeploy;
|
|
492
|
+
type Template = import__kubojs_types.Template;
|
|
493
|
+
type WebDeploy = import__kubojs_types.WebDeploy;
|
|
494
|
+
export { type API, type AddResult, type AddonOptions, type Addons, type Auth, type Backend, type BetterTStackConfig, CLIError, CompatibilityError, CreateError, type CreateInput, type Database, type DatabaseSetup, DatabaseSetupError, type DbSetupOptions, type DirectoryConflict, DirectoryConflictError, EMBEDDED_TEMPLATES, type Examples, type Frontend, GeneratorError, type GeneratorOptions, type InitResult, type ORM, type Observability, type PackageManager, type Payments, ProjectCreationError, Result, type Runtime, SchemaName, SchemaNameSchema, type ServerDeploy, TEMPLATE_COUNT, type Template, UserCancelledError, ValidationError, type VirtualDirectory, type VirtualFile, VirtualFileSystem, type VirtualFileTree, type VirtualNode, type WebDeploy, add, builder, create, createBtsCli, createVirtual, docs, generate, getSchemaResult, router, sponsors };
|
package/dist/index.mjs
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
import { C as ProjectCreationError, S as DirectoryConflictError, T as ValidationError, a as TEMPLATE_COUNT, b as CompatibilityError, c as builder, d as createVirtual, f as docs, g as sponsors, h as router, i as SchemaNameSchema, l as create, m as getSchemaResult, n as GeneratorError, o as VirtualFileSystem, p as generate, r as Result, s as add, t as EMBEDDED_TEMPLATES, u as createBtsCli, w as UserCancelledError, x as DatabaseSetupError, y as CLIError } from "./src-BpWey5Sf.mjs";
|
|
3
|
+
export { CLIError, CompatibilityError, DatabaseSetupError, DirectoryConflictError, EMBEDDED_TEMPLATES, GeneratorError, ProjectCreationError, Result, SchemaNameSchema, TEMPLATE_COUNT, UserCancelledError, ValidationError, VirtualFileSystem, add, builder, create, createBtsCli, createVirtual, docs, generate, getSchemaResult, router, sponsors };
|