@deneb-ui/create-template 2.0.4 → 2.0.6

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/bin/index.js CHANGED
@@ -79,35 +79,54 @@ function runScaffolding(targetInput) {
79
79
  const skipInstall = process.argv.includes('--skip-install');
80
80
 
81
81
  if (!skipInstall) {
82
- console.log(`📦 Installing dependencies with npm (this may take a minute)...`);
82
+ console.log(`\n\x1b[36m📦 Installing dependencies with npm...\x1b[0m \x1b[90m(Next.js 15, Tailwind CSS, @deneb-ui/ui)\x1b[0m\n`);
83
83
  try {
84
84
  const npmCmd = process.platform === 'win32' ? 'npm.cmd' : 'npm';
85
85
  const installRes = require('node:child_process').spawnSync(npmCmd, ['install'], {
86
86
  cwd: targetPath,
87
87
  stdio: 'inherit',
88
- shell: true,
88
+ shell: process.platform === 'win32',
89
89
  });
90
90
 
91
91
  if (installRes.status === 0) {
92
- console.log(`\n\x1b[32m✔ All dependencies and DENEB UI packages installed successfully!\x1b[0m\n`);
92
+ console.log(`\n\x1b[32m✔ All dependencies and DENEB UI components installed successfully!\x1b[0m\n`);
93
93
  } else {
94
- console.log(`\n\x1b[33mNote: npm install exited with code ${installRes.status}. You can run 'npm install' inside the folder manually.\x1b[0m\n`);
94
+ console.log(`\n\x1b[33m! Note: npm install exited with code ${installRes.status}. Run "npm install" inside ${folderName}.\x1b[0m\n`);
95
95
  }
96
- } catch {
97
- console.log(`\n\x1b[33mNote: Could not run npm install automatically. Run 'npm install' inside the folder.\x1b[0m\n`);
96
+ } catch (err) {
97
+ console.log(`\n\x1b[33m! Note: Could not run npm install automatically: ${err.message}\x1b[0m\n`);
98
98
  }
99
99
  }
100
100
 
101
- console.log(`Ready to develop! Run:`);
102
- console.log(` \x1b[36mcd ${folderName}\x1b[0m`);
101
+ console.log(`\x1b[32m══════════════════════════════════════════════════════════════════════════════\x1b[0m`);
102
+ console.log(` \x1b[1m\x1b[32m🎉 Success! Created ${folderName} at ${targetPath}\x1b[0m`);
103
+ console.log(`\x1b[32m══════════════════════════════════════════════════════════════════════════════\x1b[0m\n`);
104
+ console.log(`Your storefront template is pre-configured with:`);
105
+ console.log(` \x1b[36m⚡ Next.js 15 App Router\x1b[0m (React 19 + Static Export support)`);
106
+ console.log(` \x1b[36m🎨 Tailwind CSS\x1b[0m (Pre-configured tailwind.config.ts & tokens)`);
107
+ console.log(` \x1b[36m💎 @deneb-ui/ui\x1b[0m (28+ Visual-First Editable Components)`);
108
+ console.log(` \x1b[36m🛠️ @deneb-ui/cli\x1b[0m (Visual Lab, Preflight Validator & Packager)`);
109
+ console.log(` \x1b[36m📋 Fivora Manifest\x1b[0m (Version 2 Contract Compliant)\n`);
110
+
111
+ console.log(`\x1b[1mNext Steps:\x1b[0m\n`);
112
+ console.log(` \x1b[36m1. cd ${folderName}\x1b[0m`);
113
+ console.log(` Navigate into your template directory.\n`);
103
114
  if (skipInstall) {
104
- console.log(` \x1b[36mnpm install\x1b[0m`);
115
+ console.log(` \x1b[36m2. npm install\x1b[0m`);
116
+ console.log(` Install dependencies.\n`);
105
117
  }
106
- console.log(` \x1b[36mnpm run dev\x1b[0m \x1b[90m# Start local Next.js development\x1b[0m`);
107
- console.log(` \x1b[36mnpm run lab\x1b[0m \x1b[90m# Start Visual Editing Lab\x1b[0m`);
108
- console.log(` \x1b[36mnpm run validate\x1b[0m \x1b[90m# Verify contract compliance\x1b[0m`);
109
- console.log(` \x1b[36mnpm run zip\x1b[0m \x1b[90m# Package clean ZIP for 1-click upload\x1b[0m\n`);
110
- console.log(`Happy coding with DENEB UI! 🚀\n`);
118
+ console.log(` \x1b[36m${skipInstall ? '3' : '2'}. npm run dev\x1b[0m`);
119
+ console.log(` Start the local dev server at \x1b[4mhttp://localhost:3000\x1b[0m.`);
120
+ console.log(` Follow the in-app developer guide right on your homepage!\n`);
121
+ console.log(` \x1b[36m${skipInstall ? '4' : '3'}. npm run lab\x1b[0m`);
122
+ console.log(` Launch the interactive Fivora Visual Editing Lab simulation.\n`);
123
+ console.log(` \x1b[36m${skipInstall ? '5' : '4'}. npm run validate\x1b[0m`);
124
+ console.log(` Verify preflight compliance to ensure 100% marketplace approval.\n`);
125
+ console.log(` \x1b[36m${skipInstall ? '6' : '5'}. npm run zip\x1b[0m`);
126
+ console.log(` Package a clean, upload-ready \x1b[1mfivora-template.zip\x1b[0m.\n`);
127
+
128
+ console.log(`\x1b[90mArchitecture created by Chamika Gayashan & Induranga Kawishwara\x1b[0m`);
129
+ console.log(`\x1b[1m\x1b[36mHappy building with DENEB UI! 🚀\x1b[0m\n`);
111
130
  }
