blokd 0.1.0-beta.1 → 0.2.0-beta.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/dist/vite.js CHANGED
@@ -85,8 +85,8 @@ export function nearestSpecialFile(routesDir, file, name, extensions) {
85
85
  return null;
86
86
  }
87
87
  function isPrivateRouteFile(file) {
88
- const base = file.split(/[\\/]/).pop() ?? '';
89
- return base.startsWith('_layout.') || base.startsWith('_error.') || base.startsWith('_404.');
88
+ const parts = slash(file).split('/');
89
+ return parts.some(part => part.startsWith('_'));
90
90
  }
91
91
  function importPath(root, file) {
92
92
  return '/' + slash(relative(root, file));
@@ -98,41 +98,105 @@ const clientMarkers = [
98
98
  /\bmemo\s*\(/,
99
99
  /\beffect\s*\(/,
100
100
  /\bcleanup\s*\(/,
101
- /\bIsland\s*[({<]/,
101
+ /\bIsland\b/,
102
102
  /\bresumable\s*\(/,
103
+ /\bon\s*\(/,
104
+ /\bisland\s*\(/,
105
+ /\bclientComponent\s*\(/,
103
106
  /\bstartResumability\s*\(/
104
107
  ];
105
- function fileNeedsClient(file, extensions, visited = new Set()) {
108
+ function createClientAnalysis() {
109
+ return {
110
+ hasClient: false,
111
+ islands: new Set(),
112
+ refs: new Set(),
113
+ hasIslands: false,
114
+ hasNonIslandClient: false
115
+ };
116
+ }
117
+ function mergeClientAnalysis(target, source) {
118
+ target.hasClient ||= source.hasClient;
119
+ target.hasIslands ||= source.hasIslands;
120
+ target.hasNonIslandClient ||= source.hasNonIslandClient;
121
+ for (const island of source.islands)
122
+ target.islands.add(island);
123
+ for (const ref of source.refs)
124
+ target.refs.add(ref);
125
+ }
126
+ function analyzeClientFile(file, extensions, visited = new Set()) {
127
+ const analysis = createClientAnalysis();
106
128
  const normalized = resolve(file);
107
129
  if (visited.has(normalized) || !existsSync(normalized))
108
- return false;
130
+ return analysis;
109
131
  visited.add(normalized);
110
132
  let source = '';
111
133
  try {
112
134
  source = readFileSync(normalized, 'utf8');
113
135
  }
114
136
  catch {
115
- return false;
137
+ return analysis;
138
+ }
139
+ if (importsBlokdClient(source)) {
140
+ analysis.hasClient = true;
141
+ analysis.hasNonIslandClient = true;
116
142
  }
117
- if (importsBlokdClient(source))
118
- return true;
119
143
  const markerSource = stripCommentsAndStrings(source);
120
- if (clientMarkers.some(marker => marker.test(markerSource)))
121
- return true;
144
+ if (clientMarkers.some(marker => marker.test(markerSource))) {
145
+ analysis.hasClient = true;
146
+ collectClientMetadata(source, markerSource, analysis);
147
+ }
122
148
  const dir = dirname(normalized);
123
149
  const imports = source.matchAll(/(?:import|export)\s+(?:[^'"]*from\s+)?['"](\.\.?\/[^'"]+)['"]/g);
124
150
  for (const match of imports) {
125
151
  const target = resolveImport(dir, match[1], extensions);
126
- if (target && fileNeedsClient(target, extensions, visited))
127
- return true;
152
+ if (target)
153
+ mergeClientAnalysis(analysis, analyzeClientFile(target, extensions, visited));
128
154
  }
129
- return false;
155
+ return analysis;
156
+ }
157
+ function fileNeedsClient(file, extensions, visited = new Set()) {
158
+ return analyzeClientFile(file, extensions, visited).hasClient;
159
+ }
160
+ function collectClientMetadata(source, markerSource, analysis) {
161
+ if (/\bIsland\b/.test(markerSource)) {
162
+ analysis.hasIslands = true;
163
+ for (const match of source.matchAll(/<Island\b[^>]*\bname\s*=\s*(?:"([^"]+)"|'([^']+)'|\{\s*["']([^"']+)["']\s*\})/g)) {
164
+ analysis.islands.add(match[1] ?? match[2] ?? match[3] ?? 'unknown');
165
+ }
166
+ for (const match of source.matchAll(/\bIsland\s*\(\s*\{[^}]*\bname\s*:\s*["']([^"']+)["']/g)) {
167
+ analysis.islands.add(match[1]);
168
+ }
169
+ }
170
+ for (const match of source.matchAll(/\b(?:resumable|on)\s*\(\s*["']([^"']+)["']/g)) {
171
+ analysis.refs.add(match[1]);
172
+ }
173
+ const hasNonIslandMarker = [
174
+ /\bon[A-Za-z0-9_]*\s*=\s*\{\s*(?!(?:on|resumable)\s*\()/,
175
+ /\bsignal\s*\(/,
176
+ /\bmemo\s*\(/,
177
+ /\beffect\s*\(/,
178
+ /\bcleanup\s*\(/,
179
+ /\bclientComponent\s*\(/,
180
+ /\bstartResumability\s*\(/
181
+ ].some(marker => marker.test(markerSource));
182
+ if (hasNonIslandMarker)
183
+ analysis.hasNonIslandClient = true;
130
184
  }
131
185
  function importsBlokdClient(source) {
132
186
  return /^\s*import\s+[^'"]*from\s+['"]blokd\/client['"]/m.test(source)
133
187
  || /^\s*import\s+['"]blokd\/client['"]/m.test(source)
134
188
  || /^\s*export\s+[^'"]*from\s+['"]blokd\/client['"]/m.test(source);
135
189
  }
190
+ function isIslandFile(file) {
191
+ return /(^|[\\/])islands?[\\/]/.test(file) || /(^|[\\/]).+\.island\.[cm]?[jt]sx?$/.test(file);
192
+ }
193
+ function assertIslandFileSafe(file, source) {
194
+ if (!isIslandFile(file) || !/\bisland\s*\(/.test(stripCommentsAndStrings(source)))
195
+ return;
196
+ const blocked = source.match(/^\s*import\s+[^'"]*from\s+['"](node:[^'"]+|fs|node:fs|path|node:path|blokd\/server|blokd\/hono)['"]/m);
197
+ if (blocked)
198
+ throw new Error(`Blokd island file ${file} imports server-only module "${blocked[1]}". Move server-only code outside island files.`);
199
+ }
136
200
  function stripCommentsAndStrings(source) {
137
201
  let out = '';
138
202
  for (let i = 0; i < source.length; i++) {
@@ -199,36 +263,171 @@ function resolveImport(dir, specifier, extensions) {
199
263
  return null;
200
264
  }
201
265
  export function makeManifestCode(root, routesDir, extensions = ['.tsx', '.jsx', '.ts', '.js'], strictRoutes = true, analyzeClient = true) {
202
- const files = walkRoutes(routesDir, extensions)
203
- .filter(file => !isPrivateRouteFile(file))
204
- .sort((a, b) => fileToRoutePath(routesDir, a).localeCompare(fileToRoutePath(routesDir, b)));
205
- if (strictRoutes)
206
- assertNoDuplicateRoutes(routesDir, files);
207
- const entries = files.map(file => {
208
- const id = slash(relative(routesDir, file)).replace(new RegExp(`${extname(file)}$`), '');
209
- const path = fileToRoutePath(routesDir, file);
210
- const layoutsForRoute = layoutFilesFor(routesDir, file, extensions);
266
+ const routes = analyzeRoutes(root, routesDir, extensions, strictRoutes, analyzeClient);
267
+ return makeManifestCodeFromRoutes(root, routesDir, routes, extensions);
268
+ }
269
+ function makeManifestCodeFromRoutes(root, routesDir, routes, extensions) {
270
+ const entries = routes.map(route => {
271
+ const layoutsForRoute = layoutFilesFor(routesDir, route.file, extensions);
211
272
  const layouts = layoutsForRoute
212
273
  .map(layout => `() => import(${JSON.stringify(importPath(root, layout))})`)
213
274
  .join(', ');
214
- const error = nearestSpecialFile(routesDir, file, '_error', extensions);
215
- const notFound = nearestSpecialFile(routesDir, file, '_404', extensions);
216
- const hasClient = analyzeClient
217
- ? [file, ...layoutsForRoute].some(candidate => fileNeedsClient(candidate, extensions))
218
- : true;
275
+ const error = nearestSpecialFile(routesDir, route.file, '_error', extensions);
276
+ const notFound = nearestSpecialFile(routesDir, route.file, '_404', extensions);
219
277
  const fields = [
220
- `id: ${JSON.stringify(id)}`,
221
- `path: ${JSON.stringify(path)}`,
222
- `hasClient: ${hasClient}`,
278
+ `id: ${JSON.stringify(route.id)}`,
279
+ `path: ${JSON.stringify(route.path)}`,
280
+ `hasClient: ${route.hasClient}`,
281
+ `runtime: ${JSON.stringify(route.runtime)}`,
282
+ `islands: ${JSON.stringify(route.islands)}`,
283
+ `resumables: ${JSON.stringify(route.refs)}`,
223
284
  `layouts: [${layouts}]`,
224
285
  error ? `error: () => import(${JSON.stringify(importPath(root, error))})` : '',
225
286
  notFound ? `notFound: () => import(${JSON.stringify(importPath(root, notFound))})` : '',
226
- `module: () => import(${JSON.stringify(importPath(root, file))})`
287
+ `module: () => import(${JSON.stringify(importPath(root, route.file))})`
227
288
  ].filter(Boolean).join(', ');
228
289
  return ` { ${fields} }`;
229
290
  });
230
291
  return `const routes = [\n${entries.join(',\n')}\n];\nexport default routes;\n`;
231
292
  }
293
+ export function analyzeRoutes(root, routesDir, extensions = ['.tsx', '.jsx', '.ts', '.js'], strictRoutes = true, analyzeClient = true) {
294
+ const files = walkRoutes(routesDir, extensions)
295
+ .filter(file => !isPrivateRouteFile(file))
296
+ .sort((a, b) => fileToRoutePath(routesDir, a).localeCompare(fileToRoutePath(routesDir, b)));
297
+ if (strictRoutes)
298
+ assertNoDuplicateRoutes(routesDir, files);
299
+ return files.map(file => {
300
+ const id = slash(relative(routesDir, file)).replace(new RegExp(`${extname(file)}$`), '');
301
+ const path = fileToRoutePath(routesDir, file);
302
+ const layoutsForRoute = layoutFilesFor(routesDir, file, extensions);
303
+ const analysis = createClientAnalysis();
304
+ if (analyzeClient) {
305
+ for (const candidate of [file, ...layoutsForRoute]) {
306
+ mergeClientAnalysis(analysis, analyzeClientFile(candidate, extensions));
307
+ }
308
+ }
309
+ else {
310
+ analysis.hasClient = true;
311
+ analysis.hasNonIslandClient = true;
312
+ }
313
+ const declaredRuntime = readDeclaredRuntime(file);
314
+ const clientBudget = readDeclaredClientBudget(file);
315
+ if (declaredRuntime === 'none' && analysis.hasClient) {
316
+ throw new Error(`Blokd route ${path} declares runtime = "none" but includes client runtime markers in ${file}.`);
317
+ }
318
+ const runtime = !analysis.hasClient
319
+ ? 'none'
320
+ : analysis.hasNonIslandClient
321
+ ? 'client'
322
+ : 'islands';
323
+ return {
324
+ id,
325
+ path,
326
+ file,
327
+ hasClient: analysis.hasClient,
328
+ runtime,
329
+ islands: Array.from(analysis.islands).sort(),
330
+ refs: Array.from(analysis.refs).sort(),
331
+ declaredRuntime,
332
+ clientBudget
333
+ };
334
+ });
335
+ }
336
+ function readDeclaredRuntime(file) {
337
+ let source = '';
338
+ try {
339
+ source = readFileSync(file, 'utf8');
340
+ }
341
+ catch {
342
+ return null;
343
+ }
344
+ const match = source.match(/\bexport\s+const\s+runtime\s*=\s*["']([^"']+)["']/);
345
+ return match?.[1] ?? null;
346
+ }
347
+ function readDeclaredClientBudget(file) {
348
+ let source = '';
349
+ try {
350
+ source = readFileSync(file, 'utf8');
351
+ }
352
+ catch {
353
+ return null;
354
+ }
355
+ const match = source.match(/\bexport\s+const\s+budget\s*=\s*\{[\s\S]*?\bclient\s*:\s*["']([^"']+)["'][\s\S]*?\}/);
356
+ return match?.[1] ?? null;
357
+ }
358
+ export function parseByteSize(value) {
359
+ const match = value.trim().toLowerCase().match(/^(\d+(?:\.\d+)?)\s*(b|kb|kib|mb|mib)?$/);
360
+ if (!match)
361
+ throw new Error(`Invalid Blokd budget size "${value}". Use bytes, kb, or mb, for example "0kb" or "30kb".`);
362
+ const amount = Number(match[1]);
363
+ const unit = match[2] ?? 'b';
364
+ const multiplier = unit === 'b' ? 1 : unit === 'kb' || unit === 'kib' ? 1024 : 1024 * 1024;
365
+ return Math.round(amount * multiplier);
366
+ }
367
+ export function measureClientOutputBytes(clientOutDir) {
368
+ if (!existsSync(clientOutDir))
369
+ return null;
370
+ let total = 0;
371
+ const walk = (dir) => {
372
+ for (const entry of readdirSync(dir)) {
373
+ const full = join(dir, entry);
374
+ const stat = statSync(full);
375
+ if (stat.isDirectory())
376
+ walk(full);
377
+ else if (/\.(js|mjs|css)$/.test(entry))
378
+ total += stat.size;
379
+ }
380
+ };
381
+ walk(clientOutDir);
382
+ return total;
383
+ }
384
+ export function validateRouteBudgets(routes, budgets = {}, measuredClientBytes = null) {
385
+ const failures = [];
386
+ for (const route of routes) {
387
+ const budget = route.clientBudget ?? budgets[route.path];
388
+ if (!budget)
389
+ continue;
390
+ const limit = parseByteSize(budget);
391
+ const actual = route.hasClient ? measuredClientBytes ?? 1 : 0;
392
+ if (actual > limit)
393
+ failures.push({ route, budget, limit, actual });
394
+ }
395
+ if (failures.length > 0) {
396
+ const lines = [
397
+ 'Blokd route client budget exceeded',
398
+ ...failures.map(item => `${item.route.path}: client ${formatBytes(item.actual)} exceeds budget ${item.budget} (${formatBytes(item.limit)})`)
399
+ ];
400
+ throw new Error(lines.join('\n'));
401
+ }
402
+ return failures;
403
+ }
404
+ function formatBytes(bytes) {
405
+ if (bytes >= 1024 * 1024)
406
+ return `${(bytes / 1024 / 1024).toFixed(1)}mb`;
407
+ if (bytes >= 1024)
408
+ return `${(bytes / 1024).toFixed(1)}kb`;
409
+ return `${bytes}b`;
410
+ }
411
+ export function createRouteRuntimeReport(routes) {
412
+ const rows = routes.map(route => ({
413
+ route: route.path,
414
+ client: route.hasClient ? 'yes' : 'no',
415
+ runtime: route.runtime,
416
+ islands: route.islands.length > 0 ? route.islands.join(',') : '-'
417
+ }));
418
+ const widths = {
419
+ route: Math.max('Route'.length, ...rows.map(row => row.route.length)),
420
+ client: Math.max('Client'.length, ...rows.map(row => row.client.length)),
421
+ runtime: Math.max('Runtime'.length, ...rows.map(row => row.runtime.length)),
422
+ islands: Math.max('Islands'.length, ...rows.map(row => row.islands.length))
423
+ };
424
+ const pad = (value, width) => value.padEnd(width);
425
+ return [
426
+ 'Blokd route runtime report',
427
+ `${pad('Route', widths.route)} ${pad('Client', widths.client)} ${pad('Runtime', widths.runtime)} ${pad('Islands', widths.islands)}`.trimEnd(),
428
+ ...rows.map(row => `${pad(row.route, widths.route)} ${pad(row.client, widths.client)} ${pad(row.runtime, widths.runtime)} ${pad(row.islands, widths.islands)}`.trimEnd())
429
+ ].join('\n');
430
+ }
232
431
  function jsxTransformPlugin(api) {
233
432
  const t = api.types;
234
433
  return {
@@ -368,6 +567,8 @@ function normalizeJsxText(text) {
368
567
  export function blokd(options = {}) {
369
568
  let root = process.cwd();
370
569
  let routesDir = resolve(root, options.routesDir ?? 'src/routes');
570
+ let command = 'serve';
571
+ let clientOutDir = resolve(root, options.clientOutDir ?? 'dist/client');
371
572
  const extensions = options.extensions ?? ['.tsx', '.jsx', '.ts', '.js'];
372
573
  function invalidateRoutes(server) {
373
574
  const mod = server.moduleGraph.getModuleById(RESOLVED_VIRTUAL_ROUTES);
@@ -380,7 +581,9 @@ export function blokd(options = {}) {
380
581
  enforce: 'pre',
381
582
  configResolved(config) {
382
583
  root = config.root;
584
+ command = config.command === 'build' ? 'build' : 'serve';
383
585
  routesDir = resolve(root, options.routesDir ?? 'src/routes');
586
+ clientOutDir = resolve(root, options.clientOutDir ?? 'dist/client');
384
587
  },
385
588
  configureServer(server) {
386
589
  server.watcher.add(routesDir);
@@ -395,11 +598,18 @@ export function blokd(options = {}) {
395
598
  return null;
396
599
  },
397
600
  load(id) {
398
- if (id === RESOLVED_VIRTUAL_ROUTES)
399
- return makeManifestCode(root, routesDir, extensions, options.strictRoutes ?? true, options.analyzeClient ?? true);
601
+ if (id === RESOLVED_VIRTUAL_ROUTES) {
602
+ const routes = analyzeRoutes(root, routesDir, extensions, options.strictRoutes ?? true, options.analyzeClient ?? true);
603
+ if (command === 'build') {
604
+ console.info(createRouteRuntimeReport(routes));
605
+ validateRouteBudgets(routes, options.budgets, measureClientOutputBytes(clientOutDir));
606
+ }
607
+ return makeManifestCodeFromRoutes(root, routesDir, routes, extensions);
608
+ }
400
609
  return null;
401
610
  },
402
611
  async transform(code, id) {
612
+ assertIslandFileSafe(id, code);
403
613
  if (!/\.[cm]?[jt]sx$/.test(id) || !code.includes('<'))
404
614
  return null;
405
615
  const result = await transformAsync(code, {
package/dist/vite.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"vite.js","sourceRoot":"","sources":["../src/vite.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"vite.js","sourceRoot":"","sources":["../src/vite.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "blokd",
3
- "version": "0.1.0-beta.1",
3
+ "version": "0.2.0-beta.0",
4
4
  "description": "Blokd: tiny production-oriented Hono-native meta-framework with Solid-familiar signals, Web APIs, SSR, routing, and resumable islands.",
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -46,6 +46,21 @@
46
46
  "import": "./dist/hono.js",
47
47
  "default": "./dist/hono.js"
48
48
  },
49
+ "./app": {
50
+ "types": "./dist/app.d.ts",
51
+ "import": "./dist/app.js",
52
+ "default": "./dist/app.js"
53
+ },
54
+ "./components": {
55
+ "types": "./dist/components.d.ts",
56
+ "import": "./dist/components.js",
57
+ "default": "./dist/components.js"
58
+ },
59
+ "./island": {
60
+ "types": "./dist/island.d.ts",
61
+ "import": "./dist/island.js",
62
+ "default": "./dist/island.js"
63
+ },
49
64
  "./vite": {
50
65
  "types": "./dist/vite.d.ts",
51
66
  "import": "./dist/vite.js",