@revealui/cli 0.6.3 → 0.7.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/README.md CHANGED
@@ -86,13 +86,13 @@ pnpm dev
86
86
  - You're starting a new RevealUI project from scratch and want a guided setup
87
87
  - You need database, storage, and payment providers configured in one step
88
88
  - You want Dev Container or Devbox configuration generated automatically
89
- - **Not** for adding RevealUI to an existing projectinstall individual packages instead
89
+ - **Not** for adding RevealUI to an existing project - install individual packages instead
90
90
 
91
91
  ## JOSHUA Alignment
92
92
 
93
- - **Justifiable**: Every prompt earns its placetemplate, database, storage, and payment choices all map to real config decisions
93
+ - **Justifiable**: Every prompt earns its place - template, database, storage, and payment choices all map to real config decisions
94
94
  - **Adaptive**: Multiple templates (blog, e-commerce, portfolio) and environment options (DevContainer, Devbox) adapt to your workflow
95
- - **Sovereign**: Scaffolds a self-contained project you fully ownno hosted dependency or account required
95
+ - **Sovereign**: Scaffolds a self-contained project you fully own - no hosted dependency or account required
96
96
 
97
97
  ## License
98
98
 
@@ -1,6 +1,8 @@
1
1
  #!/usr/bin/env node
2
2
 
3
- import { createLegacyCreateCli } from '../dist/cli.js';
3
+ import { createCli } from '../dist/cli.js';
4
4
 
5
- const program = createLegacyCreateCli();
6
- await program.parseAsync(process.argv);
5
+ const args = [...process.argv.slice(0, 2), 'create', ...process.argv.slice(2)];
6
+
7
+ const program = createCli();
8
+ await program.parseAsync(args);
package/dist/cli.d.ts CHANGED
@@ -1,5 +1,71 @@
1
1
  import { Command } from 'commander';
2
2
 
3
+ /**
4
+ * Database configuration prompts
5
+ */
6
+ interface DatabaseConfig {
7
+ provider: 'neon' | 'supabase' | 'local' | 'skip';
8
+ postgresUrl?: string;
9
+ }
10
+
11
+ /**
12
+ * Development environment configuration prompts
13
+ */
14
+ interface DevEnvConfig {
15
+ createDevContainer: boolean;
16
+ createDevbox: boolean;
17
+ }
18
+
19
+ /**
20
+ * Payment configuration prompts
21
+ */
22
+ interface PaymentConfig {
23
+ enabled: boolean;
24
+ stripeSecretKey?: string;
25
+ stripePublishableKey?: string;
26
+ stripeWebhookSecret?: string;
27
+ }
28
+
29
+ /**
30
+ * Project configuration prompts
31
+ */
32
+ interface ProjectConfig {
33
+ projectName: string;
34
+ projectPath: string;
35
+ template: 'basic-blog' | 'e-commerce' | 'portfolio';
36
+ }
37
+
38
+ /**
39
+ * Storage configuration prompts
40
+ */
41
+ interface StorageConfig {
42
+ provider: 'vercel-blob' | 'supabase' | 'skip';
43
+ blobToken?: string;
44
+ supabaseUrl?: string;
45
+ supabasePublishableKey?: string;
46
+ }
47
+
48
+ /**
49
+ * Project creation command
50
+ *
51
+ * Copies template files, writes .env.local, installs dependencies,
52
+ * and initialises a git repo.
53
+ */
54
+
55
+ interface CreateProjectConfig {
56
+ project: ProjectConfig;
57
+ database: DatabaseConfig;
58
+ storage: StorageConfig;
59
+ payment: PaymentConfig;
60
+ devenv: DevEnvConfig;
61
+ skipGit?: boolean;
62
+ skipInstall?: boolean;
63
+ }
64
+ /**
65
+ * Main project creation function - wires everything together.
66
+ */
67
+ declare function createProject(cfg: CreateProjectConfig): Promise<void>;
68
+
3
69
  /**
4
70
  * CLI definition using Commander.js
5
71
  */
@@ -11,6 +77,5 @@ interface CliOptions {
11
77
  yes?: boolean;
12
78
  }
13
79
  declare function createCli(): Command;
14
- declare function createLegacyCreateCli(): Command;
15
80
 
16
- export { type CliOptions, createCli, createLegacyCreateCli };
81
+ export { type CliOptions, type CreateProjectConfig, createCli, createProject };