create-better-t-stack 3.36.2 → 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/dist/cli.mjs +1 -1
- package/dist/index.d.mts +2 -2
- package/dist/index.mjs +1 -1
- package/dist/{src-DGv7joiB.mjs → src-AlTJbWsW.mjs} +26 -15
- package/package.json +3 -3
package/dist/cli.mjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import { _ as types_exports, i as SchemaNameSchema, l as create, m as getSchemaResult, s as add, u as createBtsCli, v as getLatestCLIVersion } from "./src-
|
|
2
|
+
import { _ as types_exports, i as SchemaNameSchema, l as create, m as getSchemaResult, s as add, u as createBtsCli, v as getLatestCLIVersion } from "./src-AlTJbWsW.mjs";
|
|
3
3
|
import z from "zod";
|
|
4
4
|
import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
|
|
5
5
|
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
|
package/dist/index.d.mts
CHANGED
|
@@ -247,7 +247,7 @@ declare const router: _$_trpc_server0.TRPCBuiltRouter<{
|
|
|
247
247
|
}[] | undefined;
|
|
248
248
|
} | undefined;
|
|
249
249
|
ultracite?: {
|
|
250
|
-
linter?: "biome" | "oxlint" |
|
|
250
|
+
linter?: "biome" | "oxlint" | undefined;
|
|
251
251
|
editors?: ("void" | "antigravity" | "cursor" | "vscode" | "zed" | "windsurf" | "trae" | "codebuddy" | "bob" | "kiro")[] | undefined;
|
|
252
252
|
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;
|
|
253
253
|
hooks?: ("cursor" | "windsurf" | "codebuddy" | "claude" | "copilot")[] | undefined;
|
|
@@ -357,7 +357,7 @@ declare const router: _$_trpc_server0.TRPCBuiltRouter<{
|
|
|
357
357
|
}[] | undefined;
|
|
358
358
|
} | undefined;
|
|
359
359
|
ultracite?: {
|
|
360
|
-
linter?: "biome" | "oxlint" |
|
|
360
|
+
linter?: "biome" | "oxlint" | undefined;
|
|
361
361
|
editors?: ("void" | "antigravity" | "cursor" | "vscode" | "zed" | "windsurf" | "trae" | "codebuddy" | "bob" | "kiro")[] | undefined;
|
|
362
362
|
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;
|
|
363
363
|
hooks?: ("cursor" | "windsurf" | "codebuddy" | "claude" | "copilot")[] | undefined;
|
package/dist/index.mjs
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
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-
|
|
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-AlTJbWsW.mjs";
|
|
3
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 };
|
|
@@ -1256,7 +1256,7 @@ function getAddonDisplay(addon) {
|
|
|
1256
1256
|
break;
|
|
1257
1257
|
case "ultracite":
|
|
1258
1258
|
label = "Ultracite";
|
|
1259
|
-
hint = "Zero-config Biome
|
|
1259
|
+
hint = "Zero-config preset for Biome or Oxlint with AI integration";
|
|
1260
1260
|
break;
|
|
1261
1261
|
case "lefthook":
|
|
1262
1262
|
label = "Lefthook";
|
|
@@ -3357,7 +3357,6 @@ async function postProcessTuiWorkspace(tuiDir) {
|
|
|
3357
3357
|
//#region src/helpers/addons/ultracite-setup.ts
|
|
3358
3358
|
const LINTERS = {
|
|
3359
3359
|
biome: { label: "Biome (Recommended)" },
|
|
3360
|
-
eslint: { label: "ESLint + Prettier + Stylelint" },
|
|
3361
3360
|
oxlint: { label: "Oxlint + Oxfmt" }
|
|
3362
3361
|
};
|
|
3363
3362
|
const AGENTS = {
|
|
@@ -3411,26 +3410,27 @@ const HOOKS = {
|
|
|
3411
3410
|
claude: { label: "Claude Code" },
|
|
3412
3411
|
copilot: { label: "GitHub Copilot" }
|
|
3413
3412
|
};
|
|
3413
|
+
const ULTRACITE_VERSION = "7.9.3";
|
|
3414
3414
|
const DEFAULT_LINTER = "biome";
|
|
3415
3415
|
const DEFAULT_EDITORS = ["vscode"];
|
|
3416
3416
|
const DEFAULT_AGENTS = ["universal"];
|
|
3417
3417
|
const DEFAULT_HOOKS = [];
|
|
3418
3418
|
function getFrameworksFromFrontend(frontend) {
|
|
3419
3419
|
const frameworkMap = {
|
|
3420
|
-
"tanstack-router": "react",
|
|
3421
|
-
"react-router": "react",
|
|
3422
|
-
"tanstack-start": "react",
|
|
3423
|
-
next: "next",
|
|
3424
|
-
nuxt: "vue",
|
|
3425
|
-
"native-bare": "react",
|
|
3426
|
-
"native-uniwind": "react",
|
|
3427
|
-
"native-unistyles": "react",
|
|
3428
|
-
svelte: "svelte",
|
|
3429
|
-
solid: "solid",
|
|
3430
|
-
astro: "astro"
|
|
3420
|
+
"tanstack-router": ["react", "tanstack"],
|
|
3421
|
+
"react-router": ["react", "remix"],
|
|
3422
|
+
"tanstack-start": ["react", "tanstack"],
|
|
3423
|
+
next: ["react", "next"],
|
|
3424
|
+
nuxt: ["vue"],
|
|
3425
|
+
"native-bare": ["react"],
|
|
3426
|
+
"native-uniwind": ["react"],
|
|
3427
|
+
"native-unistyles": ["react"],
|
|
3428
|
+
svelte: ["svelte"],
|
|
3429
|
+
solid: ["solid"],
|
|
3430
|
+
astro: ["astro"]
|
|
3431
3431
|
};
|
|
3432
3432
|
const frameworks = /* @__PURE__ */ new Set();
|
|
3433
|
-
for (const f of frontend)
|
|
3433
|
+
for (const f of frontend) for (const framework of frameworkMap[f] ?? []) frameworks.add(framework);
|
|
3434
3434
|
return Array.from(frameworks);
|
|
3435
3435
|
}
|
|
3436
3436
|
function buildUltraciteInitArgs({ packageManager, linter, frameworks, editors, agents, hooks, gitHooks }) {
|
|
@@ -3448,12 +3448,19 @@ function buildUltraciteInitArgs({ packageManager, linter, frameworks, editors, a
|
|
|
3448
3448
|
if (gitHooks.length > 0) ultraciteArgs.push("--integrations", ...gitHooks);
|
|
3449
3449
|
return [
|
|
3450
3450
|
...getPackageRunnerPrefix(packageManager),
|
|
3451
|
-
|
|
3451
|
+
`ultracite@${ULTRACITE_VERSION}`,
|
|
3452
3452
|
...ultraciteArgs,
|
|
3453
3453
|
"--skip-install",
|
|
3454
3454
|
"--quiet"
|
|
3455
3455
|
];
|
|
3456
3456
|
}
|
|
3457
|
+
async function removeHuskySampleHook(projectDir) {
|
|
3458
|
+
const hookPath = path.join(projectDir, ".husky", "pre-commit");
|
|
3459
|
+
if (!await fs.pathExists(hookPath)) return;
|
|
3460
|
+
const content = await fs.readFile(hookPath, "utf-8");
|
|
3461
|
+
const cleaned = content.split("\n").filter((line) => !/^(?:npm|pnpm|yarn|bun|deno)(?: run)? test$/.test(line.trim())).join("\n");
|
|
3462
|
+
if (cleaned !== content) await fs.writeFile(hookPath, cleaned);
|
|
3463
|
+
}
|
|
3457
3464
|
async function setupUltracite(config, gitHooks) {
|
|
3458
3465
|
if (shouldSkipExternalCommands()) return Result.ok(void 0);
|
|
3459
3466
|
const { packageManager, projectDir, frontend } = config;
|
|
@@ -3556,6 +3563,10 @@ async function setupUltracite(config, gitHooks) {
|
|
|
3556
3563
|
cliLog.error(pc.red("Failed to set up Ultracite"));
|
|
3557
3564
|
return initResult;
|
|
3558
3565
|
}
|
|
3566
|
+
if (gitHooks.includes("husky")) await Result.tryPromise({
|
|
3567
|
+
try: () => removeHuskySampleHook(projectDir),
|
|
3568
|
+
catch: (e) => e
|
|
3569
|
+
});
|
|
3559
3570
|
s.stop("Ultracite setup successfully!");
|
|
3560
3571
|
return Result.ok(void 0);
|
|
3561
3572
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "create-better-t-stack",
|
|
3
|
-
"version": "3.36.
|
|
3
|
+
"version": "3.36.3",
|
|
4
4
|
"description": "A modern CLI tool for scaffolding end-to-end type-safe TypeScript projects with best practices and customizable configurations",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"better-auth",
|
|
@@ -69,8 +69,8 @@
|
|
|
69
69
|
"prepublishOnly": "npm run build"
|
|
70
70
|
},
|
|
71
71
|
"dependencies": {
|
|
72
|
-
"@better-t-stack/template-generator": "^3.36.
|
|
73
|
-
"@better-t-stack/types": "^3.36.
|
|
72
|
+
"@better-t-stack/template-generator": "^3.36.3",
|
|
73
|
+
"@better-t-stack/types": "^3.36.3",
|
|
74
74
|
"@clack/core": "^1.4.1",
|
|
75
75
|
"@clack/prompts": "^1.5.1",
|
|
76
76
|
"@modelcontextprotocol/sdk": "1.29.0",
|