create-better-fullstack 1.5.0 → 1.5.1
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.mjs +1 -1
- package/dist/{src-DaUU4ThO.mjs → src-hfdQPH0o.mjs} +60 -33
- package/package.json +5 -5
package/dist/cli.mjs
CHANGED
package/dist/index.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import { a as builder, c as createVirtual, d as history, f as router, i as add, l as docs, n as TEMPLATE_COUNT, o as create, p as sponsors, r as VirtualFileSystem, s as createBtsCli, t as EMBEDDED_TEMPLATES, u as generateVirtualProject } from "./src-
|
|
2
|
+
import { a as builder, c as createVirtual, d as history, f as router, i as add, l as docs, n as TEMPLATE_COUNT, o as create, p as sponsors, r as VirtualFileSystem, s as createBtsCli, t as EMBEDDED_TEMPLATES, u as generateVirtualProject } from "./src-hfdQPH0o.mjs";
|
|
3
3
|
|
|
4
4
|
export { EMBEDDED_TEMPLATES, TEMPLATE_COUNT, VirtualFileSystem, add, builder, create, createBtsCli, createVirtual, docs, generateVirtualProject, history, router, sponsors };
|
|
@@ -5206,6 +5206,12 @@ const ICON_LIBRARY_OPTIONS = [
|
|
|
5206
5206
|
}
|
|
5207
5207
|
];
|
|
5208
5208
|
const COLOR_THEME_OPTIONS = [
|
|
5209
|
+
{
|
|
5210
|
+
value: "neutral",
|
|
5211
|
+
label: "── Neutrals ──",
|
|
5212
|
+
hint: "",
|
|
5213
|
+
disabled: true
|
|
5214
|
+
},
|
|
5209
5215
|
{
|
|
5210
5216
|
value: "neutral",
|
|
5211
5217
|
label: "Neutral",
|
|
@@ -5226,20 +5232,52 @@ const COLOR_THEME_OPTIONS = [
|
|
|
5226
5232
|
label: "Gray",
|
|
5227
5233
|
hint: "Blue-tinted neutral"
|
|
5228
5234
|
},
|
|
5235
|
+
{
|
|
5236
|
+
value: "neutral",
|
|
5237
|
+
label: "── Cool ──",
|
|
5238
|
+
hint: "",
|
|
5239
|
+
disabled: true
|
|
5240
|
+
},
|
|
5229
5241
|
{
|
|
5230
5242
|
value: "blue",
|
|
5231
5243
|
label: "Blue",
|
|
5232
5244
|
hint: "Trust and reliability"
|
|
5233
5245
|
},
|
|
5246
|
+
{
|
|
5247
|
+
value: "indigo",
|
|
5248
|
+
label: "Indigo",
|
|
5249
|
+
hint: "Deep and focused"
|
|
5250
|
+
},
|
|
5234
5251
|
{
|
|
5235
5252
|
value: "violet",
|
|
5236
5253
|
label: "Violet",
|
|
5237
5254
|
hint: "Creative and modern"
|
|
5238
5255
|
},
|
|
5239
5256
|
{
|
|
5240
|
-
value: "
|
|
5241
|
-
label: "
|
|
5242
|
-
hint: "
|
|
5257
|
+
value: "purple",
|
|
5258
|
+
label: "Purple",
|
|
5259
|
+
hint: "Royal and elegant"
|
|
5260
|
+
},
|
|
5261
|
+
{
|
|
5262
|
+
value: "cyan",
|
|
5263
|
+
label: "Cyan",
|
|
5264
|
+
hint: "Cool and refreshing"
|
|
5265
|
+
},
|
|
5266
|
+
{
|
|
5267
|
+
value: "sky",
|
|
5268
|
+
label: "Sky",
|
|
5269
|
+
hint: "Light and airy"
|
|
5270
|
+
},
|
|
5271
|
+
{
|
|
5272
|
+
value: "teal",
|
|
5273
|
+
label: "Teal",
|
|
5274
|
+
hint: "Calm and sophisticated"
|
|
5275
|
+
},
|
|
5276
|
+
{
|
|
5277
|
+
value: "neutral",
|
|
5278
|
+
label: "── Warm ──",
|
|
5279
|
+
hint: "",
|
|
5280
|
+
disabled: true
|
|
5243
5281
|
},
|
|
5244
5282
|
{
|
|
5245
5283
|
value: "red",
|
|
@@ -5271,36 +5309,16 @@ const COLOR_THEME_OPTIONS = [
|
|
|
5271
5309
|
label: "Lime",
|
|
5272
5310
|
hint: "Fresh and lively"
|
|
5273
5311
|
},
|
|
5312
|
+
{
|
|
5313
|
+
value: "green",
|
|
5314
|
+
label: "Green",
|
|
5315
|
+
hint: "Growth and success"
|
|
5316
|
+
},
|
|
5274
5317
|
{
|
|
5275
5318
|
value: "emerald",
|
|
5276
5319
|
label: "Emerald",
|
|
5277
5320
|
hint: "Rich and luxurious"
|
|
5278
5321
|
},
|
|
5279
|
-
{
|
|
5280
|
-
value: "teal",
|
|
5281
|
-
label: "Teal",
|
|
5282
|
-
hint: "Calm and sophisticated"
|
|
5283
|
-
},
|
|
5284
|
-
{
|
|
5285
|
-
value: "cyan",
|
|
5286
|
-
label: "Cyan",
|
|
5287
|
-
hint: "Cool and refreshing"
|
|
5288
|
-
},
|
|
5289
|
-
{
|
|
5290
|
-
value: "sky",
|
|
5291
|
-
label: "Sky",
|
|
5292
|
-
hint: "Light and airy"
|
|
5293
|
-
},
|
|
5294
|
-
{
|
|
5295
|
-
value: "indigo",
|
|
5296
|
-
label: "Indigo",
|
|
5297
|
-
hint: "Deep and focused"
|
|
5298
|
-
},
|
|
5299
|
-
{
|
|
5300
|
-
value: "purple",
|
|
5301
|
-
label: "Purple",
|
|
5302
|
-
hint: "Royal and elegant"
|
|
5303
|
-
},
|
|
5304
5322
|
{
|
|
5305
5323
|
value: "fuchsia",
|
|
5306
5324
|
label: "Fuchsia",
|
|
@@ -6988,6 +7006,15 @@ function validateDatabaseSetup(config, providedFlags) {
|
|
|
6988
7006
|
function validateEcosystemAuthCompatibility(config, providedFlags) {
|
|
6989
7007
|
const auth = config.auth;
|
|
6990
7008
|
if (!auth || auth === "none") return;
|
|
7009
|
+
if (auth === "better-auth" && config.orm && [
|
|
7010
|
+
"typeorm",
|
|
7011
|
+
"sequelize",
|
|
7012
|
+
"mikroorm"
|
|
7013
|
+
].includes(config.orm)) {
|
|
7014
|
+
config.auth = "none";
|
|
7015
|
+
if (providedFlags?.has("auth") && !isSilent()) consola.warn(pc.yellow(`Unsupported auth selection '${auth}' with ${config.orm}: no Better Auth adapter exists. Falling back to '--auth none'.`));
|
|
7016
|
+
return;
|
|
7017
|
+
}
|
|
6991
7018
|
const normalized = (0, types_exports.normalizeCapabilitySelection)("auth", {
|
|
6992
7019
|
ecosystem: config.ecosystem,
|
|
6993
7020
|
backend: config.backend,
|
|
@@ -8520,7 +8547,7 @@ async function displayPostInstallInstructions(config) {
|
|
|
8520
8547
|
let output = `${pc.bold("Next steps")}\n${pc.cyan("1.")} ${cdCmd}\n`;
|
|
8521
8548
|
let stepCounter = 2;
|
|
8522
8549
|
if (!depsInstalled) output += `${pc.cyan(`${stepCounter++}.`)} ${packageManager} install\n`;
|
|
8523
|
-
if (hasFresh) output += `${pc.yellow("NOTE:")} Fresh projects require ${pc.white("deno")} on your PATH\n`;
|
|
8550
|
+
if (hasFresh) output += `${pc.yellow("NOTE:")} Fresh projects require ${pc.white("deno")} on your PATH.\n Install: ${pc.underline("https://docs.deno.com/runtime/getting_started/installation/")}\n`;
|
|
8524
8551
|
if (database === "sqlite" && dbSetup !== "d1") output += `${pc.cyan(`${stepCounter++}.`)} ${runCmd} db:local\n${pc.dim(" (optional - starts local SQLite database)")}\n`;
|
|
8525
8552
|
if (isConvex) {
|
|
8526
8553
|
output += `${pc.cyan(`${stepCounter++}.`)} ${runCmd} dev:setup\n${pc.dim(" (this will guide you through Convex project setup)")}\n`;
|
|
@@ -8608,7 +8635,7 @@ async function getDatabaseInstructions(database, orm, runCmd, _runtime, dbSetup,
|
|
|
8608
8635
|
}
|
|
8609
8636
|
if (dbSetup === "turso" && orm === "prisma") instructions.push(`${pc.yellow("NOTE:")} Follow Turso's Prisma guide for migrations via the Turso CLI:\n https://docs.turso.tech/sdk/ts/orm/prisma`);
|
|
8610
8637
|
if (orm === "prisma") {
|
|
8611
|
-
if (database === "mongodb" && dbSetup === "docker") instructions.push(`${pc.yellow("WARNING:")} Prisma + MongoDB + Docker combination
|
|
8638
|
+
if (database === "mongodb" && dbSetup === "docker") instructions.push(`${pc.yellow("WARNING:")} Prisma + MongoDB + Docker: this combination has known issues.\n Consider using MongoDB Atlas (${pc.underline("https://www.mongodb.com/atlas")}) for reliable Prisma + MongoDB support.`);
|
|
8612
8639
|
if (dbSetup === "docker") instructions.push(`${pc.cyan("•")} Start docker container: ${`${runCmd} db:start`}`);
|
|
8613
8640
|
if (!(dbSetup === "d1" && serverDeploy === "cloudflare")) {
|
|
8614
8641
|
instructions.push(`${pc.cyan("•")} Generate Prisma Client: ${`${runCmd} db:generate`}`);
|
|
@@ -9276,7 +9303,7 @@ const router = os.router({
|
|
|
9276
9303
|
log.message(`Please visit ${DOCS_URL}`);
|
|
9277
9304
|
}
|
|
9278
9305
|
}),
|
|
9279
|
-
builder: os.meta({ description: "Open the web-based stack builder" }).handler(async () => {
|
|
9306
|
+
builder: os.meta({ description: "Open the interactive web-based stack builder at better-fullstack.dev" }).handler(async () => {
|
|
9280
9307
|
const BUILDER_URL = "https://better-fullstack-web.vercel.app/new";
|
|
9281
9308
|
try {
|
|
9282
9309
|
await openUrl(BUILDER_URL);
|
|
@@ -9285,7 +9312,7 @@ const router = os.router({
|
|
|
9285
9312
|
log.message(`Please visit ${BUILDER_URL}`);
|
|
9286
9313
|
}
|
|
9287
9314
|
}),
|
|
9288
|
-
add: os.meta({ description: "Add addons to an existing Better Fullstack project" }).input(z.object({
|
|
9315
|
+
add: os.meta({ description: "Add addons or deployment targets to an existing Better Fullstack project" }).input(z.object({
|
|
9289
9316
|
addons: z.array(types_exports.AddonsSchema).optional().describe("Addons to add"),
|
|
9290
9317
|
webDeploy: types_exports.WebDeploySchema.optional().describe("Web deployment option to set"),
|
|
9291
9318
|
serverDeploy: types_exports.ServerDeploySchema.optional().describe("Server deployment option to set"),
|
|
@@ -9295,7 +9322,7 @@ const router = os.router({
|
|
|
9295
9322
|
})).handler(async ({ input }) => {
|
|
9296
9323
|
await addHandler(input);
|
|
9297
9324
|
}),
|
|
9298
|
-
history: os.meta({ description: "Show
|
|
9325
|
+
history: os.meta({ description: "Show history of scaffolded projects with reproducible commands" }).input(z.object({
|
|
9299
9326
|
limit: z.number().optional().default(10).describe("Number of entries to show"),
|
|
9300
9327
|
clear: z.boolean().optional().default(false).describe("Clear all history"),
|
|
9301
9328
|
json: z.boolean().optional().default(false).describe("Output as JSON")
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "create-better-fullstack",
|
|
3
|
-
"version": "1.5.
|
|
3
|
+
"version": "1.5.1",
|
|
4
4
|
"description": "Scaffold production-ready fullstack apps in seconds. Pick your stack from 270+ options — the CLI wires everything together.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"angular",
|
|
@@ -108,17 +108,17 @@
|
|
|
108
108
|
"prepublishOnly": "npm run build"
|
|
109
109
|
},
|
|
110
110
|
"dependencies": {
|
|
111
|
-
"@better-fullstack/template-generator": "^1.5.
|
|
112
|
-
"@better-fullstack/types": "^1.5.
|
|
111
|
+
"@better-fullstack/template-generator": "^1.5.1",
|
|
112
|
+
"@better-fullstack/types": "^1.5.1",
|
|
113
113
|
"@clack/core": "^0.5.0",
|
|
114
114
|
"@clack/prompts": "^1.1.0",
|
|
115
|
-
"@orpc/server": "^1.13.
|
|
115
|
+
"@orpc/server": "^1.13.13",
|
|
116
116
|
"consola": "^3.4.2",
|
|
117
117
|
"env-paths": "^4.0.0",
|
|
118
118
|
"execa": "^9.6.1",
|
|
119
119
|
"fs-extra": "^11.3.4",
|
|
120
120
|
"gradient-string": "^3.0.0",
|
|
121
|
-
"handlebars": "^4.7.
|
|
121
|
+
"handlebars": "^4.7.9",
|
|
122
122
|
"jsonc-parser": "^3.3.1",
|
|
123
123
|
"oxfmt": "^0.19.0",
|
|
124
124
|
"picocolors": "^1.1.1",
|