create-avalon 0.1.11 → 0.1.13

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.
Files changed (2) hide show
  1. package/dist/cli.js +29 -3
  2. package/package.json +1 -1
package/dist/cli.js CHANGED
@@ -1287,16 +1287,25 @@ function generateTsConfig() {
1287
1287
  allowImportingTsExtensions: true,
1288
1288
  noEmit: true,
1289
1289
  jsx: "react-jsx",
1290
- types: ["@useavalon/avalon/types"],
1291
1290
  paths: {
1292
1291
  "@shared/*": ["./app/shared/*"],
1293
1292
  "@modules/*": ["./app/modules/*"]
1294
1293
  }
1295
1294
  },
1296
- include: ["app/**/*.ts", "app/**/*.tsx", "server/**/*.ts", "routes/**/*.ts", "middleware/**/*.ts"]
1295
+ include: ["app/**/*.ts", "app/**/*.tsx", "app/**/*.d.ts", "server/**/*.ts", "routes/**/*.ts", "middleware/**/*.ts"]
1297
1296
  };
1298
1297
  return JSON.stringify(tsconfig, null, 2);
1299
1298
  }
1299
+ function generateEnvDts() {
1300
+ return `/// <reference types="@useavalon/avalon/types" />
1301
+
1302
+ // Virtual module declarations
1303
+ declare module 'virtual:avalon/config' {
1304
+ const config: Record<string, unknown>;
1305
+ export default config;
1306
+ }
1307
+ `;
1308
+ }
1300
1309
 
1301
1310
  // src/templates/vite-config.ts
1302
1311
  function generateViteConfig(config) {
@@ -1471,7 +1480,7 @@ function generateSampleMiddleware(_config) {
1471
1480
  return `import { defineHandler } from 'nitro';
1472
1481
 
1473
1482
  export default defineHandler((event) => {
1474
- console.log(\`[\${new Date().toISOString()}] \${event.method} \${event.path}\`);
1483
+ console.log(\`[\${new Date().toISOString()}] \${event.req.method} \${event.url.pathname}\`);
1475
1484
  });
1476
1485
  `;
1477
1486
  }
@@ -1750,6 +1759,7 @@ async function scaffoldProject(config, targetDir) {
1750
1759
  await writeFile(join(targetDir, "public/favicon.ico"), getFaviconBuffer());
1751
1760
  await writeFile(join(targetDir, "server/env.d.ts"), `/// <reference types="nitro" />
1752
1761
  `);
1762
+ await writeFile(join(targetDir, "app/env.d.ts"), generateEnvDts());
1753
1763
  await writeFile(join(targetDir, "server/renderer.ts"), [
1754
1764
  `import { createNitroRenderer } from '@useavalon/avalon/nitro/renderer';`,
1755
1765
  `import avalonConfig from 'virtual:avalon/config';`,
@@ -1760,6 +1770,22 @@ async function scaffoldProject(config, targetDir) {
1760
1770
  `});`,
1761
1771
  ``
1762
1772
  ].join(`
1773
+ `));
1774
+ await writeFile(join(targetDir, "index.html"), [
1775
+ `<!DOCTYPE html>`,
1776
+ `<html lang="en">`,
1777
+ ` <head>`,
1778
+ ` <meta charset="utf-8" />`,
1779
+ ` <meta name="viewport" content="width=device-width, initial-scale=1" />`,
1780
+ ` <title>Avalon</title>`,
1781
+ ` </head>`,
1782
+ ` <body>`,
1783
+ ` <!--ssr-outlet-->`,
1784
+ ` <script type="module" src="/src/client/main.js"></script>`,
1785
+ ` </body>`,
1786
+ `</html>`,
1787
+ ``
1788
+ ].join(`
1763
1789
  `));
1764
1790
  }
1765
1791
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "create-avalon",
3
- "version": "0.1.11",
3
+ "version": "0.1.13",
4
4
  "description": "Scaffold a new Avalon project with multi-framework islands architecture",
5
5
  "license": "MIT",
6
6
  "type": "module",