@reckona/create-mreact-app 0.0.16 → 0.0.18

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 CHANGED
@@ -6,6 +6,13 @@ Project scaffolder for mreact app-router applications.
6
6
  npx @reckona/create-mreact-app my-app --template app-router
7
7
  ```
8
8
 
9
+ Upgrade an existing project in place:
10
+
11
+ ```bash
12
+ npx @reckona/create-mreact-app upgrade --dry-run
13
+ npx @reckona/create-mreact-app upgrade
14
+ ```
15
+
9
16
  Generated apps include an explicit `vite.config.ts` with the mreact router
10
17
  plugin and a `tsconfig.json` that enables the app-router global types for route
11
18
  files. The default route directory is `app`.
@@ -16,9 +23,12 @@ files. The default route directory is `app`.
16
23
  - `app-router`
17
24
  - `app-router-tailwind`
18
25
  - `cloudflare`
26
+ - `dashboard`
19
27
 
20
28
  The `cloudflare` template generates a Workers entrypoint that imports the route registry emitted by `mreact-router build --target=cloudflare` at `.mreact/cloudflare/route-modules.mjs`, so dynamic and non-prerendered pages do not need a bundler-specific `import.meta.glob` transform.
21
29
 
30
+ The `dashboard` template adds Tailwind CSS, auth guards, a reactive login form, query cache hydration, and an opt-in devtools overlay helper.
31
+
22
32
  ## Options
23
33
 
24
34
  ```bash
@@ -27,6 +37,10 @@ npx @reckona/create-mreact-app my-app --template app-router-tailwind --pm pnpm
27
37
 
28
38
  Supported package managers are `pnpm`, `npm`, and `bun`.
29
39
 
40
+ ## Upgrade
41
+
42
+ `create-mreact-app upgrade` reads `package.json`, updates `@reckona/mreact*` dependency ranges to the current package version, and reports registered codemods for the version range being crossed. Use `--dry-run` to inspect changes without writing `package.json`, `--from <version>` when the source version is known, and `--to <version>` to target a specific release.
43
+
30
44
  Deployment scaffolds:
31
45
 
