@celsian/vura-cli 0.2.0 → 0.4.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/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 Vura contributors
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md CHANGED
@@ -1,33 +1,52 @@
1
1
  # @celsian/vura-cli
2
2
 
3
- CLI for Vura — develop and build Vura applications.
3
+ CLI for [Vura](https://vura.io) — develop, build, and run tasks for Vura applications.
4
+
5
+ [![npm version](https://img.shields.io/npm/v/@celsian/vura-cli)](https://www.npmjs.com/package/@celsian/vura-cli)
6
+
7
+ ## What it does
8
+
9
+ `@celsian/vura-cli` provides the `vura` command for developing and building Vura projects. It scans routes, starts the Vite dev server with API middleware, bundles for production, and lets you run task routes by name from the terminal. `vura deploy` is reserved for the managed Vura Platform and intentionally fails closed in the OSS CLI — use an adapter (`adapter-lambda`, `adapter-cloudflare`) to self-host. The package was historically named `then`/`thenjs`; the only installed bin is `vura`.
4
10
 
5
11
  ## Install
6
12
 
7
- ```bash
8
- npm install -g @celsian/vura-cli
13
+ Installed automatically by `npm create vura@latest`. For manual use:
14
+
15
+ ```sh
16
+ npm install @celsian/vura-cli
9
17
  ```
10
18
 
11
- Or use via npx:
19
+ ## Minimal example
20
+
21
+ **package.json** scripts:
12
22
 
13
- ```bash
14
- npx vura --help
23
+ ```json
24
+ {
25
+ "scripts": {
26
+ "dev": "vura dev",
27
+ "build": "vura build"
28
+ }
29
+ }
15
30
  ```
16
31
 
17
- ## Commands
32
+ Run a task route by name without a live server:
18
33
 
19
- - `vura dev` — Start development server with hot reload
20
- - `vura build` Build for production
34
+ ```sh
35
+ vura tasks run cleanup
36
+ # with input JSON:
37
+ vura tasks run cleanup --input '{"dryRun":true}'
38
+ ```
21
39
 
22
- ## Quick Start
40
+ (`then` is a shell reserved word — use `vura` in all scripts.)
23
41
 
24
- ```bash
25
- npx create-vura my-app
26
- cd my-app
27
- npm install
28
- npx vura dev
29
- ```
42
+ ## Documentation
43
+
44
+ _vura.io docs site launches with v0.5 — until then, see the repo README and CHANGELOG._
45
+
46
+ - [Quick start — /ladder/0-create/](https://vura.io/ladder/0-create/)
47
+ - [Task routes — /reference/tasks/](https://vura.io/reference/tasks/)
48
+ - [Self-host — /self-host/](https://vura.io/self-host/)
30
49
 
31
50
  ## License
32
51
 
33
- MIT
52
+ MIT — and [it will stay MIT](https://github.com/CelsianJs/vura/blob/main/GOVERNANCE.md).
package/dist/bin.js CHANGED
File without changes
@@ -9,6 +9,7 @@
9
9
  * 6. Render static pages (mode: 'static')
10
10
  * 7. Run adapter.buildEnd() if configured
11
11
  * 8. Write manifest.json
12
+ * 9. Emit hot deploy templates (Dockerfile, fly.toml, package.json) when hot routes present
12
13
  */
13
14
  export declare function buildCommand(_args: string[]): Promise<void>;
14
15
  //# sourceMappingURL=build.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"build.d.ts","sourceRoot":"","sources":["../../src/commands/build.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAUH,wBAAsB,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAuRjE"}
1
+ {"version":3,"file":"build.d.ts","sourceRoot":"","sources":["../../src/commands/build.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAqGH,wBAAsB,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CA8TjE"}
@@ -9,13 +9,91 @@
9
9
  * 6. Render static pages (mode: 'static')
10
10
  * 7. Run adapter.buildEnd() if configured
11
11
  * 8. Write manifest.json
12
+ * 9. Emit hot deploy templates (Dockerfile, fly.toml, package.json) when hot routes present
12
13
  */
13
- import { buildManifest, build, renderStaticPages } from '@celsian/vura-core';
14
+ import { buildManifest, build, renderStaticPages, generateClientPageEntry } from '@celsian/vura-core';
14
15
  import { createRequire } from 'node:module';
15
16
  import { Buffer } from 'node:buffer';
16
17
  import { loadConfig } from '../config-loader.js';
18
+ // ---------------------------------------------------------------------------
19
+ // Deploy template strings — inlined so they survive tsc compilation (tsc does
20
+ // not copy non-TS assets). Emitted by emitHotDeployTemplates() when hot
21
+ // routes are detected.
22
+ // ---------------------------------------------------------------------------
23
+ // NOTE: Both files are regenerated by `vura build` — hand-edits will be overwritten.
24
+ //
25
+ // Dockerfile context is the dist/ directory itself.
26
+ // docker build -f dist/Dockerfile dist
27
+ //
28
+ // fly.toml deploy flow (flyctl resolves fly.toml from the given directory and
29
+ // uses that directory as the Docker build context):
30
+ // fly deploy ./dist
31
+ const DOCKERFILE_HOT = `\
32
+ # Generated by vura build — hand-edits will be overwritten on next build.
33
+ # Build context must be the dist/ directory:
34
+ # docker build -f dist/Dockerfile dist
35
+ FROM node:22-slim
36
+ WORKDIR /app
37
+ COPY package.json ./
38
+ RUN npm install --omit=dev --no-audit --no-fund
39
+ COPY . ./
40
+ ENV NODE_ENV=production PORT=3000
41
+ EXPOSE 3000
42
+ CMD ["node", "server/entry.js"]
43
+ `;
44
+ const FLY_TOML_TMPL = `\
45
+ # Generated by vura build — hand-edits will be overwritten on next build.
46
+ # Deploy with: fly deploy ./dist
47
+ # (flyctl picks up this fly.toml from ./dist and uses ./dist as build context)
48
+ app = "{{APP_NAME}}"
49
+ kill_signal = "SIGTERM"
50
+ kill_timeout = "30s"
51
+
52
+ [build]
53
+ dockerfile = "Dockerfile"
54
+
55
+ [http_service]
56
+ internal_port = 3000
57
+ force_https = true
58
+ # auto_stop_machines is off because hot routes hold in-memory websocket state
59
+ auto_stop_machines = "off"
60
+ min_machines_running = 1
61
+ `;
17
62
  const nativeImport = (specifier) => import(/* @vite-ignore */ specifier);
18
63
  const moduleSourceToDataUrl = (source) => `data:text/javascript;base64,${Buffer.from(source).toString('base64')}`;
64
+ /**
65
+ * Emit Dockerfile and fly.toml into dist/ when the project has hot routes.
66
+ * Also writes/merges dist/package.json so that `npm install --omit=dev` in the
67
+ * Docker build pulls the right runtime deps (ws when WS routes are present).
68
+ */
69
+ async function emitHotDeployTemplates(distDir, appName, hasWsRoutes) {
70
+ const { writeFile, readFile, mkdir } = await import('node:fs/promises');
71
+ const { existsSync } = await import('node:fs');
72
+ const { join } = await import('node:path');
73
+ await mkdir(distDir, { recursive: true });
74
+ // Dockerfile
75
+ await writeFile(join(distDir, 'Dockerfile'), DOCKERFILE_HOT, 'utf8');
76
+ // fly.toml — replace {{APP_NAME}} placeholder
77
+ const flyToml = FLY_TOML_TMPL.replace('{{APP_NAME}}', appName);
78
+ await writeFile(join(distDir, 'fly.toml'), flyToml, 'utf8');
79
+ // dist/package.json — create or merge
80
+ const pkgPath = join(distDir, 'package.json');
81
+ let existing = {};
82
+ if (existsSync(pkgPath)) {
83
+ try {
84
+ existing = JSON.parse(await readFile(pkgPath, 'utf8'));
85
+ }
86
+ catch {
87
+ console.warn(' Warning: dist/package.json is malformed JSON — regenerating from scratch.');
88
+ }
89
+ }
90
+ const merged = { ...existing, type: 'module' };
91
+ if (hasWsRoutes) {
92
+ const existingDeps = existing.dependencies ?? {};
93
+ merged.dependencies = { ...existingDeps, ws: '8.18.0' };
94
+ }
95
+ await writeFile(pkgPath, JSON.stringify(merged, null, 2) + '\n', 'utf8');
96
+ }
19
97
  export async function buildCommand(_args) {
20
98
  const startTime = Date.now();
21
99
  const projectRoot = process.cwd();
@@ -51,22 +129,26 @@ export async function buildCommand(_args) {
51
129
  catch {
52
130
  console.log(' Using built-in JSX runtime');
53
131
  }
54
- // Plugin to help esbuild resolve ESM-only package exports
132
+ // Plugin to help esbuild resolve ESM-only package exports.
133
+ // Searches from the project root first (the user's installed copy), then
134
+ // from the CLI's own location (monorepo/test environments).
135
+ const { fileURLToPath } = await import('node:url');
136
+ const { dirname: pathDirname } = await import('node:path');
137
+ const cliDir = pathDirname(fileURLToPath(import.meta.url));
55
138
  function findNodeModules(pkg) {
56
- let pkgDir = join(root, 'node_modules', pkg);
57
- if (existsSync(pkgDir))
58
- return pkgDir;
59
- let dir = root;
60
- for (let depth = 0; depth < 5; depth++) {
61
- const parent = resolve(dir, '..');
62
- if (parent === dir)
63
- break;
64
- dir = parent;
65
- const candidate = join(dir, 'node_modules', pkg);
66
- if (existsSync(candidate))
67
- return candidate;
139
+ for (const base of [root, cliDir]) {
140
+ let dir = base;
141
+ for (let depth = 0; depth < 10; depth++) {
142
+ const candidate = join(dir, 'node_modules', pkg);
143
+ if (existsSync(candidate))
144
+ return candidate;
145
+ const parent = resolve(dir, '..');
146
+ if (parent === dir)
147
+ break;
148
+ dir = parent;
149
+ }
68
150
  }
69
- return pkgDir;
151
+ return join(root, 'node_modules', pkg);
70
152
  }
71
153
  const esmResolvePlugin = {
72
154
  name: 'esm-resolve',
@@ -79,6 +161,16 @@ export async function buildCommand(_args) {
79
161
  return { path: cliRequire.resolve(args.path) };
80
162
  }
81
163
  });
164
+ // Bare what-framework/what-core imports (the generated client entry
165
+ // imports { h, mount, hydrate } from 'what-framework'). The exports map
166
+ // is import-condition-only, so require.resolve can't find it — resolve
167
+ // to the package's ESM source entry directly.
168
+ build.onResolve({ filter: /^what-(framework|core)$/ }, (args) => {
169
+ const candidate = join(findNodeModules(args.path), 'src', 'index.js');
170
+ if (existsSync(candidate))
171
+ return { path: candidate };
172
+ return null; // fall through to esbuild's default resolution
173
+ });
82
174
  build.onResolve({ filter: /^what-(framework|core)\// }, (args) => {
83
175
  const parts = args.path.split('/');
84
176
  const pkg = parts[0];
@@ -159,20 +251,30 @@ export async function buildCommand(_args) {
159
251
  }
160
252
  }
161
253
  }
162
- // 3c. Bundle browser page modules for client and hybrid pages.
254
+ // 3c. Bundle browser entries for client and hybrid pages.
255
+ // Each bundle is a generated wrapper (generateClientPageEntry) that imports
256
+ // the page module and calls mount() (client) / hydrate() (hybrid) — bundling
257
+ // the raw page module alone leaves the shell at "Loading..." forever because
258
+ // nothing ever boots the component.
163
259
  const browserPages = manifest.pages.filter(p => p.mode === 'client' || p.mode === 'hybrid');
164
260
  const clientScripts = {};
165
261
  if (browserPages.length > 0) {
166
- console.log(` Bundling ${browserPages.length} browser page modules...`);
262
+ console.log(` Bundling ${browserPages.length} browser page entries...`);
167
263
  const clientPagesDir = join(root, 'dist', 'static', '_then', 'pages');
168
264
  await mkdir(clientPagesDir, { recursive: true });
265
+ const { dirname, basename } = await import('node:path');
169
266
  for (const page of browserPages) {
170
267
  const absPath = resolve(root, page.filePath);
171
268
  const outFile = page.filePath.replace(/^src\/pages\//, '').replace(/\.(tsx|jsx|ts|js)$/, '.js');
172
269
  const outPath = join(clientPagesDir, outFile);
173
270
  await mkdir(join(outPath, '..'), { recursive: true });
174
271
  await esbuild({
175
- entryPoints: [absPath],
272
+ stdin: {
273
+ contents: generateClientPageEntry(`./${basename(absPath)}`, page.mode),
274
+ resolveDir: dirname(absPath),
275
+ sourcefile: '__vura-client-entry__.js',
276
+ loader: 'js',
277
+ },
176
278
  bundle: true,
177
279
  format: 'esm',
178
280
  target: 'es2022',
@@ -249,6 +351,19 @@ export async function buildCommand(_args) {
249
351
  if (config.adapter) {
250
352
  console.log(` Adapter: ${config.adapter.name}`);
251
353
  }
354
+ // 9. Emit hot deploy templates when the project has hot routes
355
+ const hotRoutes = manifest.api.filter(r => r.kind === 'hot');
356
+ if (hotRoutes.length > 0) {
357
+ const { basename } = await import('node:path');
358
+ const rawName = basename(root);
359
+ // sanitize to lowercase [a-z0-9-], truncate to Fly's ~30-char DNS label limit,
360
+ // then strip any trailing dashes introduced by truncation
361
+ const appName = rawName.toLowerCase().replace(/[^a-z0-9-]+/g, '-').replace(/^-+|-+$/g, '').slice(0, 30).replace(/-+$/, '') || 'vura-app';
362
+ const hasWsRoutes = hotRoutes.some(r => r.hasWebsocket === true);
363
+ const distDir = join(root, 'dist');
364
+ await emitHotDeployTemplates(distDir, appName, hasWsRoutes);
365
+ console.log(` Emitted dist/Dockerfile, dist/fly.toml, dist/package.json (app: ${appName}${hasWsRoutes ? ', ws: true' : ''})`);
366
+ }
252
367
  const elapsed = Date.now() - startTime;
253
368
  console.log(`\n Build complete in ${elapsed}ms\n`);
254
369
  // Print route table
@@ -1 +1 @@
1
- {"version":3,"file":"build.js","sourceRoot":"","sources":["../../src/commands/build.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"build.js","sourceRoot":"","sources":["../../src/commands/build.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"dev.d.ts","sourceRoot":"","sources":["../../src/commands/dev.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAiCH,UAAU,UAAU;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,WAAW,GAAE,MAAsB,GAAG,UAAU,CAQ/F;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAElD;AAED,KAAK,gBAAgB,GAAG;IACtB,aAAa,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;CACnC,CAAC;AAOF,wBAAgB,4BAA4B,CAC1C,OAAO,EAAE,gBAAgB,EACzB,aAAa,EAAE,MAAM,GAAG,SAAS,EACjC,GAAG,GAAE;IAAE,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAgB,GAClE,OAAO,CAWT;AAwCD,wBAAsB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAgD9D"}
1
+ {"version":3,"file":"dev.d.ts","sourceRoot":"","sources":["../../src/commands/dev.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AA6BH,UAAU,UAAU;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,WAAW,GAAE,MAAsB,GAAG,UAAU,CAQ/F;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAElD;AAED,KAAK,gBAAgB,GAAG;IACtB,aAAa,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;CACnC,CAAC;AAOF,wBAAgB,4BAA4B,CAC1C,OAAO,EAAE,gBAAgB,EACzB,aAAa,EAAE,MAAM,GAAG,SAAS,EACjC,GAAG,GAAE;IAAE,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAgB,GAClE,OAAO,CAWT;AAwCD,wBAAsB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAgD9D"}
@@ -12,7 +12,9 @@
12
12
  * vura dev — Start dev server on port 3000
13
13
  * vura dev --port 8080 — Start on custom port
14
14
  */
15
- import { buildManifest, matchRoute, compileRoutes, compilePageRoutes, matchPageRoute, getLogger, builtinRenderToString, wrapDocument, escapeHtml, parseNodeBody, executeWithHooks, finalizeNodeHandlerResult, createHookRegistry, validateRequest, reportError, formatErrorResponse, HttpError, getMimeType, } from '@celsian/vura-core';
15
+ import { renderToString as builtinRenderToString } from 'what-framework/server';
16
+ import { importRouteModule } from './shared.js';
17
+ import { buildManifest, compilePageRoutes, matchPageRoute, compileRoutes, matchApiPath, getLogger, wrapDocument, escapeHtml, parseNodeBody, reportError, getMimeType, createApiApp, GLOBAL_HOOKS_FILENAMES, nodeToWebRequest, writeWebResponse, generateClientPageEntry, } from '@celsian/vura-core';
16
18
  export function parseDevOptions(args, projectRoot = process.cwd()) {
17
19
  const portArg = args.find((_, i) => args[i - 1] === '--port');
18
20
  const hostArg = args.find((_, i) => args[i - 1] === '--host');
@@ -146,48 +148,106 @@ function printRouteTable(manifest) {
146
148
  async function startStandaloneServer(manifest, opts) {
147
149
  const { createServer } = await import('node:http');
148
150
  const { watch } = await import('node:fs');
149
- const { readFile: readFileAsync, writeFile: writeFileAsync, mkdir: mkdirAsync } = await import('node:fs/promises');
150
- const { join, resolve } = await import('node:path');
151
- const { pathToFileURL } = await import('node:url');
152
- const { build: esbuild } = await import('esbuild');
153
- const tmpDir = join(opts.projectRoot, 'node_modules', '.then-dev-cache');
154
- await mkdirAsync(tmpDir, { recursive: true });
155
- // Determine JSX import source
156
- let jsxImportSource = '@celsian/vura-core';
157
- try {
158
- // @ts-ignore — optional dependency
159
- await import('what-framework/jsx-runtime');
160
- jsxImportSource = 'what-framework';
161
- }
162
- catch { }
151
+ const { join } = await import('node:path');
152
+ // Thin wrapper so call-sites inside this function keep the same shape
163
153
  async function loadHandler(filePath) {
164
- const absPath = resolve(opts.projectRoot, filePath);
165
- const isPage = filePath.endsWith('.tsx') || filePath.endsWith('.jsx');
154
+ return importRouteModule(opts.projectRoot, filePath);
155
+ }
156
+ const logger = getLogger();
157
+ const { existsSync } = await import('node:fs');
158
+ function findGlobalHooksFile() {
159
+ for (const filename of GLOBAL_HOOKS_FILENAMES) {
160
+ if (existsSync(join(opts.projectRoot, filename)))
161
+ return filename;
162
+ }
163
+ return null;
164
+ }
165
+ /**
166
+ * Build a CelsianApp from the current manifest by loading each non-task route
167
+ * module via esbuild + dynamic import. Called on startup and on file changes.
168
+ */
169
+ async function buildStandaloneApiApp() {
170
+ const routes = [];
171
+ for (const route of manifest.api) {
172
+ if (route.kind === 'task')
173
+ continue;
174
+ const mod = await loadHandler(route.filePath);
175
+ routes.push({ ...route, module: mod });
176
+ }
177
+ let globalHooks;
178
+ const hooksFile = findGlobalHooksFile();
179
+ if (hooksFile) {
180
+ const hooksMod = await loadHandler(hooksFile);
181
+ const normalize = (v) => v == null ? [] : Array.isArray(v) ? v : [v];
182
+ globalHooks = {
183
+ onRequest: normalize(hooksMod.onRequest),
184
+ onError: normalize(hooksMod.onError),
185
+ onResponse: normalize(hooksMod.onResponse),
186
+ };
187
+ }
188
+ // Inject a dev-only onError hook (appended after any user hooks) that prints
189
+ // handler errors to the terminal via reportError so they aren't swallowed by
190
+ // celsian's logger:false + 500 JSON response.
191
+ const devErrorHook = (err, req, _reply) => {
192
+ const path = req?.url ?? req?.raw?.url ?? '(unknown path)';
193
+ const error = err instanceof Error ? err : new Error(String(err));
194
+ reportError(error, { method: 'handler', path }, logger);
195
+ };
196
+ const mergedHooks = {
197
+ onRequest: globalHooks?.onRequest ?? [],
198
+ // Append dev hook after user hooks — never clobbers user hooks.
199
+ onError: [...(globalHooks?.onError ?? []), devErrorHook],
200
+ onResponse: globalHooks?.onResponse ?? [],
201
+ };
202
+ // Compile route regexes for the path-existence pre-check (method-agnostic).
203
+ const compiledApiRoutes = compileRoutes(routes);
204
+ return { app: createApiApp({ routes, globalHooks: mergedHooks }), compiledApiRoutes };
205
+ }
206
+ // Build initial CelsianApp and page route table
207
+ let { app: apiApp, compiledApiRoutes } = await buildStandaloneApiApp();
208
+ // In dev mode, compile ALL page routes — not just server/hybrid.
209
+ // Static and server pages are SSR'd on the fly; client pages are served as
210
+ // a shell + on-demand browser bundle (SSR'ing them would run hooks like
211
+ // useSignal outside a component context and throw).
212
+ let compiledPages = compilePageRoutes(manifest.pages);
213
+ // ── Browser page bundles (client/hybrid) — on-demand esbuild, dev cache ──
214
+ const browserScriptPath = (page) => '/_then/pages/' + page.filePath.replace(/^src\/pages\//, '').replace(/\.(tsx|jsx|ts|js)$/, '.js');
215
+ const browserBundleCache = new Map();
216
+ async function bundleBrowserPage(page) {
217
+ const cached = browserBundleCache.get(page.filePath);
218
+ if (cached !== undefined)
219
+ return cached;
220
+ const { build: esbuild } = await import('esbuild');
221
+ const { dirname, basename, resolve } = await import('node:path');
222
+ const absPath = resolve(opts.projectRoot, page.filePath);
223
+ let jsxImportSource = '@celsian/vura-core';
224
+ try {
225
+ // @ts-ignore — optional peer dep
226
+ await import('what-framework/jsx-runtime');
227
+ jsxImportSource = 'what-framework';
228
+ }
229
+ catch { /* not installed — keep default */ }
166
230
  const result = await esbuild({
167
- entryPoints: [absPath],
231
+ stdin: {
232
+ contents: generateClientPageEntry(`./${basename(absPath)}`, page.mode),
233
+ resolveDir: dirname(absPath),
234
+ sourcefile: '__vura-client-entry__.js',
235
+ loader: 'js',
236
+ },
168
237
  bundle: true,
169
238
  format: 'esm',
170
239
  target: 'es2022',
171
- platform: 'node',
240
+ platform: 'browser',
172
241
  write: false,
173
- outfile: 'handler.mjs',
174
- ...(isPage ? { jsx: 'automatic', jsxImportSource } : {}),
242
+ outfile: 'page.js',
243
+ jsx: 'automatic',
244
+ jsxImportSource,
245
+ nodePaths: [join(opts.projectRoot, 'node_modules')],
175
246
  });
176
- const hash = Date.now().toString(36);
177
- const outPath = join(tmpDir, `${filePath.replace(/[/\\:]/g, '_')}_${hash}.mjs`);
178
- await writeFileAsync(outPath, result.outputFiles[0].text);
179
- return import(pathToFileURL(outPath).href);
247
+ const text = result.outputFiles[0].text;
248
+ browserBundleCache.set(page.filePath, text);
249
+ return text;
180
250
  }
181
- const logger = getLogger();
182
- // Hook registry for the dev server — routes can register hooks via exports
183
- const hookRegistry = createHookRegistry();
184
- hookRegistry.setLogger(logger);
185
- // Pre-compile route regexes at startup — recompiled only on file change
186
- let compiledRoutes = compileRoutes(manifest.api);
187
- // In dev mode, compile ALL page routes — not just server/hybrid.
188
- // Static and client pages also need on-the-fly SSR rendering during development
189
- // because there's no Vite to serve them as static assets.
190
- let compiledPages = compilePageRoutes(manifest.pages);
191
251
  const server = createServer(async (req, res) => {
192
252
  const url = new URL(req.url ?? '/', `http://${req.headers.host}`);
193
253
  const method = (req.method ?? 'GET').toUpperCase();
@@ -307,74 +367,53 @@ async function startStandaloneServer(manifest, opts) {
307
367
  }));
308
368
  return;
309
369
  }
310
- // Try API route matching (uses pre-compiled regexes)
311
- const match = matchRoute(compiledRoutes, method, url.pathname);
312
- if (match) {
313
- const mod = await loadHandler(match.route.filePath);
314
- const handlerFn = mod[method];
315
- if (typeof handlerFn !== 'function') {
316
- res.writeHead(405, { 'Content-Type': 'application/json' });
317
- res.end(JSON.stringify({ error: `Method ${method} not exported` }));
318
- return;
319
- }
320
- const body = await parseNodeBody(req);
321
- const cReq = {
322
- method,
323
- url: url.pathname,
324
- headers: req.headers,
325
- params: match.params,
326
- query: Object.fromEntries(url.searchParams.entries()),
327
- body,
328
- parsedBody: body,
329
- };
330
- let statusCode = 200;
331
- const headers = { 'content-type': 'application/json' };
332
- const cReply = {
333
- status(code) { statusCode = code; return cReply; },
334
- header(name, value) { headers[name] = value; return cReply; },
335
- json(data) {
336
- res.writeHead(statusCode, headers);
337
- res.end(JSON.stringify(data));
338
- return null;
339
- },
340
- send(data) {
341
- res.writeHead(statusCode, headers);
342
- res.end(data);
343
- return null;
344
- },
345
- redirect(url, status) {
346
- res.writeHead(status || 302, { 'location': url });
347
- res.end('Redirecting to ' + url);
348
- return null;
349
- },
350
- };
351
- // Extract route-level hooks if the module exports them
352
- const routeHooks = mod.hooks;
353
- // Validate request if route exports a schema
354
- if (mod.schema) {
355
- const validationError = validateRequest(cReq, mod.schema);
356
- if (validationError) {
357
- res.writeHead(validationError.statusCode, { 'content-type': 'application/json' });
358
- res.end(JSON.stringify(validationError.body));
370
+ // Try API route matching via CelsianApp.handle (A1.3 dev/prod parity)
371
+ if (url.pathname.startsWith('/api/') || url.pathname.startsWith('/__vura/')) {
372
+ // Route-existence pre-check (method-agnostic): if no manifest API route
373
+ // pattern matches this pathname, skip celsian entirely and fall through to
374
+ // pages/404. This also correctly passes through intentional handler 404s —
375
+ // if the route exists but returns 404, that response is delivered as-is.
376
+ if (matchApiPath(compiledApiRoutes, url.pathname)) {
377
+ try {
378
+ const webReq = nodeToWebRequest(req, url);
379
+ const webRes = await apiApp.handle(webReq);
380
+ // A matched route's response is always delivered — including intentional
381
+ // 404s from the handler. The pre-check above guarantees the route exists.
382
+ await writeWebResponse(res, webRes);
383
+ return;
384
+ }
385
+ catch (err) {
386
+ const error = err instanceof Error ? err : new Error(String(err));
387
+ reportError(error, { method, path: url.pathname, requestId: reqCtx.requestId }, logger);
388
+ if (!res.writableEnded) {
389
+ res.writeHead(500, { 'Content-Type': 'application/json' });
390
+ res.end(JSON.stringify({ error: error.message }));
391
+ }
359
392
  return;
360
393
  }
361
394
  }
362
- // Execute handler with full hook lifecycle
363
- const result = await executeWithHooks(hookRegistry, cReq, cReply, async () => {
364
- return handlerFn(cReq, cReply);
365
- }, routeHooks);
366
- // If hooks/handler errored and response wasn't sent, send structured error
367
- if (result.hadError && !res.writableEnded) {
368
- const error = new HttpError(result.statusCode, 'HANDLER_ERROR', 'Internal Server Error');
369
- const { statusCode: errStatus, body: errBody } = formatErrorResponse(error, 'development');
370
- reportError(error, { method, path: url.pathname, requestId: reqCtx.requestId }, logger);
371
- res.writeHead(errStatus, { 'content-type': 'application/json' });
372
- res.end(JSON.stringify(errBody));
373
- }
374
- if (!result.hadError) {
375
- await finalizeNodeHandlerResult(result.result, res, { statusCode, headers });
395
+ // No manifest route matched fall through to pages/404.
396
+ }
397
+ // Serve on-demand browser bundles for client/hybrid pages (mirrors the
398
+ // production /_then/pages/*.js layout emitted by `vura build`).
399
+ if (method === 'GET' && url.pathname.startsWith('/_then/pages/') && url.pathname.endsWith('.js')) {
400
+ const target = manifest.pages.find(p => (p.mode === 'client' || p.mode === 'hybrid') && browserScriptPath(p) === url.pathname);
401
+ if (target) {
402
+ try {
403
+ const code = await bundleBrowserPage(target);
404
+ res.writeHead(200, { 'Content-Type': 'text/javascript; charset=utf-8', 'Cache-Control': 'no-store' });
405
+ res.end(code);
406
+ }
407
+ catch (err) {
408
+ const error = err instanceof Error ? err : new Error(String(err));
409
+ reportError(error, { method: 'GET', path: url.pathname, requestId: reqCtx.requestId }, logger);
410
+ if (!res.writableEnded) {
411
+ res.writeHead(500, { 'Content-Type': 'text/javascript' });
412
+ res.end(`console.error(${JSON.stringify('[vura] client bundle failed: ' + error.message)});`);
413
+ }
414
+ }
415
+ return;
376
416
  }
377
- return;
378
417
  }
379
418
  // Try server-mode page matching (uses shared compilePageRoutes/matchPageRoute)
380
419
  if (method === 'GET' && !/\.\w+$/.test(url.pathname)) {
@@ -384,6 +423,21 @@ async function startStandaloneServer(manifest, opts) {
384
423
  const mod = await loadHandler(pageMatch.page.filePath);
385
424
  const Component = mod.default;
386
425
  const pageConfig = mod.page ?? {};
426
+ // Client pages render entirely in the browser: serve the shell +
427
+ // bundle. SSR'ing them here would call hooks (useSignal, useState)
428
+ // outside a component context and 500.
429
+ if (pageMatch.page.mode === 'client') {
430
+ const html = wrapDocument('<div id="loading">Loading...</div>', {
431
+ title: pageConfig.title ?? 'Vura App',
432
+ meta: pageConfig.meta ?? [],
433
+ styles: pageConfig.styles ?? [],
434
+ scripts: [...(pageConfig.scripts ?? []), browserScriptPath(pageMatch.page)],
435
+ head: pageConfig.head ?? '',
436
+ });
437
+ res.writeHead(200, { 'Content-Type': 'text/html; charset=utf-8' });
438
+ res.end(html);
439
+ return;
440
+ }
387
441
  if (typeof Component === 'function') {
388
442
  let serverData = {};
389
443
  if (typeof mod.getServerData === 'function') {
@@ -410,7 +464,12 @@ async function startStandaloneServer(manifest, opts) {
410
464
  title: pageConfig.title ?? 'Vura App',
411
465
  meta: pageConfig.meta ?? [],
412
466
  styles: pageConfig.styles ?? [],
413
- scripts: pageConfig.scripts ?? [],
467
+ // Hybrid pages also load their browser bundle so hydrate() runs
468
+ // against the SSR'd DOM — same contract as the production build.
469
+ scripts: [
470
+ ...(pageConfig.scripts ?? []),
471
+ ...(pageMatch.page.mode === 'hybrid' ? [browserScriptPath(pageMatch.page)] : []),
472
+ ],
414
473
  head: pageConfig.head ?? '',
415
474
  });
416
475
  res.writeHead(200, { 'Content-Type': 'text/html; charset=utf-8' });
@@ -443,10 +502,12 @@ async function startStandaloneServer(manifest, opts) {
443
502
  const watcher = watch(dir, { recursive: true }, async (event, filename) => {
444
503
  const prefix = dir === apiDir ? 'src/api' : 'src/pages';
445
504
  console.log(` [vura] ${event}: ${prefix}/${filename} — re-scanning routes`);
446
- const { buildManifest: rescan, compileRoutes: recompile, compilePageRoutes: recompilePages } = await import('@celsian/vura-core');
505
+ const { buildManifest: rescan, compilePageRoutes: recompilePages } = await import('@celsian/vura-core');
447
506
  manifest = await rescan(opts.projectRoot);
448
- compiledRoutes = recompile(manifest.api);
449
507
  compiledPages = recompilePages(manifest.pages);
508
+ browserBundleCache.clear();
509
+ // Rebuild CelsianApp and route regexes with fresh modules after manifest rescan
510
+ ({ app: apiApp, compiledApiRoutes } = await buildStandaloneApiApp());
450
511
  });
451
512
  process.on('SIGINT', () => { watcher.close(); process.exit(0); });
452
513
  }
@@ -467,7 +528,7 @@ async function startStandaloneServer(manifest, opts) {
467
528
  }
468
529
  // All rendering, matching, parsing, and escaping utilities are now imported
469
530
  // from @celsian/vura-core — no local copies needed. See:
470
- // builtinRenderToString, wrapDocument, escapeHtml — from static-render.ts
531
+ // wrapDocument, escapeHtml — from static-render.ts; renderToString — from what-framework/server
471
532
  // compilePageRoutes, matchPageRoute — from match.ts
472
- // parseNodeBodyfrom body-parser.ts
533
+ // createApiApp, nodeToWebRequest, writeWebResponse A1.3 celsian API path
473
534
  //# sourceMappingURL=dev.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"dev.js","sourceRoot":"","sources":["../../src/commands/dev.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dev.js","sourceRoot":"","sources":["../../src/commands/dev.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Shared helpers for CLI commands that need to load route module files
3
+ * (TypeScript/JSX) at runtime without a full Vite build.
4
+ *
5
+ * Extracted from commands/dev.ts (Task 12) so that the tasks command can reuse
6
+ * the same transpile-then-import flow without duplicating it.
7
+ */
8
+ /**
9
+ * Transpile a TypeScript/JSX route file via esbuild and import it as an ES
10
+ * module. Each call writes a uniquely-named `.mjs` file (keyed by wall-clock
11
+ * time) so repeated loads within the same process never collide.
12
+ *
13
+ * @param projectRoot Absolute path to the project root.
14
+ * @param filePath Path to the route file, relative to `projectRoot`.
15
+ * @returns The dynamically-imported module record.
16
+ */
17
+ export declare function importRouteModule(projectRoot: string, filePath: string): Promise<Record<string, unknown>>;
18
+ //# sourceMappingURL=shared.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../src/commands/shared.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAYH;;;;;;;;GAQG;AACH,wBAAsB,iBAAiB,CACrC,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAoClC"}
@@ -0,0 +1,57 @@
1
+ /**
2
+ * Shared helpers for CLI commands that need to load route module files
3
+ * (TypeScript/JSX) at runtime without a full Vite build.
4
+ *
5
+ * Extracted from commands/dev.ts (Task 12) so that the tasks command can reuse
6
+ * the same transpile-then-import flow without duplicating it.
7
+ */
8
+ import { mkdir, writeFile } from 'node:fs/promises';
9
+ import { join, resolve } from 'node:path';
10
+ import { pathToFileURL } from 'node:url';
11
+ /**
12
+ * Cache-dir relative to the project root — matches where dev.ts wrote its
13
+ * temporary modules so we don't litter multiple cache dirs.
14
+ */
15
+ const DEV_CACHE_SUBPATH = join('node_modules', '.then-dev-cache');
16
+ /**
17
+ * Transpile a TypeScript/JSX route file via esbuild and import it as an ES
18
+ * module. Each call writes a uniquely-named `.mjs` file (keyed by wall-clock
19
+ * time) so repeated loads within the same process never collide.
20
+ *
21
+ * @param projectRoot Absolute path to the project root.
22
+ * @param filePath Path to the route file, relative to `projectRoot`.
23
+ * @returns The dynamically-imported module record.
24
+ */
25
+ export async function importRouteModule(projectRoot, filePath) {
26
+ const { build: esbuild } = await import('esbuild');
27
+ const absPath = resolve(projectRoot, filePath);
28
+ const isPage = filePath.endsWith('.tsx') || filePath.endsWith('.jsx');
29
+ // Determine JSX import source (mirrors dev.ts heuristic)
30
+ let jsxImportSource = '@celsian/vura-core';
31
+ try {
32
+ // @ts-ignore — optional peer dep
33
+ await import('what-framework/jsx-runtime');
34
+ jsxImportSource = 'what-framework';
35
+ }
36
+ catch {
37
+ // not installed — keep default
38
+ }
39
+ const result = await esbuild({
40
+ entryPoints: [absPath],
41
+ bundle: true,
42
+ format: 'esm',
43
+ target: 'es2022',
44
+ platform: 'node',
45
+ write: false,
46
+ outfile: 'handler.mjs',
47
+ ...(isPage ? { jsx: 'automatic', jsxImportSource } : {}),
48
+ });
49
+ const tmpDir = join(projectRoot, DEV_CACHE_SUBPATH);
50
+ await mkdir(tmpDir, { recursive: true });
51
+ const hash = Date.now().toString(36);
52
+ const safeName = filePath.replace(/[/\\:]/g, '_');
53
+ const outPath = join(tmpDir, `${safeName}_${hash}.mjs`);
54
+ await writeFile(outPath, result.outputFiles[0].text);
55
+ return import(pathToFileURL(outPath).href);
56
+ }
57
+ //# sourceMappingURL=shared.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shared.js","sourceRoot":"","sources":["../../src/commands/shared.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC;;;GAGG;AACH,MAAM,iBAAiB,GAAG,IAAI,CAAC,cAAc,EAAE,iBAAiB,CAAC,CAAC;AAElE;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,WAAmB,EACnB,QAAgB;IAEhB,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,CAAC;IAEnD,MAAM,OAAO,GAAG,OAAO,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;IAC/C,MAAM,MAAM,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IAEtE,yDAAyD;IACzD,IAAI,eAAe,GAAG,oBAAoB,CAAC;IAC3C,IAAI,CAAC;QACH,iCAAiC;QACjC,MAAM,MAAM,CAAC,4BAA4B,CAAC,CAAC;QAC3C,eAAe,GAAG,gBAAgB,CAAC;IACrC,CAAC;IAAC,MAAM,CAAC;QACP,+BAA+B;IACjC,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC;QAC3B,WAAW,EAAE,CAAC,OAAO,CAAC;QACtB,MAAM,EAAE,IAAI;QACZ,MAAM,EAAE,KAAK;QACb,MAAM,EAAE,QAAQ;QAChB,QAAQ,EAAE,MAAM;QAChB,KAAK,EAAE,KAAK;QACZ,OAAO,EAAE,aAAa;QACtB,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,WAAW,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACzD,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,EAAE,iBAAiB,CAAC,CAAC;IACpD,MAAM,KAAK,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAEzC,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IACrC,MAAM,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;IAClD,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,QAAQ,IAAI,IAAI,MAAM,CAAC,CAAC;IACxD,MAAM,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC,CAAE,CAAC,IAAI,CAAC,CAAC;IAEtD,OAAO,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,IAAI,CAAqC,CAAC;AACjF,CAAC"}
@@ -0,0 +1,26 @@
1
+ /**
2
+ * `vura tasks list|run <name>` — CLI interface for task routes.
3
+ *
4
+ * list Scan the project's task routes and print their names and schedules.
5
+ * run Invoke a task by name immediately, with optional JSON input, using
6
+ * the same runTaskOnce semantics as the server (retry + timeout).
7
+ *
8
+ * Exit-code seam: on failure (unknown task, handler throws, failed result)
9
+ * this command sets process.exitCode = 1 and returns normally — it never calls
10
+ * process.exit() directly. This lets vitest keep running while still signalling
11
+ * the right exit code to the shell via the CLI entry point.
12
+ */
13
+ /**
14
+ * Derive a human-readable task name from a manifest urlPattern.
15
+ * "/api/report" → "report"
16
+ * "/api/jobs/notify" → "jobs.notify"
17
+ */
18
+ export declare function taskNameFromPattern(urlPattern: string): string;
19
+ /**
20
+ * @param args CLI argument slice (everything after "tasks").
21
+ * @param projectRoot Override the project root — defaults to process.cwd().
22
+ * Exposed for testing so tests do not need process.chdir()
23
+ * (which is process-global and unsafe in concurrent workers).
24
+ */
25
+ export declare function tasksCommand(args: string[], projectRoot?: string): Promise<void>;
26
+ //# sourceMappingURL=tasks.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tasks.d.ts","sourceRoot":"","sources":["../../src/commands/tasks.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAQH;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAE9D;AAoFD;;;;;GAKG;AACH,wBAAsB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAoCtF"}
@@ -0,0 +1,130 @@
1
+ /**
2
+ * `vura tasks list|run <name>` — CLI interface for task routes.
3
+ *
4
+ * list Scan the project's task routes and print their names and schedules.
5
+ * run Invoke a task by name immediately, with optional JSON input, using
6
+ * the same runTaskOnce semantics as the server (retry + timeout).
7
+ *
8
+ * Exit-code seam: on failure (unknown task, handler throws, failed result)
9
+ * this command sets process.exitCode = 1 and returns normally — it never calls
10
+ * process.exit() directly. This lets vitest keep running while still signalling
11
+ * the right exit code to the shell via the CLI entry point.
12
+ */
13
+ import { buildManifest, runTaskOnce } from '@celsian/vura-core';
14
+ import { importRouteModule } from './shared.js';
15
+ // ─── Name helpers ────────────────────────────────────────────────────────────
16
+ /**
17
+ * Derive a human-readable task name from a manifest urlPattern.
18
+ * "/api/report" → "report"
19
+ * "/api/jobs/notify" → "jobs.notify"
20
+ */
21
+ export function taskNameFromPattern(urlPattern) {
22
+ return urlPattern.replace(/^\/api\//, '').replace(/\//g, '.');
23
+ }
24
+ // ─── Subcommands ─────────────────────────────────────────────────────────────
25
+ async function listTasks(projectRoot) {
26
+ const manifest = await buildManifest(projectRoot);
27
+ const taskRoutes = manifest.api.filter((r) => r.kind === 'task');
28
+ if (taskRoutes.length === 0) {
29
+ console.log(' No task routes found in src/api/');
30
+ return;
31
+ }
32
+ console.log('\n Task routes:\n');
33
+ for (const route of taskRoutes) {
34
+ const name = taskNameFromPattern(route.urlPattern);
35
+ const schedule = route.config.schedule;
36
+ const suffix = schedule ? ` (cron: ${schedule})` : '';
37
+ console.log(` ${name}${suffix}`);
38
+ }
39
+ console.log();
40
+ }
41
+ async function runTask(projectRoot, taskName, rawInput) {
42
+ const manifest = await buildManifest(projectRoot);
43
+ const taskRoutes = manifest.api.filter((r) => r.kind === 'task');
44
+ // Find matching route
45
+ const route = taskRoutes.find((r) => taskNameFromPattern(r.urlPattern) === taskName);
46
+ if (!route) {
47
+ const available = taskRoutes.map((r) => taskNameFromPattern(r.urlPattern));
48
+ console.error(` Unknown task: "${taskName}"`);
49
+ if (available.length > 0) {
50
+ console.error(` Available tasks: ${available.join(', ')}`);
51
+ }
52
+ else {
53
+ console.error(' No task routes found in src/api/');
54
+ }
55
+ process.exitCode = 1;
56
+ return;
57
+ }
58
+ // Parse input
59
+ let input = undefined;
60
+ if (rawInput !== undefined) {
61
+ try {
62
+ input = JSON.parse(rawInput);
63
+ }
64
+ catch {
65
+ console.error(` Invalid JSON for --input: ${rawInput}`);
66
+ process.exitCode = 1;
67
+ return;
68
+ }
69
+ }
70
+ // Load the module
71
+ const mod = await importRouteModule(projectRoot, route.filePath);
72
+ // Validate that POST is a function
73
+ if (typeof mod.POST !== 'function') {
74
+ console.error(` Task file "${route.filePath}" does not export a POST function`);
75
+ process.exitCode = 1;
76
+ return;
77
+ }
78
+ const result = await runTaskOnce({
79
+ name: taskName,
80
+ config: {
81
+ retries: typeof route.config.retries === 'number' ? route.config.retries : 0,
82
+ timeout: typeof route.config.timeout === 'number' ? route.config.timeout : 30_000,
83
+ },
84
+ handler: mod.POST,
85
+ }, { input });
86
+ console.log(JSON.stringify(result, null, 2));
87
+ if (result.status === 'failed') {
88
+ process.exitCode = 1;
89
+ }
90
+ }
91
+ // ─── Command entry ────────────────────────────────────────────────────────────
92
+ /**
93
+ * @param args CLI argument slice (everything after "tasks").
94
+ * @param projectRoot Override the project root — defaults to process.cwd().
95
+ * Exposed for testing so tests do not need process.chdir()
96
+ * (which is process-global and unsafe in concurrent workers).
97
+ */
98
+ export async function tasksCommand(args, projectRoot) {
99
+ const root = projectRoot ?? process.cwd();
100
+ const subcommand = args[0];
101
+ if (subcommand === 'list') {
102
+ await listTasks(root);
103
+ return;
104
+ }
105
+ if (subcommand === 'run') {
106
+ const taskName = args[1];
107
+ if (!taskName) {
108
+ console.error(' Usage: vura tasks run <name> [--input \'<json>\']');
109
+ process.exitCode = 1;
110
+ return;
111
+ }
112
+ // Parse --input flag
113
+ const inputFlagIdx = args.indexOf('--input');
114
+ if (inputFlagIdx !== -1 && args[inputFlagIdx + 1] === undefined) {
115
+ console.error(" --input requires a JSON value, e.g. --input '{\"day\":\"mon\"}'");
116
+ process.exitCode = 1;
117
+ return;
118
+ }
119
+ const rawInput = inputFlagIdx !== -1 ? args[inputFlagIdx + 1] : undefined;
120
+ await runTask(root, taskName, rawInput);
121
+ return;
122
+ }
123
+ // Unknown subcommand
124
+ console.error(` Unknown subcommand: vura tasks ${subcommand ?? ''}`);
125
+ console.error(' Usage:');
126
+ console.error(' vura tasks list');
127
+ console.error(" vura tasks run <name> [--input '<json>']");
128
+ process.exitCode = 1;
129
+ }
130
+ //# sourceMappingURL=tasks.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tasks.js","sourceRoot":"","sources":["../../src/commands/tasks.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAGH,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAEhD,gFAAgF;AAEhF;;;;GAIG;AACH,MAAM,UAAU,mBAAmB,CAAC,UAAkB;IACpD,OAAO,UAAU,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;AAChE,CAAC;AAED,gFAAgF;AAEhF,KAAK,UAAU,SAAS,CAAC,WAAmB;IAC1C,MAAM,QAAQ,GAAG,MAAM,aAAa,CAAC,WAAW,CAAC,CAAC;IAClD,MAAM,UAAU,GAAG,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC;IAEjE,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5B,OAAO,CAAC,GAAG,CAAC,oCAAoC,CAAC,CAAC;QAClD,OAAO;IACT,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;IAClC,KAAK,MAAM,KAAK,IAAI,UAAU,EAAE,CAAC;QAC/B,MAAM,IAAI,GAAG,mBAAmB,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QACnD,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,QAA8B,CAAC;QAC7D,MAAM,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,YAAY,QAAQ,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QACvD,OAAO,CAAC,GAAG,CAAC,OAAO,IAAI,GAAG,MAAM,EAAE,CAAC,CAAC;IACtC,CAAC;IACD,OAAO,CAAC,GAAG,EAAE,CAAC;AAChB,CAAC;AAED,KAAK,UAAU,OAAO,CAAC,WAAmB,EAAE,QAAgB,EAAE,QAA4B;IACxF,MAAM,QAAQ,GAAG,MAAM,aAAa,CAAC,WAAW,CAAC,CAAC;IAClD,MAAM,UAAU,GAAG,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC;IAEjE,sBAAsB;IACtB,MAAM,KAAK,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,mBAAmB,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,QAAQ,CAAC,CAAC;IACrF,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,mBAAmB,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;QAC3E,OAAO,CAAC,KAAK,CAAC,oBAAoB,QAAQ,GAAG,CAAC,CAAC;QAC/C,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACzB,OAAO,CAAC,KAAK,CAAC,sBAAsB,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC9D,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,KAAK,CAAC,oCAAoC,CAAC,CAAC;QACtD,CAAC;QACD,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;QACrB,OAAO;IACT,CAAC;IAED,cAAc;IACd,IAAI,KAAK,GAAY,SAAS,CAAC;IAC/B,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,IAAI,CAAC;YACH,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAC/B,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,CAAC,KAAK,CAAC,+BAA+B,QAAQ,EAAE,CAAC,CAAC;YACzD,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;YACrB,OAAO;QACT,CAAC;IACH,CAAC;IAED,kBAAkB;IAClB,MAAM,GAAG,GAAG,MAAM,iBAAiB,CAAC,WAAW,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;IAEjE,mCAAmC;IACnC,IAAI,OAAO,GAAG,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;QACnC,OAAO,CAAC,KAAK,CAAC,gBAAgB,KAAK,CAAC,QAAQ,mCAAmC,CAAC,CAAC;QACjF,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;QACrB,OAAO;IACT,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,WAAW,CAC9B;QACE,IAAI,EAAE,QAAQ;QACd,MAAM,EAAE;YACN,OAAO,EAAE,OAAO,KAAK,CAAC,MAAM,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;YAC5E,OAAO,EAAE,OAAO,KAAK,CAAC,MAAM,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM;SAClF;QACD,OAAO,EAAE,GAAG,CAAC,IAA6D;KAC3E,EACD,EAAE,KAAK,EAAE,CACV,CAAC;IAEF,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IAE7C,IAAI,MAAM,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC/B,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;IACvB,CAAC;AACH,CAAC;AAED,iFAAiF;AAEjF;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,IAAc,EAAE,WAAoB;IACrE,MAAM,IAAI,GAAG,WAAW,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IAC1C,MAAM,UAAU,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IAE3B,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;QAC1B,MAAM,SAAS,CAAC,IAAI,CAAC,CAAC;QACtB,OAAO;IACT,CAAC;IAED,IAAI,UAAU,KAAK,KAAK,EAAE,CAAC;QACzB,MAAM,QAAQ,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACzB,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,OAAO,CAAC,KAAK,CAAC,qDAAqD,CAAC,CAAC;YACrE,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;YACrB,OAAO;QACT,CAAC;QAED,qBAAqB;QACrB,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAC7C,IAAI,YAAY,KAAK,CAAC,CAAC,IAAI,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC;YAChE,OAAO,CAAC,KAAK,CAAC,mEAAmE,CAAC,CAAC;YACnF,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;YACrB,OAAO;QACT,CAAC;QACD,MAAM,QAAQ,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAE1E,MAAM,OAAO,CAAC,IAAI,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;QACxC,OAAO;IACT,CAAC;IAED,qBAAqB;IACrB,OAAO,CAAC,KAAK,CAAC,oCAAoC,UAAU,IAAI,EAAE,EAAE,CAAC,CAAC;IACtE,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IAC1B,OAAO,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;IACrC,OAAO,CAAC,KAAK,CAAC,8CAA8C,CAAC,CAAC;IAC9D,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;AACvB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAgBH,wBAAsB,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAgBvD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAkBH,wBAAsB,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAgBvD"}
package/dist/index.js CHANGED
@@ -9,12 +9,14 @@ import { manifestCommand } from './commands/manifest.js';
9
9
  import { deployCommand } from './commands/deploy.js';
10
10
  import { devCommand } from './commands/dev.js';
11
11
  import { adminCommand } from './commands/admin.js';
12
+ import { tasksCommand } from './commands/tasks.js';
12
13
  const COMMANDS = {
13
14
  build: buildCommand,
14
15
  manifest: manifestCommand,
15
16
  deploy: deployCommand,
16
17
  dev: devCommand,
17
18
  admin: adminCommand,
19
+ tasks: tasksCommand,
18
20
  };
19
21
  export async function run(args) {
20
22
  const command = args[0];
@@ -40,6 +42,9 @@ function printHelp() {
40
42
  deploy Explain managed deployment availability (not in OSS CLI yet)
41
43
  admin Launch the admin dashboard
42
44
  manifest Print the route manifest (debug)
45
+ tasks Manage and run task routes
46
+ vura tasks list
47
+ vura tasks run <name> [--input '<json>']
43
48
 
44
49
  Options:
45
50
  --help, -h Show this help message
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAEnD,MAAM,QAAQ,GAAsD;IAClE,KAAK,EAAE,YAAY;IACnB,QAAQ,EAAE,eAAe;IACzB,MAAM,EAAE,aAAa;IACrB,GAAG,EAAE,UAAU;IACf,KAAK,EAAE,YAAY;CACpB,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,GAAG,CAAC,IAAc;IACtC,MAAM,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IAExB,IAAI,CAAC,OAAO,IAAI,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QACzD,SAAS,EAAE,CAAC;QACZ,OAAO;IACT,CAAC;IAED,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC;IAClC,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,oBAAoB,OAAO,EAAE,CAAC,CAAC;QAC7C,SAAS,EAAE,CAAC;QACZ,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;AAC/B,CAAC;AAED,SAAS,SAAS;IAChB,OAAO,CAAC,GAAG,CAAC;;;;;;;;;;;;CAYb,CAAC,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAEnD,MAAM,QAAQ,GAAsD;IAClE,KAAK,EAAE,YAAY;IACnB,QAAQ,EAAE,eAAe;IACzB,MAAM,EAAE,aAAa;IACrB,GAAG,EAAE,UAAU;IACf,KAAK,EAAE,YAAY;IACnB,KAAK,EAAE,YAAY;CACpB,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,GAAG,CAAC,IAAc;IACtC,MAAM,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IAExB,IAAI,CAAC,OAAO,IAAI,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QACzD,SAAS,EAAE,CAAC;QACZ,OAAO;IACT,CAAC;IAED,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC;IAClC,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,oBAAoB,OAAO,EAAE,CAAC,CAAC;QAC7C,SAAS,EAAE,CAAC;QACZ,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;AAC/B,CAAC;AAED,SAAS,SAAS;IAChB,OAAO,CAAC,GAAG,CAAC;;;;;;;;;;;;;;;CAeb,CAAC,CAAC;AACH,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@celsian/vura-cli",
3
- "version": "0.2.0",
3
+ "version": "0.4.0",
4
4
  "description": "Vura CLI — build and deploy full-stack apps",
5
5
  "type": "module",
6
6
  "bin": {
@@ -13,14 +13,10 @@
13
13
  "bin.js",
14
14
  "dist"
15
15
  ],
16
- "scripts": {
17
- "build": "tsc -b",
18
- "dev": "tsc -b --watch",
19
- "prepack": "pnpm run build"
20
- },
21
16
  "dependencies": {
22
- "@celsian/vura-core": "workspace:0.2.0",
23
- "esbuild": "^0.27.3"
17
+ "@celsian/vura-core": "0.4.0",
18
+ "esbuild": "^0.27.3",
19
+ "what-framework": "^0.11.1"
24
20
  },
25
21
  "license": "MIT",
26
22
  "publishConfig": {
@@ -43,5 +39,9 @@
43
39
  ],
44
40
  "engines": {
45
41
  "node": ">=20 <23"
42
+ },
43
+ "scripts": {
44
+ "build": "tsc -b",
45
+ "dev": "tsc -b --watch"
46
46
  }
47
- }
47
+ }