create-zenith 1.3.17 → 1.3.19

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 (4) hide show
  1. package/README.md +39 -3
  2. package/dist/cli.js +328 -127
  3. package/dist/index.js +328 -127
  4. package/package.json +11 -6
package/README.md CHANGED
@@ -2,6 +2,11 @@
2
2
 
3
3
  The official CLI for scaffolding new Zenith applications. Fast, animated, and delightful.
4
4
 
5
+ ## Canonical Docs
6
+
7
+ - Create contract: `framework/docs`
8
+ - Install and compatibility: `framework/docs`
9
+
5
10
  ## Overview
6
11
 
7
12
  `create-zenith` is the entry point to the Zenith ecosystem. It provides a signature, high-quality terminal experience for initializing new projects, ensuring you go from command line to `localhost` in seconds with confidence.
@@ -12,7 +17,7 @@ The official CLI for scaffolding new Zenith applications. Fast, animated, and de
12
17
  - **Interactive UX**: Built with `@clack/prompts` for intuitive arrow-key navigation and clear visual indicators.
13
18
  - **Reliable Fallbacks**: Automatically detects CI environments and non-TTY pipes to provide clean, static output.
14
19
  - **Smart Detection**: automatically detects your preferred package manager (Bun, pnpm, Yarn, or npm).
15
- - **Batteries Included**: Optional setup for ESLint, Prettier, and TypeScript path aliases.
20
+ - **Tool-Agnostic Output**: ESLint, Prettier, and TypeScript path aliases are opt-in. If you answer `No`, the generated project contains no scripts, dependencies, config files, or ignore files for that tool.
16
21
 
17
22
  ## Quick Start
18
23
 
@@ -35,11 +40,42 @@ pnpm create zenith
35
40
  | `-h, --help` | Show usage information |
36
41
  | `-v, --version` | Show version number |
37
42
 
43
+ ## Optional Tooling Contract
44
+
45
+ During scaffold, `create-zenith` asks whether to include:
46
+
47
+ - ESLint
48
+ - Prettier
49
+ - TypeScript path aliases
50
+
51
+ Tooling behavior is strict:
52
+
53
+ - If you enable ESLint, the project gets `eslint.config.js`, lint scripts, and matching ESLint dependencies.
54
+ - If you disable ESLint, the project contains zero ESLint references.
55
+ - If you enable Prettier, the project gets `.prettierrc`, `.prettierignore`, a format script, and the Prettier dependency.
56
+ - If you disable Prettier, the project contains zero Prettier references.
57
+
58
+ ## Beta Version Pinning
59
+
60
+ Zenith beta currently pins `@zenithbuild/core` to `0.5.0-beta.2.20` and leaf packages (compiler, cli, runtime, router, bundler) to `0.5.0-beta.2.20`. This is intentional — core contains the CLI entry point and may bump independently for bin/CLI fixes without touching the engine.
61
+
62
+ If you see version mismatches after install, delete `node_modules` and `package-lock.json`, then reinstall.
63
+
64
+ ## Latest Release
65
+
66
+ - Generated apps now depend on `@zenithbuild/core@latest` so new installs track the current stable framework release.
67
+ - Template downloads now resolve from `zenithbuild/framework`, which is the active monorepo source of truth.
68
+ - ESLint and Prettier are now feature overlays, so opting out leaves no stray config or dependency references in the scaffolded app.
69
+ - Verified scaffold → install → build coverage lives in `tests/template-regression.spec.mjs`.
70
+
38
71
  ## Development
39
72
 
40
73
  ```bash
41
- # Clone the repository
42
- git clone https://github.com/zenithbuild/create-zenith.git
74
+ # Clone the monorepo
75
+ git clone https://github.com/zenithbuild/framework.git
76
+
77
+ # Enter the package
78
+ cd framework/packages/create-zenith
43
79
 
44
80
  # Install dependencies
45
81
  bun install