32
46
  ```bash
@@ -40,7 +54,7 @@ for API Gateway HTTP API v2 and Lambda Function URL payload format 2.0.
40
54
 
41
55
  For AWS Lambda production apps, add packages imported by loaders, middleware, route handlers, metadata, server actions, or their app-local helper modules to `importPolicy.allowedPackages` in the generated `src/lambda.ts`.
42
56
 
43
- Package Lambda deployments from a minimal asset directory, not the full project root. The generated `docs/deploy/aws-lambda.md` shows a `prepare-lambda-asset.sh` example that copies `.mreact/`, the bundled handler, manifests, lockfiles, and production `node_modules` into `.lambda/` so CDK/SAM/serverless assets stay below AWS's 250 MB unzipped deployment package limit. Generated Lambda projects build with `mreact-router build --target=node`, keeping Cloudflare Workers route modules out of Node-only artifacts and storing compiled server route artifacts in `.mreact/server/server-modules/*.json` instead of one large server manifest. The Lambda adapter treats `outDir` as read-only and materializes runtime files under `/tmp` by default, so `.mreact/` can stay inside the deployed package; handler creation also starts a background preload for built runtime modules, route modules, and route metadata so route-specific bundling can move out of the first matched request on warmable runtimes. For pnpm projects, the generated script uses `--config.node-linker=hoisted` and includes symlink and actual-file-byte checks because pnpm's default isolated linker can create Lambda artifacts that package larger than `du` suggests.
57
+ Package Lambda deployments from a minimal asset directory, not the full project root. The generated `docs/deploy/aws-lambda.md` shows a `prepare-lambda-asset.sh` example that copies `.mreact/`, the bundled handler, manifests, lockfiles, and production `node_modules` into `.lambda/` so CDK/SAM/serverless assets stay below AWS's 250 MB unzipped deployment package limit. Generated Lambda projects build with `mreact-router build --target=node`, keeping Cloudflare Workers route modules out of Node-only artifacts and storing compiled server route artifacts in `.mreact/server/server-modules/*.json` instead of one large server manifest. The Lambda adapter treats `outDir` as read-only and materializes runtime files under `/tmp` by default, so `.mreact/` can stay inside the deployed package; generated Lambda handlers use top-level `await createPreloadedAwsLambdaRequestHandler()` so built runtime modules, middleware, route modules, layouts, and route metadata are imported during Lambda initialization rather than on the first request. For pnpm projects, the generated script uses `--config.node-linker=hoisted` and includes symlink and actual-file-byte checks because pnpm's default isolated linker can create Lambda artifacts that package larger than `du` suggests.
44
58
 
45
59
  Use `--src-dir` to generate a larger-app layout:
46
60
 
@@ -1,5 +1,6 @@
1
1
  import { type CreateMreactAppDeployTarget, type CreateMreactAppPackageManager, type CreateMreactAppTemplate } from "./index.js";
2
- export interface CreateMreactAppCliOptions {
2
+ export interface CreateMreactAppCreateCliOptions {
3
+ command: "create";
3
4
  deploy?: CreateMreactAppDeployTarget | undefined;
4
5
  directory: string;
5
6
  help?: boolean | undefined;
@@ -7,6 +8,15 @@ export interface CreateMreactAppCliOptions {
7
8
  srcDir: boolean;
8
9
  template: CreateMreactAppTemplate;
9
10
  }
11
+ export interface CreateMreactAppUpgradeCliOptions {
12
+ command: "upgrade";
13
+ directory: string;
14
+ dryRun?: boolean | undefined;
15
+ fromVersion?: string | undefined;
16
+ help?: boolean | undefined;
17
+ targetVersion?: string | undefined;
18
+ }
19
+ export type CreateMreactAppCliOptions = CreateMreactAppCreateCliOptions | CreateMreactAppUpgradeCliOptions;
10
20
  export declare function parseCreateMreactAppCliArgs(args: readonly string[]): CreateMreactAppCliOptions;
11
21
  export declare function createMreactAppHelpText(): string;
12
22
  //# sourceMappingURL=cli-args.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"cli-args.d.ts","sourceRoot":"","sources":["../src/cli-args.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,2BAA2B,EAChC,KAAK,6BAA6B,EAClC,KAAK,uBAAuB,EAC7B,MAAM,YAAY,CAAC;AAEpB,MAAM,WAAW,yBAAyB;IACxC,MAAM,CAAC,EAAE,2BAA2B,GAAG,SAAS,CAAC;IACjD,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC3B,cAAc,EAAE,6BAA6B,CAAC;IAC9C,MAAM,EAAE,OAAO,CAAC;IAChB,QAAQ,EAAE,uBAAuB,CAAC;CACnC;AAED,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,GAAG,yBAAyB,CAyF9F;AAED,wBAAgB,uBAAuB,IAAI,MAAM,CAkBhD"}
1
+ {"version":3,"file":"cli-args.d.ts","sourceRoot":"","sources":["../src/cli-args.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,2BAA2B,EAChC,KAAK,6BAA6B,EAClC,KAAK,uBAAuB,EAC7B,MAAM,YAAY,CAAC;AAEpB,MAAM,WAAW,+BAA+B;IAC9C,OAAO,EAAE,QAAQ,CAAC;IAClB,MAAM,CAAC,EAAE,2BAA2B,GAAG,SAAS,CAAC;IACjD,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC3B,cAAc,EAAE,6BAA6B,CAAC;IAC9C,MAAM,EAAE,OAAO,CAAC;IAChB,QAAQ,EAAE,uBAAuB,CAAC;CACnC;AAED,MAAM,WAAW,gCAAgC;IAC/C,OAAO,EAAE,SAAS,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC7B,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC,IAAI,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC3B,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACpC;AAED,MAAM,MAAM,yBAAyB,GACjC,+BAA+B,GAC/B,gCAAgC,CAAC;AAErC,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,GAAG,yBAAyB,CA+F9F;AAED,wBAAgB,uBAAuB,IAAI,MAAM,CAyBhD"}
package/dist/cli-args.js CHANGED
@@ -1,5 +1,8 @@
1
1
  import { createMreactAppTemplates, } from "./index.js";
2
2
  export function parseCreateMreactAppCliArgs(args) {
3
+ if (args[0] === "upgrade") {
4
+ return parseUpgradeArgs(args.slice(1));
5
+ }
3
6
  const directories = [];
4
7
  let template = "app-router";
5
8
  let packageManager = "pnpm";
@@ -13,6 +16,7 @@ export function parseCreateMreactAppCliArgs(args) {
13
16
  }
14
17
  if (arg === "--help" || arg === "-h") {
15
18
  return {
19
+ command: "create",
16
20
  deploy,
17
21
  directory: directories[0] ?? "mreact-app",
18
22
  help: true,
@@ -67,6 +71,7 @@ export function parseCreateMreactAppCliArgs(args) {
67
71
  throw new Error(`Expected one target directory, received ${directories.length}.`);
68
72
  }
69
73
  return {
74
+ command: "create",
70
75
  deploy,
71
76
  directory: directories[0] ?? "mreact-app",
72
77
  packageManager,
@@ -78,6 +83,7 @@ export function createMreactAppHelpText() {
78
83
  return [
79
84
  "Usage:",
80
85
  " create-mreact-app [directory] [options]",
86
+ " create-mreact-app upgrade [directory] [options]",
81
87
  "",
82
88
  "Options:",
83
89
  ` --template <name> Template to generate: ${createMreactAppTemplates.join(", ")}. Default: app-router.`,
@@ -86,13 +92,80 @@ export function createMreactAppHelpText() {
86
92
  " --src-dir Generate routes under src/app instead of app.",
87
93
  " -h, --help Show this help message.",
88
94
  "",
95
+ "Upgrade options:",
96
+ " --dry-run Report dependency and codemod changes without writing package.json.",
97
+ " --from <version> Version the project is upgrading from.",
98
+ " --to <version> Target mreact package version. Default: current create-mreact-app version.",
99
+ "",
89
100
  "Examples:",
90
101
  " create-mreact-app my-app",
91
102
  " create-mreact-app my-app --template app-router-tailwind --src-dir",
92
103
  " create-mreact-app my-app --deploy container",
93
104
  " create-mreact-app my-app --deploy aws-lambda",
105
+ " create-mreact-app upgrade --dry-run",
94
106
  ].join("\n");
95
107
  }
108
+ function parseUpgradeArgs(args) {
109
+ const directories = [];
110
+ let dryRun = false;
111
+ let fromVersion;
112
+ let targetVersion;
113
+ for (let index = 0; index < args.length; index += 1) {
114
+ const arg = args[index];
115
+ if (arg === "--") {
116
+ directories.push(...args.slice(index + 1));
117
+ break;
118
+ }
119
+ if (arg === "--help" || arg === "-h") {
120
+ return {
121
+ command: "upgrade",
122
+ directory: directories[0] ?? ".",
123
+ dryRun,
124
+ fromVersion,
125
+ help: true,
126
+ targetVersion,
127
+ };
128
+ }
129
+ if (arg === "--dry-run") {
130
+ dryRun = true;
131
+ continue;
132
+ }
133
+ if (arg === "--from") {
134
+ fromVersion = readOptionValue(args, index, "from version");
135
+ index += 1;
136
+ continue;
137
+ }
138
+ if (arg?.startsWith("--from=")) {
139
+ fromVersion = arg.slice("--from=".length);
140
+ continue;
141
+ }
142
+ if (arg === "--to") {
143
+ targetVersion = readOptionValue(args, index, "target version");
144
+ index += 1;
145
+ continue;
146
+ }
147
+ if (arg?.startsWith("--to=")) {
148
+ targetVersion = arg.slice("--to=".length);
149
+ continue;
150
+ }
151
+ if (arg?.startsWith("-")) {
152
+ throw new Error(`Unknown option ${arg}.`);
153
+ }
154
+ if (arg !== undefined) {
155
+ directories.push(arg);
156
+ }
157
+ }
158
+ if (directories.length > 1) {
159
+ throw new Error(`Expected one target directory, received ${directories.length}.`);
160
+ }
161
+ return {
162
+ command: "upgrade",
163
+ directory: directories[0] ?? ".",
164
+ dryRun,
165
+ fromVersion,
166
+ targetVersion,
167
+ };
168
+ }
96
169
  function readOptionValue(args, index, name) {
97
170
  const value = args[index + 1];
98
171
  if (value === undefined || value.startsWith("-")) {
@@ -104,7 +177,8 @@ function parseTemplate(value) {
104
177
  if (value === "basic" ||
105
178
  value === "app-router" ||
106
179
  value === "app-router-tailwind" ||
107
- value === "cloudflare") {
180
+ value === "cloudflare" ||
181
+ value === "dashboard") {
108
182
  return value;
109
183
  }
110
184
  throw new Error(`Unknown template ${JSON.stringify(value)}. Available templates: ${createMreactAppTemplates.join(", ")}`);
@@ -1 +1 @@
1
- {"version":3,"file":"cli-args.js","sourceRoot":"","sources":["../src/cli-args.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli-args.js","sourceRoot":"","sources":["../src/cli-args.ts"],"names":[],"mappings":"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"}
package/dist/cli.js CHANGED
@@ -1,13 +1,28 @@
1
1
  #!/usr/bin/env node
2
2
  import { resolve } from "node:path";
3
3
  import { createMreactAppHelpText, parseCreateMreactAppCliArgs } from "./cli-args.js";
4
- import { createMreactApp } from "./index.js";
4
+ import { createMreactApp, upgradeMreactApp } from "./index.js";
5
5
  try {
6
6
  const options = parseCreateMreactAppCliArgs(process.argv.slice(2));
7
7
  if (options.help === true) {
8
8
  console.log(createMreactAppHelpText());
9
9
  process.exit(0);
10
10
  }
11
+ if (options.command === "upgrade") {
12
+ const result = await upgradeMreactApp({
13
+ directory: resolve(options.directory),
14
+ dryRun: options.dryRun,
15
+ fromVersion: options.fromVersion,
16
+ targetVersion: options.targetVersion,
17
+ });
18
+ console.log(result.changed
19
+ ? `Updated ${result.updatedDependencies.length} mreact dependency range(s).`
20
+ : "No mreact dependency ranges needed updating.");
21
+ if (result.codemods.length > 0) {
22
+ console.log(`Codemods: ${result.codemods.map((codemod) => codemod.id).join(", ")}`);
23
+ }
24
+ process.exit(0);
25
+ }
11
26
  const result = await createMreactApp({
12
27
  deploy: options.deploy,
13
28
  directory: resolve(options.directory),
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,uBAAuB,EAAE,2BAA2B,EAAE,MAAM,eAAe,CAAC;AACrF,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAE7C,IAAI,CAAC;IACH,MAAM,OAAO,GAAG,2BAA2B,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACnE,IAAI,OAAO,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;QAC1B,OAAO,CAAC,GAAG,CAAC,uBAAuB,EAAE,CAAC,CAAC;QACvC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC;QACnC,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,SAAS,EAAE,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC;QACrC,IAAI,EAAE,OAAO,CAAC,SAAS;QACvB,cAAc,EAAE,OAAO,CAAC,cAAc;QACtC,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,QAAQ,EAAE,OAAO,CAAC,QAAQ;KAC3B,CAAC,CAAC;IAEH,OAAO,CAAC,GAAG,CAAC,WAAW,MAAM,CAAC,QAAQ,kBAAkB,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC;IAC5E,OAAO,CAAC,GAAG,CAAC,YAAY,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;AAC/C,CAAC;AAAC,OAAO,KAAK,EAAE,CAAC;IACf,OAAO,CAAC,KAAK,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IACtE,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;AACvB,CAAC"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,uBAAuB,EAAE,2BAA2B,EAAE,MAAM,eAAe,CAAC;AACrF,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAE/D,IAAI,CAAC;IACH,MAAM,OAAO,GAAG,2BAA2B,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACnE,IAAI,OAAO,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;QAC1B,OAAO,CAAC,GAAG,CAAC,uBAAuB,EAAE,CAAC,CAAC;QACvC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,IAAI,OAAO,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QAClC,MAAM,MAAM,GAAG,MAAM,gBAAgB,CAAC;YACpC,SAAS,EAAE,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC;YACrC,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,WAAW,EAAE,OAAO,CAAC,WAAW;YAChC,aAAa,EAAE,OAAO,CAAC,aAAa;SACrC,CAAC,CAAC;QAEH,OAAO,CAAC,GAAG,CACT,MAAM,CAAC,OAAO;YACZ,CAAC,CAAC,WAAW,MAAM,CAAC,mBAAmB,CAAC,MAAM,8BAA8B;YAC5E,CAAC,CAAC,8CAA8C,CACnD,CAAC;QACF,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC/B,OAAO,CAAC,GAAG,CAAC,aAAa,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACtF,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC;QACnC,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,SAAS,EAAE,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC;QACrC,IAAI,EAAE,OAAO,CAAC,SAAS;QACvB,cAAc,EAAE,OAAO,CAAC,cAAc;QACtC,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,QAAQ,EAAE,OAAO,CAAC,QAAQ;KAC3B,CAAC,CAAC;IAEH,OAAO,CAAC,GAAG,CAAC,WAAW,MAAM,CAAC,QAAQ,kBAAkB,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC;IAC5E,OAAO,CAAC,GAAG,CAAC,YAAY,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;AAC/C,CAAC;AAAC,OAAO,KAAK,EAAE,CAAC;IACf,OAAO,CAAC,KAAK,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IACtE,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;AACvB,CAAC"}
package/dist/index.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- export type CreateMreactAppTemplate = "basic" | "app-router" | "app-router-tailwind" | "cloudflare";
1
+ export type CreateMreactAppTemplate = "basic" | "app-router" | "app-router-tailwind" | "cloudflare" | "dashboard";
2
2
  export type CreateMreactAppPackageManager = "pnpm" | "npm" | "bun";
3
3
  export type CreateMreactAppDeployTarget = "aws-lambda" | "container";
4
4
  export interface CreateMreactAppOptions {
@@ -16,6 +16,40 @@ export interface CreateMreactAppResult {
16
16
  packageManager: CreateMreactAppPackageManager;
17
17
  template: CreateMreactAppTemplate;
18
18
  }
19
+ export interface UpgradeMreactAppOptions {
20
+ directory: string;
21
+ dryRun?: boolean | undefined;
22
+ fromVersion?: string | undefined;
23
+ targetVersion?: string | undefined;
24
+ }
25
+ export interface UpgradeMreactAppDependencyUpdate {
26
+ field: PackageDependencyField;
27
+ from: string;
28
+ name: string;
29
+ to: string;
30
+ }
31
+ export interface UpgradeMreactAppCodemodResult {
32
+ applied: boolean;
33
+ description: string;
34
+ id: string;
35
+ }
36
+ export interface UpgradeMreactAppResult {
37
+ changed: boolean;
38
+ codemods: UpgradeMreactAppCodemodResult[];
39
+ packageJsonPath: string;
40
+ updatedDependencies: UpgradeMreactAppDependencyUpdate[];
41
+ }
19
42
  export declare function createMreactApp(options: CreateMreactAppOptions): Promise<CreateMreactAppResult>;
20
- export declare const createMreactAppTemplates: readonly ["basic", "app-router", "app-router-tailwind", "cloudflare"];
43
+ export declare function upgradeMreactApp(options: UpgradeMreactAppOptions): Promise<UpgradeMreactAppResult>;
44
+ export declare const createMreactAppTemplates: readonly ["basic", "app-router", "app-router-tailwind", "cloudflare", "dashboard"];
45
+ export declare const createMreactAppCodemods: readonly [{
46
+ readonly description: "Normalize app-router import policy examples after the 0.0.16 adapter template changes.";
47
+ readonly id: "0.0.16-import-policy-normalize";
48
+ readonly version: "0.0.16";
49
+ }, {
50
+ readonly description: "Check AWS Lambda template ESM entrypoints and package-manager production install guidance.";
51
+ readonly id: "0.0.16-aws-lambda-esm-template";
52
+ readonly version: "0.0.16";
53
+ }];
54
+ export type PackageDependencyField = "dependencies" | "devDependencies" | "peerDependencies" | "optionalDependencies";
21
55
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,uBAAuB,GAAG,OAAO,GAAG,YAAY,GAAG,qBAAqB,GAAG,YAAY,CAAC;AAEpG,MAAM,MAAM,6BAA6B,GAAG,MAAM,GAAG,KAAK,GAAG,KAAK,CAAC;AACnE,MAAM,MAAM,2BAA2B,GAAG,YAAY,GAAG,WAAW,CAAC;AAErE,MAAM,WAAW,sBAAsB;IACrC,MAAM,CAAC,EAAE,2BAA2B,GAAG,SAAS,CAAC;IACjD,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,cAAc,CAAC,EAAE,6BAA6B,GAAG,SAAS,CAAC;IAC3D,MAAM,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC7B,QAAQ,CAAC,EAAE,uBAAuB,GAAG,SAAS,CAAC;CAChD;AAED,MAAM,WAAW,qBAAqB;IACpC,MAAM,CAAC,EAAE,2BAA2B,GAAG,SAAS,CAAC;IACjD,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,cAAc,EAAE,6BAA6B,CAAC;IAC9C,QAAQ,EAAE,uBAAuB,CAAC;CACnC;AAwBD,wBAAsB,eAAe,CACnC,OAAO,EAAE,sBAAsB,GAC9B,OAAO,CAAC,qBAAqB,CAAC,CA2BhC;AAED,eAAO,MAAM,wBAAwB,uEAKkB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,uBAAuB,GAC/B,OAAO,GACP,YAAY,GACZ,qBAAqB,GACrB,YAAY,GACZ,WAAW,CAAC;AAEhB,MAAM,MAAM,6BAA6B,GAAG,MAAM,GAAG,KAAK,GAAG,KAAK,CAAC;AACnE,MAAM,MAAM,2BAA2B,GAAG,YAAY,GAAG,WAAW,CAAC;AAErE,MAAM,WAAW,sBAAsB;IACrC,MAAM,CAAC,EAAE,2BAA2B,GAAG,SAAS,CAAC;IACjD,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,cAAc,CAAC,EAAE,6BAA6B,GAAG,SAAS,CAAC;IAC3D,MAAM,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC7B,QAAQ,CAAC,EAAE,uBAAuB,GAAG,SAAS,CAAC;CAChD;AAED,MAAM,WAAW,qBAAqB;IACpC,MAAM,CAAC,EAAE,2BAA2B,GAAG,SAAS,CAAC;IACjD,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,cAAc,EAAE,6BAA6B,CAAC;IAC9C,QAAQ,EAAE,uBAAuB,CAAC;CACnC;AAED,MAAM,WAAW,uBAAuB;IACtC,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC7B,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACpC;AAED,MAAM,WAAW,gCAAgC;IAC/C,KAAK,EAAE,sBAAsB,CAAC;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;CACZ;AAED,MAAM,WAAW,6BAA6B;IAC5C,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,EAAE,EAAE,MAAM,CAAC;CACZ;AAED,MAAM,WAAW,sBAAsB;IACrC,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,6BAA6B,EAAE,CAAC;IAC1C,eAAe,EAAE,MAAM,CAAC;IACxB,mBAAmB,EAAE,gCAAgC,EAAE,CAAC;CACzD;AA6BD,wBAAsB,eAAe,CACnC,OAAO,EAAE,sBAAsB,GAC9B,OAAO,CAAC,qBAAqB,CAAC,CA2BhC;AAED,wBAAsB,gBAAgB,CACpC,OAAO,EAAE,uBAAuB,GAC/B,OAAO,CAAC,sBAAsB,CAAC,CAiDjC;AAED,eAAO,MAAM,wBAAwB,oFAMkB,CAAC;AAExD,eAAO,MAAM,uBAAuB;;;;;;;;EAa1B,CAAC;AAEX,MAAM,MAAM,sBAAsB,GAC9B,cAAc,GACd,iBAAiB,GACjB,kBAAkB,GAClB,sBAAsB,CAAC"}
package/dist/index.js CHANGED
@@ -1,10 +1,15 @@
1
- import { mkdir, readdir, writeFile } from "node:fs/promises";
1
+ import { mkdir, readdir, readFile, writeFile } from "node:fs/promises";
2
2
  import { basename, dirname, join } from "node:path";
3
3
  const internalPackageVersions = {
4
- "@reckona/mreact": "^0.0.16",
5
- "@reckona/mreact-reactive-core": "^0.0.16",
6
- "@reckona/mreact-router": "^0.0.16",
4
+ "@reckona/mreact-auth": "^0.0.18",
5
+ "@reckona/mreact-devtools": "^0.0.18",
6
+ "@reckona/mreact-forms": "^0.0.18",
7
+ "@reckona/mreact": "^0.0.18",
8
+ "@reckona/mreact-query": "^0.0.18",
9
+ "@reckona/mreact-reactive-core": "^0.0.18",
10
+ "@reckona/mreact-router": "^0.0.18",
7
11
  };
12
+ const currentMreactVersion = internalPackageVersions["@reckona/mreact"].replace(/^\^/, "");
8
13
  const typescriptVersion = "^6.0.3";
9
14
  const tailwindVersion = "^4.3.0";
10
15
  const tailwindCliVersion = "^4.3.0";
@@ -31,16 +36,79 @@ export async function createMreactApp(options) {
31
36
  template,
32
37
  };
33
38
  }
39
+ export async function upgradeMreactApp(options) {
40
+ const packageJsonPath = join(options.directory, "package.json");
41
+ const source = await readFile(packageJsonPath, "utf8");
42
+ const packageJson = JSON.parse(source);
43
+ const targetVersion = options.targetVersion ?? currentMreactVersion;
44
+ const targetRange = `^${targetVersion}`;
45
+ const updatedDependencies = [];
46
+ for (const field of packageDependencyFields) {
47
+ const dependencies = packageJson[field];
48
+ if (!isDependencyRecord(dependencies)) {
49
+ continue;
50
+ }
51
+ for (const [name, from] of Object.entries(dependencies)) {
52
+ if (!isMreactWorkspacePackage(name) || from === targetRange) {
53
+ continue;
54
+ }
55
+ dependencies[name] = targetRange;
56
+ updatedDependencies.push({
57
+ field,
58
+ from,
59
+ name,
60
+ to: targetRange,
61
+ });
62
+ }
63
+ }
64
+ const codemods = createMreactAppCodemods
65
+ .filter((codemod) => shouldRunCodemod(options.fromVersion, codemod.version, targetVersion))
66
+ .map((codemod) => ({
67
+ applied: options.dryRun !== true,
68
+ description: codemod.description,
69
+ id: codemod.id,
70
+ }));
71
+ const changed = updatedDependencies.length > 0 || codemods.length > 0;
72
+ if (changed && options.dryRun !== true) {
73
+ await writeFile(packageJsonPath, json(packageJson));
74
+ }
75
+ return {
76
+ changed,
77
+ codemods,
78
+ packageJsonPath,
79
+ updatedDependencies,
80
+ };
81
+ }
34
82
  export const createMreactAppTemplates = [
35
83
  "basic",
36
84
  "app-router",
37
85
  "app-router-tailwind",
38
86
  "cloudflare",
87
+ "dashboard",
88
+ ];
89
+ export const createMreactAppCodemods = [
90
+ {
91
+ description: "Normalize app-router import policy examples after the 0.0.16 adapter template changes.",
92
+ id: "0.0.16-import-policy-normalize",
93
+ version: "0.0.16",
94
+ },
95
+ {
96
+ description: "Check AWS Lambda template ESM entrypoints and package-manager production install guidance.",
97
+ id: "0.0.16-aws-lambda-esm-template",
98
+ version: "0.0.16",
99
+ },
100
+ ];
101
+ const packageDependencyFields = [
102
+ "dependencies",
103
+ "devDependencies",
104
+ "peerDependencies",
105
+ "optionalDependencies",
39
106
  ];
40
107
  function templateDefinition(template, name, packageManager, srcDir, deploy) {
41
108
  if (template === "basic" || template === "app-router") {
42
109
  return appRouterTemplate(name, packageManager, {
43
110
  cloudflare: false,
111
+ dashboard: false,
44
112
  deploy,
45
113
  srcDir,
46
114
  tailwind: false,
@@ -49,6 +117,16 @@ function templateDefinition(template, name, packageManager, srcDir, deploy) {
49
117
  if (template === "app-router-tailwind") {
50
118
  return appRouterTemplate(name, packageManager, {
51
119
  cloudflare: false,
120
+ dashboard: false,
121
+ deploy,
122
+ srcDir,
123
+ tailwind: true,
124
+ });
125
+ }
126
+ if (template === "dashboard") {
127
+ return appRouterTemplate(name, packageManager, {
128
+ cloudflare: false,
129
+ dashboard: true,
52
130
  deploy,
53
131
  srcDir,
54
132
  tailwind: true,
@@ -56,6 +134,7 @@ function templateDefinition(template, name, packageManager, srcDir, deploy) {
56
134
  }
57
135
  return appRouterTemplate(name, packageManager, {
58
136
  cloudflare: true,
137
+ dashboard: false,
59
138
  deploy,
60
139
  srcDir,
61
140
  tailwind: false,
@@ -75,6 +154,14 @@ function appRouterTemplate(name, packageManager, options) {
75
154
  "@reckona/mreact": internalPackageVersions["@reckona/mreact"],
76
155
  "@reckona/mreact-reactive-core": internalPackageVersions["@reckona/mreact-reactive-core"],
77
156
  "@reckona/mreact-router": internalPackageVersions["@reckona/mreact-router"],
157
+ ...(options.dashboard
158
+ ? {
159
+ "@reckona/mreact-auth": internalPackageVersions["@reckona/mreact-auth"],
160
+ "@reckona/mreact-devtools": internalPackageVersions["@reckona/mreact-devtools"],
161
+ "@reckona/mreact-forms": internalPackageVersions["@reckona/mreact-forms"],
162
+ "@reckona/mreact-query": internalPackageVersions["@reckona/mreact-query"],
163
+ }
164
+ : {}),
78
165
  },
79
166
  devDependencies: {
80
167
  typescript: typescriptVersion,
@@ -129,6 +216,21 @@ function appRouterTemplate(name, packageManager, options) {
129
216
  content: readmeSource(name, packageManager, options),
130
217
  },
131
218
  ];
219
+ if (options.dashboard) {
220
+ files.push({
221
+ path: `${paths.routesDir}/dashboard/page.tsx`,
222
+ content: dashboardPageSource,
223
+ }, {
224
+ path: `${paths.routesDir}/login/page.tsx`,
225
+ content: dashboardLoginPageSource,
226
+ }, {
227
+ path: `${paths.routesDir}/session-store.ts`,
228
+ content: dashboardSessionStoreSource,
229
+ }, {
230
+ path: "src/devtools.ts",
231
+ content: dashboardDevtoolsSource,
232
+ });
233
+ }
132
234
  if (options.tailwind) {
133
235
  files.push({
134
236
  path: `${paths.routesDir}/globals.css`,
@@ -176,6 +278,8 @@ function appRouterTemplate(name, packageManager, options) {
176
278
  function pageSourceForTemplate(options) {
177
279
  if (options.cloudflare)
178
280
  return cloudflarePageSource;
281
+ if (options.dashboard)
282
+ return dashboardHomePageSource;
179
283
  if (options.srcDir)
180
284
  return srcDirPageSource;
181
285
  if (options.tailwind)
@@ -252,6 +356,36 @@ function sanitizePackageName(name) {
252
356
  .replace(/[^a-z0-9._-]+/g, "-")
253
357
  .replace(/^-+|-+$/g, "") || "mreact-app");
254
358
  }
359
+ function isDependencyRecord(value) {
360
+ return (typeof value === "object" &&
361
+ value !== null &&
362
+ Object.values(value).every((entry) => typeof entry === "string"));
363
+ }
364
+ function isMreactWorkspacePackage(name) {
365
+ return name.startsWith("@reckona/mreact") || name === "@reckona/create-mreact-app";
366
+ }
367
+ function shouldRunCodemod(fromVersion, codemodVersion, targetVersion) {
368
+ if (fromVersion === undefined) {
369
+ return true;
370
+ }
371
+ return (compareVersions(fromVersion, codemodVersion) < 0 &&
372
+ compareVersions(codemodVersion, targetVersion) <= 0);
373
+ }
374
+ function compareVersions(left, right) {
375
+ const leftParts = parseVersion(left);
376
+ const rightParts = parseVersion(right);
377
+ for (let index = 0; index < 3; index += 1) {
378
+ const difference = (leftParts[index] ?? 0) - (rightParts[index] ?? 0);
379
+ if (difference !== 0) {
380
+ return difference;
381
+ }
382
+ }
383
+ return 0;
384
+ }
385
+ function parseVersion(value) {
386
+ const [major = "0", minor = "0", patch = "0"] = value.replace(/^[^\d]*/, "").split(".");
387
+ return [Number(major) || 0, Number(minor) || 0, Number(patch) || 0];
388
+ }
255
389
  function json(value) {
256
390
  return `${JSON.stringify(value, null, 2)}\n`;
257
391
  }
