create-cronus-app 0.6.0 → 0.6.2
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/index.js +5 -5
- package/dist/utils.d.ts +4 -1
- package/dist/utils.js +12 -0
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +3 -3
- package/templates/dashboard/cronus-ui.json +1 -1
- package/templates/dashboard/package.json +3 -3
- package/templates/default/cronus-ui.json +1 -1
- package/templates/default/package.json +3 -3
- package/templates/marketing/cronus-ui.json +1 -1
- package/templates/marketing/package.json +3 -3
package/dist/index.js
CHANGED
|
@@ -180,11 +180,11 @@ async function main() {
|
|
|
180
180
|
log.step(`Scaffolding into ${c.cyan(dirName)}…`);
|
|
181
181
|
const { fileCount } = scaffold({ targetDir, name, theme, mode, template });
|
|
182
182
|
log.ok(`Created ${fileCount} files (${c.cyan(template)} template, ${c.cyan(theme)} theme, ${mode} mode).`);
|
|
183
|
-
// Cronus Compose: store/landing scaffold the `default` base above,
|
|
184
|
-
//
|
|
185
|
-
// (e.g. lucide-react)
|
|
186
|
-
//
|
|
187
|
-
//
|
|
183
|
+
// Cronus Compose: store/landing/saas/admin scaffold the `default` base above,
|
|
184
|
+
// then generate pages + chrome from validated registry blocks. Blocks pull npm
|
|
185
|
+
// deps (e.g. lucide-react) the base package.json lacks; compose always records
|
|
186
|
+
// those pins into package.json, and still runs `pm add` when installing is on.
|
|
187
|
+
// `--no-install` skips the spawn so a later `bun install` picks the pins up.
|
|
188
188
|
if (isComposedTemplate(template)) {
|
|
189
189
|
log.step(`Composing the ${c.cyan(template)} app from validated blocks…`);
|
|
190
190
|
const composed = await composeTemplate({
|
package/dist/utils.d.ts
CHANGED
|
@@ -15,6 +15,7 @@ export declare const c: {
|
|
|
15
15
|
* the copy without scraping stdout. `template` is optional for back-compat: omit
|
|
16
16
|
* it (or pass a bundled template) to keep the component-add path; composed
|
|
17
17
|
* templates (`saas`/`store`/`landing`) get add-page / theme / upgrade instead.
|
|
18
|
+
* saas/admin also get `db:push` before `dev` (sqlite gold path).
|
|
18
19
|
*/
|
|
19
20
|
export declare function outroLines(name: string, pm: PackageManager, installed: boolean, template?: TemplateName): string[];
|
|
20
21
|
export declare const log: {
|
|
@@ -45,7 +46,7 @@ export type LandingFlavor = (typeof LANDING_FLAVORS)[number];
|
|
|
45
46
|
*/
|
|
46
47
|
export declare const PRO_APPS: readonly ["mail", "chat", "finance"];
|
|
47
48
|
export type ProApp = (typeof PRO_APPS)[number];
|
|
48
|
-
export declare const TEMPLATES: readonly ["default", "dashboard", "marketing", "store", "landing", "saas", "landing-studio", "landing-ops", "landing-secure", "landing-care", "landing-shop", "landing-docs", "landing-premium", "landing-agents", "landing-coverage", "landing-broadcast", "landing-agency", "landing-glass", "mail", "chat", "finance"];
|
|
49
|
+
export declare const TEMPLATES: readonly ["default", "dashboard", "marketing", "store", "landing", "saas", "admin", "docs", "landing-studio", "landing-ops", "landing-secure", "landing-care", "landing-shop", "landing-docs", "landing-premium", "landing-agents", "landing-coverage", "landing-broadcast", "landing-agency", "landing-glass", "mail", "chat", "finance"];
|
|
49
50
|
export type TemplateName = (typeof TEMPLATES)[number];
|
|
50
51
|
export declare const DEFAULT_TEMPLATE: TemplateName;
|
|
51
52
|
/**
|
|
@@ -58,6 +59,8 @@ export declare const COMPOSED_TEMPLATES: {
|
|
|
58
59
|
readonly store: "store";
|
|
59
60
|
readonly landing: "landing";
|
|
60
61
|
readonly saas: "saas";
|
|
62
|
+
readonly admin: "admin";
|
|
63
|
+
readonly docs: "docs";
|
|
61
64
|
readonly "landing-studio": "landing-studio";
|
|
62
65
|
readonly "landing-ops": "landing-ops";
|
|
63
66
|
readonly "landing-secure": "landing-secure";
|
package/dist/utils.js
CHANGED
|
@@ -18,12 +18,15 @@ export const c = {
|
|
|
18
18
|
* the copy without scraping stdout. `template` is optional for back-compat: omit
|
|
19
19
|
* it (or pass a bundled template) to keep the component-add path; composed
|
|
20
20
|
* templates (`saas`/`store`/`landing`) get add-page / theme / upgrade instead.
|
|
21
|
+
* saas/admin also get `db:push` before `dev` (sqlite gold path).
|
|
21
22
|
*/
|
|
22
23
|
export function outroLines(name, pm, installed, template) {
|
|
23
24
|
const dev = pm === "npm" ? "npm run dev" : `${pm} dev`;
|
|
24
25
|
const install = pm === "yarn" ? "yarn" : `${pm} install`;
|
|
26
|
+
const dbPush = pm === "npm" ? "npm run db:push" : `${pm} run db:push`;
|
|
25
27
|
const dollar = c.dim("$");
|
|
26
28
|
const composed = template !== undefined && isComposedTemplate(template);
|
|
29
|
+
const goldPath = template === "saas" || template === "admin";
|
|
27
30
|
const grow = composed
|
|
28
31
|
? [
|
|
29
32
|
"Grow the app anytime:",
|
|
@@ -42,6 +45,7 @@ export function outroLines(name, pm, installed, template) {
|
|
|
42
45
|
"Next steps:",
|
|
43
46
|
` ${dollar} cd ${name}`,
|
|
44
47
|
...(installed ? [] : [` ${dollar} ${install}`]),
|
|
48
|
+
...(goldPath ? [` ${dollar} ${dbPush}`] : []),
|
|
45
49
|
` ${dollar} ${dev}`,
|
|
46
50
|
"",
|
|
47
51
|
`Then open ${c.cyan("http://localhost:3000")}.`,
|
|
@@ -108,6 +112,8 @@ export const TEMPLATES = [
|
|
|
108
112
|
"store",
|
|
109
113
|
"landing",
|
|
110
114
|
"saas",
|
|
115
|
+
"admin",
|
|
116
|
+
"docs",
|
|
111
117
|
...LANDING_FLAVORS,
|
|
112
118
|
...PRO_APPS,
|
|
113
119
|
];
|
|
@@ -122,6 +128,8 @@ export const COMPOSED_TEMPLATES = {
|
|
|
122
128
|
store: "store",
|
|
123
129
|
landing: "landing",
|
|
124
130
|
saas: "saas",
|
|
131
|
+
admin: "admin",
|
|
132
|
+
docs: "docs",
|
|
125
133
|
"landing-studio": "landing-studio",
|
|
126
134
|
"landing-ops": "landing-ops",
|
|
127
135
|
"landing-secure": "landing-secure",
|
|
@@ -158,6 +166,8 @@ export const TEMPLATE_HINTS = {
|
|
|
158
166
|
store: "generated storefront — 9 navigable pages, real nav, from validated blocks",
|
|
159
167
|
landing: "generated landing page — hero, features, pricing, testimonials, FAQ, CTA",
|
|
160
168
|
saas: "recommended for a full product — split auth + shell dashboard, team, billing, settings",
|
|
169
|
+
admin: "admin console — split login + shell, overview, users, analytics, board, audit (midnight dark)",
|
|
170
|
+
docs: "docs site — changelog, guides, article, FAQ, about — not a marketing landing (neutral light)",
|
|
161
171
|
"landing-studio": "dark AI studio landing — atmosphere hero, marquee, bento, stats, pricing",
|
|
162
172
|
"landing-ops": "ops/workflow landing — split hero, logos, features, integrations",
|
|
163
173
|
"landing-secure": "security/infra landing — compact hero, metrics, usage pricing, split FAQ",
|
|
@@ -205,6 +215,8 @@ export const TEMPLATE_APPEARANCE = {
|
|
|
205
215
|
mail: { theme: "midnight", mode: "dark" },
|
|
206
216
|
chat: { theme: "aurora", mode: "dark" },
|
|
207
217
|
finance: { theme: "emerald", mode: "light" },
|
|
218
|
+
admin: { theme: "midnight", mode: "dark" },
|
|
219
|
+
docs: { theme: "neutral", mode: "light" },
|
|
208
220
|
};
|
|
209
221
|
/**
|
|
210
222
|
* A single-select TTY prompt: prints a numbered list and returns the option the
|
package/dist/version.d.ts
CHANGED
package/dist/version.js
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "create-cronus-app",
|
|
3
|
-
"version": "0.6.
|
|
3
|
+
"version": "0.6.2",
|
|
4
4
|
"description": "Scaffold a Next.js + Cronus UI app: npx create-cronus-app my-app --template saas.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|
|
@@ -43,8 +43,8 @@
|
|
|
43
43
|
"prepublishOnly": "tsc -p tsconfig.json"
|
|
44
44
|
},
|
|
45
45
|
"dependencies": {
|
|
46
|
-
"@cronus-ui/ai-kit": "0.6.
|
|
47
|
-
"cronus-ui": "0.6.
|
|
46
|
+
"@cronus-ui/ai-kit": "0.6.2",
|
|
47
|
+
"cronus-ui": "0.6.2"
|
|
48
48
|
},
|
|
49
49
|
"devDependencies": {
|
|
50
50
|
"@types/node": "^22.10.0",
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
"lib": "lib",
|
|
10
10
|
"blocks": "components/blocks"
|
|
11
11
|
},
|
|
12
|
-
"registry": "https://raw.githubusercontent.com/pedrogbraz/cronus-ui/v0.6.
|
|
12
|
+
"registry": "https://raw.githubusercontent.com/pedrogbraz/cronus-ui/v0.6.2/registry",
|
|
13
13
|
"theme": {
|
|
14
14
|
"name": "__THEME__",
|
|
15
15
|
"mode": "__MODE__"
|
|
@@ -9,9 +9,9 @@
|
|
|
9
9
|
"start": "next start"
|
|
10
10
|
},
|
|
11
11
|
"dependencies": {
|
|
12
|
-
"@cronus-ui/theme": "^0.6.
|
|
13
|
-
"@cronus-ui/tokens": "^0.6.
|
|
14
|
-
"@cronus-ui/ui": "^0.6.
|
|
12
|
+
"@cronus-ui/theme": "^0.6.2",
|
|
13
|
+
"@cronus-ui/tokens": "^0.6.2",
|
|
14
|
+
"@cronus-ui/ui": "^0.6.2",
|
|
15
15
|
"@tanstack/react-table": "^8.21.3",
|
|
16
16
|
"lucide-react": "^0.577.0",
|
|
17
17
|
"next": "16.2.10",
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
"lib": "lib",
|
|
10
10
|
"blocks": "components/blocks"
|
|
11
11
|
},
|
|
12
|
-
"registry": "https://raw.githubusercontent.com/pedrogbraz/cronus-ui/v0.6.
|
|
12
|
+
"registry": "https://raw.githubusercontent.com/pedrogbraz/cronus-ui/v0.6.2/registry",
|
|
13
13
|
"theme": {
|
|
14
14
|
"name": "__THEME__",
|
|
15
15
|
"mode": "__MODE__"
|
|
@@ -9,9 +9,9 @@
|
|
|
9
9
|
"start": "next start"
|
|
10
10
|
},
|
|
11
11
|
"dependencies": {
|
|
12
|
-
"@cronus-ui/theme": "^0.6.
|
|
13
|
-
"@cronus-ui/tokens": "^0.6.
|
|
14
|
-
"@cronus-ui/ui": "^0.6.
|
|
12
|
+
"@cronus-ui/theme": "^0.6.2",
|
|
13
|
+
"@cronus-ui/tokens": "^0.6.2",
|
|
14
|
+
"@cronus-ui/ui": "^0.6.2",
|
|
15
15
|
"next": "16.2.10",
|
|
16
16
|
"react": "^19.2.0",
|
|
17
17
|
"react-dom": "^19.2.0"
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
"lib": "lib",
|
|
10
10
|
"blocks": "components/blocks"
|
|
11
11
|
},
|
|
12
|
-
"registry": "https://raw.githubusercontent.com/pedrogbraz/cronus-ui/v0.6.
|
|
12
|
+
"registry": "https://raw.githubusercontent.com/pedrogbraz/cronus-ui/v0.6.2/registry",
|
|
13
13
|
"theme": {
|
|
14
14
|
"name": "__THEME__",
|
|
15
15
|
"mode": "__MODE__"
|
|
@@ -9,9 +9,9 @@
|
|
|
9
9
|
"start": "next start"
|
|
10
10
|
},
|
|
11
11
|
"dependencies": {
|
|
12
|
-
"@cronus-ui/theme": "^0.6.
|
|
13
|
-
"@cronus-ui/tokens": "^0.6.
|
|
14
|
-
"@cronus-ui/ui": "^0.6.
|
|
12
|
+
"@cronus-ui/theme": "^0.6.2",
|
|
13
|
+
"@cronus-ui/tokens": "^0.6.2",
|
|
14
|
+
"@cronus-ui/ui": "^0.6.2",
|
|
15
15
|
"lucide-react": "^0.577.0",
|
|
16
16
|
"next": "16.2.10",
|
|
17
17
|
"react": "^19.2.0",
|