112
131
 
113
132
  printBanner();
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@deneb-ui/create-template",
3
- "version": "2.0.4",
3
+ "version": "2.0.6",
4
4
  "description": "Scaffold a modern, pre-validated DENEB UI storefront template in seconds. Created by Chamika Gayashan & Induranga Kawishwara.",
5
5
  "bin": {
6
6
  "create-deneb-template": "bin/index.js",
@@ -32,7 +32,6 @@
32
32
  "autoprefixer": "^10.4.20"
33
33
  },
34
34
  "overrides": {
35
- "postcss": "8.5.26",
36
35
  "sharp": "0.35.3"
37
36
  }
38
37
  }
@@ -112,78 +112,6 @@ export default function HomePage() {
112
112
  </div>
113
113
  </section>
114
114
 
115
- <section
116
- className="page-section dev-guide-section"
117
- data-design-section="home-developer-guide"
118
- >
119
- <div className="dev-guide-header">
120
- <span className="dev-badge" data-preview-static="dev-guidance">
121
- ⚡ DENEB UI &amp; Fivora Developer Guide
122
- </span>
123
- <h2 data-preview-static="dev-guidance">
124
- How DENEB UI Configures with the Fivora Live Editor
125
- </h2>
126
- <p data-preview-static="dev-guidance">
127
- DENEB UI components are visual-first React primitives engineered for live editing in the Fivora merchant platform:
128
- </p>
129
- </div>
130
-
131
- <div className="grid grid-cols-1 md:grid-cols-3 gap-6 my-8 text-left max-w-5xl mx-auto">
132
- <div className="p-6 bg-white rounded-2xl border border-slate-200 shadow-sm">
133
- <h4 data-preview-static="dev-card-title" className="font-bold text-slate-900 mb-2">1. Live Field Markers</h4>
134
- <p data-preview-static="dev-card-desc" className="text-sm text-slate-500 leading-relaxed">
135
- Every editable string connects to <code data-preview-static="dev-code">site-data.json</code> via <code data-preview-static="dev-code">fieldPath=&quot;home.title&quot;</code>. Clicking in Fivora highlights the field in the sidebar.
136
- </p>
137
- </div>
138
- <div className="p-6 bg-white rounded-2xl border border-slate-200 shadow-sm">
139
- <h4 data-preview-static="dev-card-title" className="font-bold text-slate-900 mb-2">2. Auto-Balancing Grids</h4>
140
- <p data-preview-static="dev-card-desc" className="text-sm text-slate-500 leading-relaxed">
141
- Use <code data-preview-static="dev-code">&lt;EditableGrid&gt;</code> and <code data-preview-static="dev-code">&lt;EditableCard&gt;</code> from <code data-preview-static="dev-code">@deneb-ui/ui</code> to ensure card heights remain balanced regardless of merchant copy length.
142
- </p>
143
- </div>
144
- <div className="p-6 bg-white rounded-2xl border border-slate-200 shadow-sm">
145
- <h4 data-preview-static="dev-card-title" className="font-bold text-slate-900 mb-2">3. Add UI Components</h4>
146
- <p data-preview-static="dev-card-desc" className="text-sm text-slate-500 leading-relaxed">
147
- Install pre-built components into <code data-preview-static="dev-code">src/components/ui/</code> anytime using <code data-preview-static="dev-code">npx deneb add &lt;name&gt;</code> (e.g. product-card, contact-actions, dialog).
148
- </p>
149
- </div>
150
- </div>
151
-
152
- <div className="dev-command-grid">
153
- <div className="dev-cmd-card">
154
- <div className="cmd-header">
155
- <span className="cmd-tag" data-preview-static="dev-tag">Development</span>
156
- <code data-preview-static="dev-command">npm run dev</code>
157
- </div>
158
- <p data-preview-static="dev-description">Hot-reloading local development with Next.js &amp; Tailwind CSS.</p>
159
- </div>
160
-
161
- <div className="dev-cmd-card">
162
- <div className="cmd-header">
163
- <span className="cmd-tag" data-preview-static="dev-tag">Simulate</span>
164
- <code data-preview-static="dev-command">npm run lab</code>
165
- </div>
166
- <p data-preview-static="dev-description">Visual Editing Lab simulating merchant field clicks &amp; edits.</p>
167
- </div>
168
-
169
- <div className="dev-cmd-card">
170
- <div className="cmd-header">
171
- <span className="cmd-tag" data-preview-static="dev-tag">Compliance</span>
172
- <code data-preview-static="dev-command">npm run validate</code>
173
- </div>
174
- <p data-preview-static="dev-description">Runs Fivora preflight contract tests &amp; empty states.</p>
175
- </div>
176
-
177
- <div className="dev-cmd-card">
178
- <div className="cmd-header">
179
- <span className="cmd-tag" data-preview-static="dev-tag">1-Click Upload</span>
180
- <code data-preview-static="dev-command">npm run zip</code>
181
- </div>
182
- <p data-preview-static="dev-description">Automatically packages clean ZIP excluding caches &amp; junk files.</p>
183
- </div>
184
- </div>
185
- </section>
186
-
187
115
  <section
188
116
  className="page-section"
189
117
  data-design-section="home-introduction"
@@ -41,7 +41,13 @@
41
41
  "contact": "Contact"
42
42
  },
43
43
  "footerHeading": "Build something extraordinary with Fivora.",
44
- "copyright": "Fivora. All rights reserved."
44
+ "copyright": "Fivora. All rights reserved.",
45
+ "socialMedia": {
46
+ "twitter": "https://twitter.com",
47
+ "github": "https://github.com",
48
+ "linkedin": "https://linkedin.com",
49
+ "instagram": "https://instagram.com"
50
+ }
45
51
  },
46
52
  "home": {
47
53
  "heroEyebrow": "⚡ Fivora Template Starter",
@@ -91,7 +97,9 @@
91
97
  "email": "developer@fivora.lk",
92
98
  "address": "Colombo, Sri Lanka",
93
99
  "formTitle": "Send an enquiry",
94
- "submitLabel": "Send Message"
100
+ "submitLabel": "Send Message",
101
+ "directMessageText": "Send us a direct message",
102
+ "whatsapp": "+94 77 123 4567"
95
103
  }
96
104
  },
97
105
  "media": {},