@@ -330,6 +464,218 @@ export default function Page() {
330
464
  );
331
465
  }
332
466
  `;
467
+ const dashboardHomePageSource = `export const metadata = {
468
+ title: "Dashboard starter",
469
+ };
470
+
471
+ export default function Page() {
472
+ return (
473
+ <main class="mx-auto grid min-h-screen max-w-5xl content-center gap-6 px-6 py-12">
474
+ <section class="grid gap-3">
475
+ <p class="text-sm font-medium text-cyan-300">mreact dashboard starter</p>
476
+ <h1 class="text-4xl font-semibold text-white">Operations dashboard baseline</h1>
477
+ <p class="max-w-2xl text-slate-300">
478
+ Auth guards, form state, query cache hydration, Tailwind, and the devtools overlay are
479
+ wired into one starter.
480
+ </p>
481
+ </section>
482
+ <nav class="flex flex-wrap gap-3">
483
+ <a class="rounded-md bg-cyan-300 px-4 py-2 font-medium text-slate-950" href="/dashboard">
484
+ Open dashboard
485
+ </a>
486
+ <a class="rounded-md border border-slate-700 px-4 py-2 text-slate-100" href="/login">
487
+ Login form
488
+ </a>
489
+ </nav>
490
+ </main>
491
+ );
492
+ }
493
+ `;
494
+ const dashboardPageSource = `import { requireRole } from "@reckona/mreact-auth";
495
+ import {
496
+ createQuery,
497
+ getQueryClient,
498
+ type QueryClient,
499
+ type QueryKey,
500
+ } from "@reckona/mreact-query";
501
+ import { sessions, type DashboardSessionData } from "../session-store.js";
502
+
503
+ export const metadata = {
504
+ title: "Dashboard",
505
+ };
506
+
507
+ interface LoaderContext {
508
+ queryClient: QueryClient;
509
+ request: Request;
510
+ }
511
+
512
+ interface DashboardMetric {
513
+ label: string;
514
+ value: string;
515
+ }
516
+
517
+ interface DashboardData {
518
+ actor: string;
519
+ metrics: readonly DashboardMetric[];
520
+ }
521
+
522
+ const DASHBOARD_KEY: QueryKey = ["dashboard", "metrics"];
523
+
524
+ async function fetchDashboardMetrics(): Promise<readonly DashboardMetric[]> {
525
+ return [
526
+ { label: "Active users", value: "1,248" },
527
+ { label: "Conversion", value: "7.4%" },
528
+ { label: "Queue depth", value: "18" },
529
+ ];
530
+ }
531
+
532
+ export async function loader(context: LoaderContext): Promise<DashboardData> {
533
+ const session = await requireRole<DashboardSessionData>(context.request, sessions, "admin");
534
+ const metrics = await context.queryClient.fetchQuery({
535
+ queryKey: DASHBOARD_KEY,
536
+ queryFn: fetchDashboardMetrics,
537
+ });
538
+
539
+ return {
540
+ actor: session.data.userId,
541
+ metrics,
542
+ };
543
+ }
544
+
545
+ export default function Page(props: { data: DashboardData }) {
546
+ const observer = createQuery(getQueryClient(), {
547
+ queryKey: DASHBOARD_KEY,
548
+ queryFn: fetchDashboardMetrics,
549
+ });
550
+ const live = observer.result.get();
551
+ const metrics = live.data ?? props.data.metrics;
552
+
553
+ return (
554
+ <main class="mx-auto grid max-w-6xl gap-6 px-6 py-10">
555
+ <header class="flex flex-wrap items-end justify-between gap-4">
556
+ <div>
557
+ <p class="text-sm text-cyan-300">Signed in as {props.data.actor}</p>
558
+ <h1 class="text-3xl font-semibold text-white">Dashboard</h1>
559
+ </div>
560
+ <a class="rounded-md border border-slate-700 px-3 py-2 text-sm text-slate-200" href="/login">
561
+ Login form
562
+ </a>
563
+ </header>
564
+ <section class="grid gap-4 md:grid-cols-3">
565
+ {metrics.map((metric) => (
566
+ <article class="rounded-lg border border-slate-800 bg-slate-900 p-4" key={metric.label}>
567
+ <p class="text-sm text-slate-400">{metric.label}</p>
568
+ <strong class="mt-2 block text-3xl text-white">{metric.value}</strong>
569
+ </article>
570
+ ))}
571
+ </section>
572
+ <section class="rounded-lg border border-slate-800 bg-slate-900">
573
+ <table class="w-full border-collapse text-left text-sm">
574
+ <thead class="text-slate-400">
575
+ <tr>
576
+ <th class="border-b border-slate-800 p-3">Segment</th>
577
+ <th class="border-b border-slate-800 p-3">Status</th>
578
+ <th class="border-b border-slate-800 p-3">Owner</th>
579
+ </tr>
580
+ </thead>
581
+ <tbody>
582
+ {["Acquisition", "Activation", "Retention"].map((segment) => (
583
+ <tr key={segment}>
584
+ <td class="border-b border-slate-800 p-3">{segment}</td>
585
+ <td class="border-b border-slate-800 p-3 text-emerald-300">On track</td>
586
+ <td class="border-b border-slate-800 p-3">Admin</td>
587
+ </tr>
588
+ ))}
589
+ </tbody>
590
+ </table>
591
+ </section>
592
+ </main>
593
+ );
594
+ }
595
+ `;
596
+ const dashboardLoginPageSource = `import { createForm } from "@reckona/mreact-forms";
597
+
598
+ export const metadata = {
599
+ title: "Login",
600
+ };
601
+
602
+ interface LoginValues {
603
+ email: string;
604
+ password: string;
605
+ }
606
+
607
+ const loginForm = createForm<LoginValues>({
608
+ initialValues: { email: "", password: "" },
609
+ validate: {
610
+ email: (value) => (/^[^\\s@]+@[^\\s@]+\\.[^\\s@]+$/.test(value) ? undefined : "Enter an email."),
611
+ password: (value) => (value.length >= 8 ? undefined : "Use at least 8 characters."),
612
+ },
613
+ validateOn: ["blur", "submit"],
614
+ });
615
+
616
+ function syncLoginTarget(target: EventTarget | null): void {
617
+ if (target instanceof HTMLInputElement) {
618
+ if (target.name === "email") void loginForm.setValue("email", target.value);
619
+ if (target.name === "password") void loginForm.setValue("password", target.value);
620
+ }
621
+ }
622
+
623
+ export default function Page() {
624
+ const state = loginForm.state.get();
625
+
626
+ return (
627
+ <main class="mx-auto grid min-h-screen max-w-md content-center px-6">
628
+ <form
629
+ class="grid gap-4 rounded-lg border border-slate-800 bg-slate-900 p-6"
630
+ noValidate
631
+ onInput={(event) => syncLoginTarget(event.target)}
632
+ onSubmit={(event) => {
633
+ event.preventDefault();
634
+ void loginForm.validate();
635
+ }}
636
+ >
637
+ <h1 class="text-2xl font-semibold text-white">Login</h1>
638
+ <label class="grid gap-1 text-sm text-slate-300">
639
+ Email
640
+ <input class="rounded-md border border-slate-700 bg-slate-950 px-3 py-2" name="email" type="email" />
641
+ </label>
642
+ <label class="grid gap-1 text-sm text-slate-300">
643
+ Password
644
+ <input class="rounded-md border border-slate-700 bg-slate-950 px-3 py-2" name="password" type="password" />
645
+ </label>
646
+ <p class="text-sm text-rose-300">{state.errors.email?.[0] ?? state.errors.password?.[0] ?? ""}</p>
647
+ <button class="rounded-md bg-cyan-300 px-4 py-2 font-medium text-slate-950" type="submit">
648
+ Continue
649
+ </button>
650
+ </form>
651
+ </main>
652
+ );
653
+ }
654
+ `;
655
+ const dashboardSessionStoreSource = `import { createMemorySessionStore, type AuthSessionClaims } from "@reckona/mreact-auth";
656
+
657
+ export interface DashboardSessionData extends AuthSessionClaims {
658
+ roles: readonly string[];
659
+ userId: string;
660
+ }
661
+
662
+ const globalKey = "__mreactDashboardSessions";
663
+ const globalStore = globalThis as typeof globalThis & {
664
+ [globalKey]?: ReturnType<typeof createMemorySessionStore<DashboardSessionData>>;
665
+ };
666
+
667
+ export const sessions =
668
+ globalStore[globalKey] ??= createMemorySessionStore<DashboardSessionData>();
669
+ `;
670
+ const dashboardDevtoolsSource = `export async function mountDashboardDevtools(): Promise<void> {
671
+ if (!import.meta.env.DEV || typeof document === "undefined") {
672
+ return;
673
+ }
674
+
675
+ const { mountDevtoolsOverlay } = await import("@reckona/mreact-devtools/overlay");
676
+ mountDevtoolsOverlay();
677
+ }
678
+ `;
333
679
  const tailwindCssSource = `@import "tailwindcss";
