create-nifra 2.2.0 → 2.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +4 -4
- package/dist/agent-files.d.ts +14 -14
- package/dist/agent-files.js +29 -29
- package/dist/agents.d.ts +4 -4
- package/dist/agents.js +63 -63
- package/dist/auth.d.ts +2 -2
- package/dist/auth.js +8 -8
- package/dist/cli.d.ts +6 -6
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +56 -35
- package/dist/cli.js.map +1 -1
- package/dist/db.d.ts +6 -6
- package/dist/db.d.ts.map +1 -1
- package/dist/db.js +138 -41
- package/dist/db.js.map +1 -1
- package/dist/scaffold/features.d.ts +41 -0
- package/dist/scaffold/features.d.ts.map +1 -0
- package/dist/scaffold/features.js +48 -0
- package/dist/scaffold/features.js.map +1 -0
- package/dist/scaffold/frameworks.d.ts +73 -0
- package/dist/scaffold/frameworks.d.ts.map +1 -0
- package/dist/scaffold/frameworks.js +100 -0
- package/dist/scaffold/frameworks.js.map +1 -0
- package/dist/scaffold/site-build.d.ts +60 -0
- package/dist/scaffold/site-build.d.ts.map +1 -0
- package/dist/scaffold/site-build.js +198 -0
- package/dist/scaffold/site-build.js.map +1 -0
- package/dist/scaffold/site-files.d.ts +16 -0
- package/dist/scaffold/site-files.d.ts.map +1 -0
- package/dist/scaffold/site-files.js +112 -0
- package/dist/scaffold/site-files.js.map +1 -0
- package/dist/scaffold/site.d.ts +33 -0
- package/dist/scaffold/site.d.ts.map +1 -0
- package/dist/scaffold/site.js +99 -0
- package/dist/scaffold/site.js.map +1 -0
- package/package.json +2 -2
- package/src/agent-files.ts +29 -29
- package/template/README.md +3 -3
- package/template/nifra.assurance.ts +80 -0
- package/template/package.json +5 -3
- package/template/src/app.ts +10 -11
- package/template/src/routes.ts +13 -0
- package/template-isr/README.md +1 -1
- package/template-isr/backend.ts +11 -15
- package/template-isr/nifra.assurance.ts +81 -0
- package/template-isr/package.json +8 -7
- package/template-isr/page.ts +12 -0
- package/template-isr/routes/_404.tsx +1 -1
- package/template-isr/routes/_layout.tsx +1 -1
- package/template-isr/routes/index.tsx +2 -2
- package/template-isr/server.ts +1 -1
- package/template-isr/worker.ts +2 -2
- package/template-isr/wrangler.toml +2 -2
- package/template-site/Dockerfile +1 -1
- package/template-site/README.md +6 -6
- package/template-site/backend.ts +11 -13
- package/template-site/counter.ts +16 -0
- package/template-site/nifra.assurance.ts +83 -0
- package/template-site/nifra.config.ts +1 -1
- package/template-site/routes/index.tsx +1 -1
- package/template-site/server-node.ts +1 -1
- package/template-site/server-vercel.ts +1 -1
- package/template-site-preact/README.md +7 -7
- package/template-site-preact/nifra.config.ts +1 -1
- package/template-site-preact/routes/index.tsx +1 -1
- package/template-site-solid/README.md +7 -7
- package/template-site-solid/nifra.config.ts +2 -2
- package/template-site-solid/routes/index.tsx +1 -1
- package/template-site-svelte/README.md +7 -7
- package/template-site-svelte/nifra.config.ts +2 -2
- package/template-site-svelte/routes/_layout.svelte +1 -1
- package/template-site-svelte/routes/index.svelte +1 -1
- package/template-site-vue/README.md +7 -7
- package/template-site-vue/nifra.config.ts +2 -2
- package/template-site-vue/routes/_layout.vue +2 -2
- package/template-site-vue/routes/index.vue +3 -3
- package/template-site/build-bun.ts +0 -27
- package/template-site/build-deno.ts +0 -25
- package/template-site/build-node.ts +0 -26
- package/template-site/build-vercel.ts +0 -45
- package/template-site/build.ts +0 -29
- package/template-site/framework.ts +0 -6
- package/template-site/package.json +0 -38
- package/template-site/tsconfig.json +0 -37
- package/template-site-preact/.dockerignore +0 -14
- package/template-site-preact/Dockerfile +0 -20
- package/template-site-preact/_worker.ts +0 -17
- package/template-site-preact/backend.ts +0 -15
- package/template-site-preact/build-bun.ts +0 -27
- package/template-site-preact/build-deno.ts +0 -25
- package/template-site-preact/build-node.ts +0 -26
- package/template-site-preact/build-vercel.ts +0 -45
- package/template-site-preact/build.ts +0 -29
- package/template-site-preact/deno.json +0 -7
- package/template-site-preact/framework.ts +0 -6
- package/template-site-preact/gitignore +0 -16
- package/template-site-preact/package.json +0 -35
- package/template-site-preact/server-bun.ts +0 -35
- package/template-site-preact/server-deno.ts +0 -38
- package/template-site-preact/server-node.ts +0 -40
- package/template-site-preact/server-vercel.ts +0 -17
- package/template-site-preact/tsconfig.json +0 -38
- package/template-site-preact/wrangler.toml +0 -4
- package/template-site-solid/.dockerignore +0 -14
- package/template-site-solid/Dockerfile +0 -20
- package/template-site-solid/_worker.ts +0 -17
- package/template-site-solid/backend.ts +0 -15
- package/template-site-solid/build-bun.ts +0 -33
- package/template-site-solid/build-deno.ts +0 -32
- package/template-site-solid/build-node.ts +0 -33
- package/template-site-solid/build-vercel.ts +0 -47
- package/template-site-solid/build.ts +0 -36
- package/template-site-solid/deno.json +0 -7
- package/template-site-solid/framework.ts +0 -6
- package/template-site-solid/gitignore +0 -16
- package/template-site-solid/package.json +0 -35
- package/template-site-solid/server-bun.ts +0 -35
- package/template-site-solid/server-deno.ts +0 -38
- package/template-site-solid/server-node.ts +0 -40
- package/template-site-solid/server-vercel.ts +0 -17
- package/template-site-solid/tsconfig.json +0 -38
- package/template-site-solid/wrangler.toml +0 -4
- package/template-site-svelte/.dockerignore +0 -14
- package/template-site-svelte/Dockerfile +0 -20
- package/template-site-svelte/_worker.ts +0 -17
- package/template-site-svelte/backend.ts +0 -15
- package/template-site-svelte/build-bun.ts +0 -32
- package/template-site-svelte/build-deno.ts +0 -31
- package/template-site-svelte/build-node.ts +0 -32
- package/template-site-svelte/build-vercel.ts +0 -46
- package/template-site-svelte/build.ts +0 -35
- package/template-site-svelte/deno.json +0 -7
- package/template-site-svelte/framework.ts +0 -6
- package/template-site-svelte/gitignore +0 -16
- package/template-site-svelte/package.json +0 -35
- package/template-site-svelte/server-bun.ts +0 -35
- package/template-site-svelte/server-deno.ts +0 -38
- package/template-site-svelte/server-node.ts +0 -40
- package/template-site-svelte/server-vercel.ts +0 -17
- package/template-site-svelte/tsconfig.json +0 -37
- package/template-site-svelte/wrangler.toml +0 -4
- package/template-site-vue/.dockerignore +0 -14
- package/template-site-vue/Dockerfile +0 -20
- package/template-site-vue/_worker.ts +0 -17
- package/template-site-vue/backend.ts +0 -15
- package/template-site-vue/build-bun.ts +0 -37
- package/template-site-vue/build-deno.ts +0 -36
- package/template-site-vue/build-node.ts +0 -37
- package/template-site-vue/build-vercel.ts +0 -54
- package/template-site-vue/build.ts +0 -40
- package/template-site-vue/deno.json +0 -7
- package/template-site-vue/framework.ts +0 -6
- package/template-site-vue/gitignore +0 -16
- package/template-site-vue/package.json +0 -36
- package/template-site-vue/server-bun.ts +0 -35
- package/template-site-vue/server-deno.ts +0 -38
- package/template-site-vue/server-node.ts +0 -40
- package/template-site-vue/server-vercel.ts +0 -17
- package/template-site-vue/tsconfig.json +0 -37
- package/template-site-vue/wrangler.toml +0 -4
package/dist/cli.d.ts
CHANGED
|
@@ -9,14 +9,14 @@ declare const TEMPLATES: {
|
|
|
9
9
|
};
|
|
10
10
|
export type TemplateName = keyof typeof TEMPLATES;
|
|
11
11
|
/** Frontend frameworks the `site` template can scaffold. React is the default (`template-site`); the
|
|
12
|
-
* rest live in `template-site-<framework>` siblings
|
|
12
|
+
* rest live in `template-site-<framework>` siblings - same multi-target deploy story, different adapter
|
|
13
13
|
* + routes. */
|
|
14
14
|
declare const FRAMEWORKS: readonly ["react", "preact", "vue", "solid", "svelte"];
|
|
15
15
|
export type Framework = (typeof FRAMEWORKS)[number];
|
|
16
16
|
/**
|
|
17
17
|
* Deploy targets for the multi-target `site` template. Every target's build + server entry already ships
|
|
18
18
|
* in the template; choosing one repoints the canonical `build`/`deploy` scripts at it (the per-target
|
|
19
|
-
* `build:*` scripts stay, so you can still switch). nifra never runs the deploy or enters credentials
|
|
19
|
+
* `build:*` scripts stay, so you can still switch). nifra never runs the deploy or enters credentials -
|
|
20
20
|
* `deploy` shells out to the vendor CLI you've authed yourself.
|
|
21
21
|
*/
|
|
22
22
|
interface DeployPreset {
|
|
@@ -39,17 +39,17 @@ export interface ScaffoldOptions {
|
|
|
39
39
|
readonly template?: TemplateName;
|
|
40
40
|
/** Frontend framework (site template only). Default `"react"`. */
|
|
41
41
|
readonly framework?: string;
|
|
42
|
-
/** Deploy target (site template only)
|
|
42
|
+
/** Deploy target (site template only) - repoints the default `build`/`deploy` scripts. */
|
|
43
43
|
readonly deploy?: string;
|
|
44
44
|
/** Emit a CI deploy workflow for the chosen `--deploy` target. Only `"github"` today. */
|
|
45
45
|
readonly ci?: string;
|
|
46
46
|
/** Wire a data layer: `drizzle-{libsql,postgres,sqlite}` | `prisma-{postgres,sqlite}` | `kysely-postgres`. */
|
|
47
47
|
readonly db?: string;
|
|
48
|
-
/** Wire authentication: `better-auth` (requires `--db`
|
|
48
|
+
/** Wire authentication: `better-auth` (requires `--db` - auth needs a database). */
|
|
49
49
|
readonly auth?: string;
|
|
50
50
|
/** Allow scaffolding into a non-empty directory (copies template, overwrites collisions). */
|
|
51
51
|
readonly force?: boolean;
|
|
52
|
-
/** Path to a local nifra monorepo
|
|
52
|
+
/** Path to a local nifra monorepo - replaces `@nifrajs/*` semver deps with `file:` refs so
|
|
53
53
|
* the app runs against the local source before the packages are published to npm. */
|
|
54
54
|
readonly link?: string;
|
|
55
55
|
}
|
|
@@ -91,7 +91,7 @@ interface ParsedArgs {
|
|
|
91
91
|
* `--framework`/`--deploy`/`--ci` all default the template to `site`. */
|
|
92
92
|
export declare function parseArgs(argv: readonly string[]): ParsedArgs;
|
|
93
93
|
/**
|
|
94
|
-
* Run the CLI for `argv` and return the exit code + the message to print
|
|
94
|
+
* Run the CLI for `argv` and return the exit code + the message to print - no `process.exit`, `console`,
|
|
95
95
|
* or `process.argv`, so the whole flow (parse → scaffold → next-steps) is unit-testable in-process.
|
|
96
96
|
*/
|
|
97
97
|
export declare function run(argv: readonly string[]): Promise<{
|
package/dist/cli.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAyBA,OAAO,EAGL,KAAK,UAAU,EAGhB,MAAM,WAAW,CAAA;AAClB,OAAO,EAA0B,KAAK,QAAQ,EAAgB,MAAM,SAAS,CAAA;
|
|
1
|
+
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
package/dist/cli.js
CHANGED
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
* bun create nifra my-app --deploy vercel # site, with Vercel as the default deploy target
|
|
9
9
|
*
|
|
10
10
|
* Copies the bundled template, restores `.gitignore` (npm strips a literal one from packages), sets the
|
|
11
|
-
* app's `package.json` name, and
|
|
11
|
+
* app's `package.json` name, and - with `--deploy <target>` (site template only) - repoints the default
|
|
12
12
|
* `build`/`deploy` scripts at that target and fills the project name into its config. Refuses to overwrite.
|
|
13
13
|
*/
|
|
14
14
|
import { realpathSync } from "node:fs";
|
|
@@ -19,6 +19,8 @@ import { CLAUDE_MD_PATH, CURSOR_MCP_JSON_PATH, claudeMd, MCP_JSON_PATH, mcpJson,
|
|
|
19
19
|
import { agentsMd } from "./agents.js";
|
|
20
20
|
import { AUTH_CHOICES, AUTH_PRESETS, assertAuthableDb, writeAuthFiles, } from "./auth.js";
|
|
21
21
|
import { DB_CHOICES, DB_PRESETS, writeDbFiles } from "./db.js";
|
|
22
|
+
import { applyFeatures } from "./scaffold/features.js";
|
|
23
|
+
import { materializeSite } from "./scaffold/site.js";
|
|
22
24
|
const TEMPLATES = {
|
|
23
25
|
api: "../template",
|
|
24
26
|
site: "../template-site",
|
|
@@ -26,7 +28,7 @@ const TEMPLATES = {
|
|
|
26
28
|
fullstack: "../template-fullstack",
|
|
27
29
|
};
|
|
28
30
|
/** Frontend frameworks the `site` template can scaffold. React is the default (`template-site`); the
|
|
29
|
-
* rest live in `template-site-<framework>` siblings
|
|
31
|
+
* rest live in `template-site-<framework>` siblings - same multi-target deploy story, different adapter
|
|
30
32
|
* + routes. */
|
|
31
33
|
const FRAMEWORKS = ["react", "preact", "vue", "solid", "svelte"];
|
|
32
34
|
const DEPLOY = {
|
|
@@ -64,9 +66,9 @@ const DEPLOY = {
|
|
|
64
66
|
steps: ["bun run build", "bun run deploy # vercel deploy --prebuilt"],
|
|
65
67
|
},
|
|
66
68
|
};
|
|
67
|
-
// Self-hosted servers (bun/node) have no canonical push-to-deploy
|
|
69
|
+
// Self-hosted servers (bun/node) have no canonical push-to-deploy - CI builds + uploads the artifact and
|
|
68
70
|
// leaves a host-specific placeholder. The managed targets use the vendor's official action/CLI.
|
|
69
|
-
const SELF_HOSTED_STEP = (hint) => ` # Self-hosted: deploy is host-specific. The build output is in dist*/
|
|
71
|
+
const SELF_HOSTED_STEP = (hint) => ` # Self-hosted: deploy is host-specific. The build output is in dist*/ - add your step here
|
|
70
72
|
# (${hint}). Until then, CI builds on every push and uploads the bundle as an artifact.
|
|
71
73
|
- name: Upload build
|
|
72
74
|
if: github.ref == 'refs/heads/main'
|
|
@@ -83,10 +85,10 @@ const CI_DEPLOY = {
|
|
|
83
85
|
node: {
|
|
84
86
|
permissions: " contents: read",
|
|
85
87
|
secrets: [],
|
|
86
|
-
step: SELF_HOSTED_STEP("the template ships a Dockerfile
|
|
88
|
+
step: SELF_HOSTED_STEP("the template ships a Dockerfile - push to a registry, or flyctl/SSH"),
|
|
87
89
|
},
|
|
88
90
|
deno: {
|
|
89
|
-
// OIDC: link the repo in the Deno Deploy dashboard (no token needed)
|
|
91
|
+
// OIDC: link the repo in the Deno Deploy dashboard (no token needed) - needs id-token: write.
|
|
90
92
|
permissions: " contents: read\n id-token: write",
|
|
91
93
|
secrets: [],
|
|
92
94
|
step: ` - name: Publish to Deno Deploy
|
|
@@ -148,6 +150,10 @@ jobs:
|
|
|
148
150
|
- uses: actions/checkout@v4
|
|
149
151
|
- uses: oven-sh/setup-bun@v2
|
|
150
152
|
- run: bun install --frozen-lockfile
|
|
153
|
+
# The gate, before the build. nifra.assurance.ts states what these routes must prove - an
|
|
154
|
+
# unauthenticated write, a mutation with no body schema, a handler reaching a database it never
|
|
155
|
+
# declared. Shipping that config without ever running it makes it decoration.
|
|
156
|
+
- run: bun run check
|
|
151
157
|
- run: bun run build
|
|
152
158
|
${ci.step.replaceAll("NAME", appName)}
|
|
153
159
|
`;
|
|
@@ -173,9 +179,6 @@ export async function scaffold(opts) {
|
|
|
173
179
|
}
|
|
174
180
|
framework = opts.framework;
|
|
175
181
|
}
|
|
176
|
-
const templateRel = template === "site" && framework !== undefined && framework !== "react"
|
|
177
|
-
? `../template-site-${framework}`
|
|
178
|
-
: TEMPLATES[template];
|
|
179
182
|
let preset;
|
|
180
183
|
if (opts.deploy !== undefined) {
|
|
181
184
|
if (template !== "site") {
|
|
@@ -193,7 +196,7 @@ export async function scaffold(opts) {
|
|
|
193
196
|
throw new Error("--ci requires --deploy <target> (the workflow deploys that target)");
|
|
194
197
|
}
|
|
195
198
|
}
|
|
196
|
-
// DB preset (any template
|
|
199
|
+
// DB preset (any template - an API or a site can both want persistence).
|
|
197
200
|
let db;
|
|
198
201
|
if (opts.db !== undefined) {
|
|
199
202
|
if (!DB_CHOICES.includes(opts.db)) {
|
|
@@ -201,7 +204,7 @@ export async function scaffold(opts) {
|
|
|
201
204
|
}
|
|
202
205
|
db = opts.db;
|
|
203
206
|
}
|
|
204
|
-
// Auth preset
|
|
207
|
+
// Auth preset - needs a database, so it requires `--db` (the auth tables live in your Drizzle DB).
|
|
205
208
|
let auth;
|
|
206
209
|
if (opts.auth !== undefined) {
|
|
207
210
|
if (!AUTH_CHOICES.includes(opts.auth)) {
|
|
@@ -213,44 +216,62 @@ export async function scaffold(opts) {
|
|
|
213
216
|
assertAuthableDb(db); // reject --auth + an ORM with no drop-in better-auth adapter (e.g. Kysely)
|
|
214
217
|
auth = opts.auth;
|
|
215
218
|
}
|
|
216
|
-
|
|
217
|
-
//
|
|
218
|
-
//
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
219
|
+
// The site scaffold is COMPOSED rather than copied: thirteen of its files are identical whatever you
|
|
220
|
+
// render with, eight are emitted from the framework model, and five are the framework's own. The
|
|
221
|
+
// other templates are still a plain copy - they have no framework axis to collapse.
|
|
222
|
+
// Either way the default refuses an occupied destination rather than clobbering it; --force is what
|
|
223
|
+
// `bun create nifra .` needs.
|
|
224
|
+
if (template === "site") {
|
|
225
|
+
await materializeSite(opts.target, framework ?? "react", { force: opts.force === true });
|
|
226
|
+
}
|
|
227
|
+
else {
|
|
228
|
+
const templateDir = fileURLToPath(new URL(TEMPLATES[template], import.meta.url));
|
|
229
|
+
await cp(templateDir, opts.target, {
|
|
230
|
+
recursive: true,
|
|
231
|
+
...(opts.force ? { force: true } : { errorOnExist: true, force: false }),
|
|
232
|
+
});
|
|
233
|
+
}
|
|
223
234
|
// The template ships its ignore file as `gitignore` (npm strips a literal `.gitignore`); restore the dot.
|
|
224
235
|
try {
|
|
225
236
|
await rename(join(opts.target, "gitignore"), join(opts.target, ".gitignore"));
|
|
226
237
|
}
|
|
227
238
|
catch {
|
|
228
|
-
// A template without a `gitignore`
|
|
239
|
+
// A template without a `gitignore` - nothing to restore.
|
|
229
240
|
}
|
|
230
241
|
const name = basename(opts.target);
|
|
231
242
|
const pkgPath = join(opts.target, "package.json");
|
|
232
243
|
const pkg = JSON.parse(await readFile(pkgPath, "utf8"));
|
|
233
244
|
pkg.name = name;
|
|
245
|
+
// Every feature states what it contributes and the merge refuses an undeclared collision, so which
|
|
246
|
+
// flag was handled first stops deciding what a project ends up with. `--deploy` repoints the
|
|
247
|
+
// canonical `build`/`deploy` aliases, which is the flag's purpose, so it says so.
|
|
248
|
+
const features = [];
|
|
234
249
|
if (preset !== undefined) {
|
|
235
250
|
// Multi-target stays intact (build:*, deploy:* scripts); just point the canonical aliases at the pick.
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
251
|
+
features.push({
|
|
252
|
+
label: `--deploy ${opts.deploy}`,
|
|
253
|
+
scripts: { build: preset.build, deploy: preset.deploy.replaceAll("NAME", name) },
|
|
254
|
+
replaces: ["build", "deploy"],
|
|
255
|
+
});
|
|
239
256
|
}
|
|
240
257
|
if (db !== undefined) {
|
|
241
258
|
// Merge the Drizzle preset's deps + db:* scripts; `bun install` then resolves them.
|
|
242
259
|
const dbp = DB_PRESETS[db];
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
260
|
+
features.push({
|
|
261
|
+
label: `--db ${db}`,
|
|
262
|
+
dependencies: dbp.deps,
|
|
263
|
+
devDependencies: dbp.devDeps,
|
|
264
|
+
scripts: dbp.scripts,
|
|
265
|
+
});
|
|
246
266
|
}
|
|
247
267
|
if (auth !== undefined) {
|
|
248
|
-
|
|
268
|
+
features.push({ label: `--auth ${auth}`, dependencies: AUTH_PRESETS[auth].deps });
|
|
249
269
|
}
|
|
270
|
+
applyFeatures(pkg, features);
|
|
250
271
|
// --link: replace @nifrajs/* semver refs with file: paths pointing at the local monorepo's packages/
|
|
251
|
-
// directory
|
|
272
|
+
// directory - lets an app consume nifra from a sibling repo before the packages are published.
|
|
252
273
|
if (opts.link !== undefined) {
|
|
253
|
-
// realpath both ends before computing the relative file: path
|
|
274
|
+
// realpath both ends before computing the relative file: path - otherwise a symlinked
|
|
254
275
|
// segment on either side (macOS tmpdir: /var/folders → /private/var/folders) skews the
|
|
255
276
|
// ../ count and every linked dependency resolves to a nonexistent directory.
|
|
256
277
|
const real = (p) => {
|
|
@@ -279,7 +300,7 @@ export async function scaffold(opts) {
|
|
|
279
300
|
}
|
|
280
301
|
await writeFile(pkgPath, `${JSON.stringify(pkg, null, 2)}\n`);
|
|
281
302
|
// Ship agent guidance so a coding agent (Claude Code, Cursor, …) writes correct nifra code from the
|
|
282
|
-
// first prompt
|
|
303
|
+
// first prompt - the conventions + the gotchas, tailored to this template.
|
|
283
304
|
await writeFile(join(opts.target, "AGENTS.md"), agentsMd({
|
|
284
305
|
template,
|
|
285
306
|
framework: framework ?? "react",
|
|
@@ -309,7 +330,7 @@ export async function scaffold(opts) {
|
|
|
309
330
|
await writeFile(wranglerPath, toml.replace(/^name = ".*"$/m, `name = "${name}"`));
|
|
310
331
|
}
|
|
311
332
|
catch {
|
|
312
|
-
// No wrangler.toml
|
|
333
|
+
// No wrangler.toml - skip the name fill.
|
|
313
334
|
}
|
|
314
335
|
}
|
|
315
336
|
// Emit a CI deploy workflow for the chosen target (validated above to require a deploy preset).
|
|
@@ -377,7 +398,7 @@ export function parseArgs(argv) {
|
|
|
377
398
|
}
|
|
378
399
|
const USAGE = `usage: bun create nifra <directory> [--template api|site|isr|fullstack] [--framework react|preact|vue|solid|svelte] [--deploy bun|node|deno|cf-pages|vercel] [--ci github] [--db ${DB_CHOICES.join("|")}] [--auth ${AUTH_CHOICES.join("|")}] [--force] [--link <path-to-nifra-repo>]`;
|
|
379
400
|
/**
|
|
380
|
-
* Run the CLI for `argv` and return the exit code + the message to print
|
|
401
|
+
* Run the CLI for `argv` and return the exit code + the message to print - no `process.exit`, `console`,
|
|
381
402
|
* or `process.argv`, so the whole flow (parse → scaffold → next-steps) is unit-testable in-process.
|
|
382
403
|
*/
|
|
383
404
|
export async function run(argv) {
|
|
@@ -400,7 +421,7 @@ export async function run(argv) {
|
|
|
400
421
|
}
|
|
401
422
|
catch (err) {
|
|
402
423
|
const msg = err instanceof Error ? err.message : String(err);
|
|
403
|
-
// A copy failure is almost always "destination exists"
|
|
424
|
+
// A copy failure is almost always "destination exists" - say so plainly.
|
|
404
425
|
const friendly = /exist/i.test(msg)
|
|
405
426
|
? `refusing to scaffold: "${target}" already exists. Use --force to overwrite.`
|
|
406
427
|
: msg;
|
|
@@ -408,7 +429,7 @@ export async function run(argv) {
|
|
|
408
429
|
}
|
|
409
430
|
const steps = [`cd ${target}`, "bun install", "bun run dev"];
|
|
410
431
|
if (result.ci !== undefined) {
|
|
411
|
-
// CI deploys on push
|
|
432
|
+
// CI deploys on push - surface the workflow + the secrets to set first.
|
|
412
433
|
steps[2] = "bun run dev # local preview";
|
|
413
434
|
if (result.ciSecrets !== undefined && result.ciSecrets.length > 0) {
|
|
414
435
|
steps.push(`# set repo secrets: ${result.ciSecrets.join(", ")}`);
|
|
@@ -436,7 +457,7 @@ export async function run(argv) {
|
|
|
436
457
|
...(result.auth !== undefined ? [AUTH_PRESETS[result.auth].label] : []),
|
|
437
458
|
];
|
|
438
459
|
if (result.link !== undefined) {
|
|
439
|
-
steps.push(`# @nifrajs/* packages linked from ${result.link}
|
|
460
|
+
steps.push(`# @nifrajs/* packages linked from ${result.link} - move the app and update file: paths if you relocate it`);
|
|
440
461
|
}
|
|
441
462
|
const header = tags.length > 0 ? `✓ Created ${target} (${tags.join(", ")})` : `✓ Created ${target}`;
|
|
442
463
|
return {
|
|
@@ -446,7 +467,7 @@ export async function run(argv) {
|
|
|
446
467
|
}
|
|
447
468
|
/**
|
|
448
469
|
* True when this module is the program entry point. `import.meta.main` covers Bun, Deno, and Node ≥ 24;
|
|
449
|
-
* on older Node it's `undefined`, so fall back to comparing the resolved entry path
|
|
470
|
+
* on older Node it's `undefined`, so fall back to comparing the resolved entry path - otherwise
|
|
450
471
|
* `npx create-nifra` / `npm create nifra` would silently no-op (the block below never runs).
|
|
451
472
|
*/
|
|
452
473
|
function isMainModule() {
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
package/dist/db.d.ts
CHANGED
|
@@ -1,22 +1,22 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* `--db <preset>`
|
|
2
|
+
* `--db <preset>` - wire a Drizzle data layer into a freshly scaffolded app, so a human (or a coding
|
|
3
3
|
* agent) starts from a correct, production-grade DB setup instead of inventing one. nifra ships NO DB
|
|
4
|
-
* abstraction (that belongs to Drizzle/libSQL, not a web framework)
|
|
4
|
+
* abstraction (that belongs to Drizzle/libSQL, not a web framework) - this just bundles the existing
|
|
5
5
|
* tool, the Redwood-style "batteries available" move: a starter schema, a typed client, a migration
|
|
6
6
|
* config, scripts, and env, all rip-out-able.
|
|
7
7
|
*
|
|
8
8
|
* Three presets, by runtime fit:
|
|
9
|
-
* - drizzle-libsql
|
|
9
|
+
* - drizzle-libsql - SQLite that runs EVERYWHERE incl. the edge (local file, or Turso). The default
|
|
10
10
|
* cross-runtime answer.
|
|
11
|
-
* - drizzle-postgres
|
|
12
|
-
* - drizzle-sqlite
|
|
11
|
+
* - drizzle-postgres - Postgres (postgres.js) on Bun/Node/Deno.
|
|
12
|
+
* - drizzle-sqlite - Bun's built-in `bun:sqlite` (sync, local file). Bun-only.
|
|
13
13
|
*
|
|
14
14
|
* The starter `notes` table follows the production-grade DB defaults for its dialect; what a dialect
|
|
15
15
|
* can't express inline (CHECK constraints, RLS, uuidv7) is called out in a comment, per those rules.
|
|
16
16
|
*/
|
|
17
17
|
export declare const DB_CHOICES: readonly ["drizzle-libsql", "drizzle-postgres", "drizzle-sqlite", "prisma-postgres", "prisma-sqlite", "kysely-postgres"];
|
|
18
18
|
export type DbChoice = (typeof DB_CHOICES)[number];
|
|
19
|
-
/** ORM family of a preset
|
|
19
|
+
/** ORM family of a preset - drives the auth adapter, the AGENTS DB rules, and the `c.db` query idiom. */
|
|
20
20
|
export type Orm = "drizzle" | "prisma" | "kysely";
|
|
21
21
|
export interface DbPreset {
|
|
22
22
|
/** Human label for messages, e.g. "Drizzle + libSQL". */
|
package/dist/db.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"db.d.ts","sourceRoot":"","sources":["../src/db.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAKH,eAAO,MAAM,UAAU,0HAOb,CAAA;AACV,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,UAAU,CAAC,CAAC,MAAM,CAAC,CAAA;AAElD,yGAAyG;AACzG,MAAM,MAAM,GAAG,GAAG,SAAS,GAAG,QAAQ,GAAG,QAAQ,CAAA;AAEjD,MAAM,WAAW,QAAQ;IACvB,yDAAyD;IACzD,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,0FAA0F;IAC1F,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAA;IACjB,8DAA8D;IAC9D,QAAQ,CAAC,OAAO,EAAE,UAAU,GAAG,QAAQ,CAAA;IACvC,kEAAkE;IAClE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;IAC/C,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;IAClD,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;IAClD,sEAAsE;IACtE,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;CACjD;
|
|
1
|
+
{"version":3,"file":"db.d.ts","sourceRoot":"","sources":["../src/db.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAKH,eAAO,MAAM,UAAU,0HAOb,CAAA;AACV,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,UAAU,CAAC,CAAC,MAAM,CAAC,CAAA;AAElD,yGAAyG;AACzG,MAAM,MAAM,GAAG,GAAG,SAAS,GAAG,QAAQ,GAAG,QAAQ,CAAA;AAEjD,MAAM,WAAW,QAAQ;IACvB,yDAAyD;IACzD,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,0FAA0F;IAC1F,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAA;IACjB,8DAA8D;IAC9D,QAAQ,CAAC,OAAO,EAAE,UAAU,GAAG,QAAQ,CAAA;IACvC,kEAAkE;IAClE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;IAC/C,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;IAClD,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;IAClD,sEAAsE;IACtE,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;CACjD;AAqbD,eAAO,MAAM,UAAU,EAAE,QAAQ,CAAC,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAqH3D,CAAA;AAWD,mGAAmG;AACnG,wBAAsB,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAkBlF"}
|