334
680
  `;
335
681
  const cloudflareWorkerSource = `import {
@@ -369,9 +715,9 @@ export default {
369
715
  },
370
716
  };
371
717
  `;
372
- const awsLambdaHandlerSource = `import { createAwsLambdaRequestHandler } from "@reckona/mreact-router/adapters/aws-lambda";
718
+ const awsLambdaHandlerSource = `import { createPreloadedAwsLambdaRequestHandler } from "@reckona/mreact-router/adapters/aws-lambda";
373
719
 
374
- export const handler = createAwsLambdaRequestHandler({
720
+ export const handler = await createPreloadedAwsLambdaRequestHandler({
375
721
  outDir: new URL("../.mreact", import.meta.url).pathname,
376
722
  importPolicy: {
377
723
  // Add packages imported by loaders, middleware, route handlers, or server actions.
@@ -603,7 +949,7 @@ find .lambda -type f -printf '%s\\n' | awk '{ total += $1 } END { printf "actual
603
949
  Production adapters enforce the app-router import policy when bundling loaders, middleware, route handlers, metadata, and server actions. Add every npm package imported by server-side application code to \`importPolicy.allowedPackages\` in \`src/lambda.ts\`, including packages used through app-local helper modules. Those same packages must be present in the production \`node_modules\` copied into the Lambda artifact; \`importPolicy.allowedPackages\` permits imports, but it does not vendor missing dependencies.
604
950
 
605
951
  \`\`\`ts
606
- export const handler = createAwsLambdaRequestHandler({
952
+ export const handler = await createPreloadedAwsLambdaRequestHandler({
607
953
  outDir: new URL("../.mreact", import.meta.url).pathname,
608
954
  importPolicy: {
609
955
  allowedPackages: [
@@ -616,6 +962,8 @@ export const handler = createAwsLambdaRequestHandler({
616
962
  });
617
963
  \`\`\`
618
964
 
965
+ The generated handler uses top-level \`await\` with \`createPreloadedAwsLambdaRequestHandler()\` so the built runtime, middleware, route modules, layouts, and metadata are imported during the Lambda initialization phase instead of racing the first user request.
966
+
619
967
  ## Streaming SSR
620
968
 
621
969
  API Gateway and Lambda Function URL proxy responses are buffered. mreact still
@@ -671,6 +1019,9 @@ function readmeSource(name, packageManager, options) {
671
1019
  : options.deploy === "aws-lambda"
672
1020
  ? "\nAWS Lambda deploy files are included. See `docs/deploy/aws-lambda.md`.\n"
673
1021
  : "";
1022
+ const dashboardNote = options.dashboard
1023
+ ? "\nThis is the dashboard starter. It includes auth guards, form state, query cache hydration, Tailwind styling, and an opt-in devtools overlay helper in `src/devtools.ts`.\n"
1024
+ : "";
674
1025
  const pnpmTroubleshooting = packageManager === "pnpm"
675
1026
  ? `
676
1027
  ## Troubleshooting
@@ -689,6 +1040,6 @@ mreact app-router project generated by \`@reckona/create-mreact-app\`.
689
1040
  - \`${run} dev\`
690
1041
  - \`${run} build\`
691
1042
  - \`${run} start\`
692
- ${tailwindNote}${cloudflareNote}${deployNote}${pnpmTroubleshooting}`;
1043
+ ${tailwindNote}${cloudflareNote}${deployNote}${dashboardNote}${pnpmTroubleshooting}`;
693
1044
  }
694
1045
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@reckona/create-mreact-app",
3
- "version": "0.0.16",
3
+ "version": "0.0.18",
4
4
  "description": "Project scaffolder for mreact app-router applications.",
5
5
  "keywords": [
6
6
  "cli",