vibespot 1.3.0 → 1.3.1
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 +18 -8
- package/package.json +1 -1
- package/ui/docs/index.html +239 -20
- package/ui/docs/screenshots/asset-type-cards.png +0 -0
- package/ui/docs/screenshots/deploy-progress.png +0 -0
- package/ui/docs/screenshots/email-client-preview.png +0 -0
- package/ui/docs/screenshots/module-overview-slideout.png +0 -0
- package/ui/docs/screenshots/pipeline-progress.png +0 -0
- package/ui/docs/screenshots/project-overview-table.png +0 -0
package/README.md
CHANGED
|
@@ -36,8 +36,10 @@ Opens a browser with:
|
|
|
36
36
|
- **Project sidebar** — create, open, resume, or delete projects; page tree shows all templates with type badges and module counts
|
|
37
37
|
- **Module management** — reorder via drag-and-drop, edit fields, delete modules from module list or module library
|
|
38
38
|
- **Starter templates** — SaaS, Portfolio, Restaurant, Event, Coming Soon, Blog — pre-built page bundles for instant preview with no AI wait
|
|
39
|
-
- **Content types** — landing pages, email templates, and blog templates all supported from the
|
|
39
|
+
- **Content types** — landing pages, email templates, and blog templates all supported from asset-type cards and the page type dropdown
|
|
40
|
+
- **Email client preview** — renders your email in Gmail, Outlook Desktop, and Apple Mail with per-client rendering notes
|
|
40
41
|
- **Split-pane view** — preview + code editor side by side in a 50/50 layout
|
|
42
|
+
- **Project overview table** — sortable table with page, email, module, and brand asset counts per project, plus bulk duplicate/delete
|
|
41
43
|
- **Brand kit enforcement** — colors, fonts, and logo are injected as constraints into AI generation; validator warns on off-brand values
|
|
42
44
|
- **Interact mode** — unified mode that auto-detects whether you're editing content inline or referencing modules in chat
|
|
43
45
|
- **Undo/redo** — Ctrl+Z / Ctrl+Y step through version history; a compact timeline strip shows every generation step
|
|
@@ -170,6 +172,7 @@ Once your modules are ready:
|
|
|
170
172
|
|
|
171
173
|
```bash
|
|
172
174
|
vibespot # Vibe coding web UI (default)
|
|
175
|
+
vibespot email # Start in email template mode
|
|
173
176
|
vibespot wizard # Classic CLI wizard
|
|
174
177
|
vibespot init # Check and install required tools
|
|
175
178
|
vibespot convert # Convert a React project (no upload)
|
|
@@ -196,20 +199,27 @@ Settings are managed in the **Settings** panel (tabbed: AI, HubSpot, Figma, GitH
|
|
|
196
199
|
|
|
197
200
|
## What's New
|
|
198
201
|
|
|
199
|
-
###
|
|
202
|
+
### v1.3.1
|
|
203
|
+
- **Project overview table** — sortable table view for all projects with page, email, module, and brand asset counts
|
|
204
|
+
- **Bulk operations** — select multiple projects for bulk duplicate or delete
|
|
205
|
+
- **Email client preview** — preview emails as they render in Gmail, Outlook Desktop, and Apple Mail
|
|
206
|
+
- **Pipeline robustness** — auto-regenerate modules with broken fieldsJson; tightened similarity checks
|
|
207
|
+
- **Email deploy fixes** — correct dnd_area naming, module references for drag-and-drop editor, deploy UX improvements
|
|
208
|
+
- **Security hardening** — eliminated shell injection in git operations, path-traversal guards on theme routes
|
|
209
|
+
|
|
210
|
+
### v1.3.0
|
|
211
|
+
- **Email template generation** — full pipeline support for HubSpot email templates: email-specific prompts, table-based layout, MSO/VML compatibility, 3 email starters, 5 email plan templates, and email validator auto-fix
|
|
200
212
|
- **Multi-page sites** — create full HubSpot sites from a single prompt with shared modules, page tree sidebar, and cross-page navigation validation
|
|
201
213
|
- **Inline WYSIWYG editing** — click text, images, and links directly in the live preview to edit inline
|
|
202
214
|
- **Per-section visual controls** — hover toolbar with color pickers, spacing sliders, image swap, and font size controls
|
|
203
215
|
- **Blog template generation** — blog as a content type with HubSpot blog variable support and a Blog Content Hub starter template
|
|
204
216
|
- **Split-pane view** — preview + code editor side by side
|
|
205
217
|
- **Brand kit enforcement** — colors, fonts, and logo injected as AI constraints with off-brand warnings
|
|
206
|
-
- **Workspace tab navigation** — Pages, Brand, Library, Marketplace, Settings tabs
|
|
218
|
+
- **Workspace tab navigation** — Pages, Brand, Library, Marketplace, Settings tabs
|
|
219
|
+
- **Guided entry with asset-type cards** — Landing Page, Email, Website, Blog Post, From Template, and Import
|
|
207
220
|
- **First-visit onboarding** — 3-step walkthrough for new users
|
|
208
|
-
- **
|
|
209
|
-
- **
|
|
210
|
-
|
|
211
|
-
### v1.3.0
|
|
212
|
-
- **Email template generation** — full pipeline support for HubSpot email templates: email-specific prompts, table-based layout, MSO/VML compatibility, 3 email starters, 5 email plan templates, and email validator auto-fix
|
|
221
|
+
- **Material Design SVG icons** — replaced UI emoji glyphs with crisp SVG icons
|
|
222
|
+
- **Project assets browser** — Library tab shows project files (images, fonts, scripts) instead of starter templates
|
|
213
223
|
|
|
214
224
|
### v1.2.0
|
|
215
225
|
- **Inverse pipeline (HubSpot → vibeSpot)** — reverse-engineer imported HubSpot themes: design token extraction, module graph, field schema flags, and round-trip risk detection
|
package/package.json
CHANGED
package/ui/docs/index.html
CHANGED
|
@@ -60,6 +60,7 @@
|
|
|
60
60
|
<a class="doc-nav__link" href="#editor">The Editor</a>
|
|
61
61
|
<a class="doc-nav__link doc-nav__link--sub" href="#editor-layout">Layout</a>
|
|
62
62
|
<a class="doc-nav__link doc-nav__link--sub" href="#workspace-tabs">Workspace Tabs</a>
|
|
63
|
+
<a class="doc-nav__link doc-nav__link--sub" href="#project-overview">Project Overview</a>
|
|
63
64
|
<a class="doc-nav__link doc-nav__link--sub" href="#chat-panel">Chat</a>
|
|
64
65
|
<a class="doc-nav__link doc-nav__link--sub" href="#preview-panel">Preview</a>
|
|
65
66
|
<a class="doc-nav__link doc-nav__link--sub" href="#code-editor">Code Editor</a>
|
|
@@ -71,6 +72,11 @@
|
|
|
71
72
|
<a class="doc-nav__link doc-nav__link--sub" href="#multi-page">Multi-Page Sites</a>
|
|
72
73
|
<a class="doc-nav__link doc-nav__link--sub" href="#templates">Templates</a>
|
|
73
74
|
<a class="doc-nav__link doc-nav__link--sub" href="#module-library">Module Library</a>
|
|
75
|
+
<a class="doc-nav__link" href="#first-generation">Your First Generation</a>
|
|
76
|
+
<a class="doc-nav__link doc-nav__link--sub" href="#first-gen-page">Page Workflow</a>
|
|
77
|
+
<a class="doc-nav__link doc-nav__link--sub" href="#first-gen-email">Email Workflow</a>
|
|
78
|
+
<a class="doc-nav__link doc-nav__link--sub" href="#first-gen-editing">Editing with Module Overview</a>
|
|
79
|
+
<a class="doc-nav__link doc-nav__link--sub" href="#first-gen-publish">Publishing to HubSpot</a>
|
|
74
80
|
</div>
|
|
75
81
|
|
|
76
82
|
<div class="doc-nav__section">
|
|
@@ -372,17 +378,39 @@ vibespot</code></pre>
|
|
|
372
378
|
<ul>
|
|
373
379
|
<li><strong>Pages</strong> — Create new pages and manage existing templates. The page tree sidebar shows all templates with type badges (LP, Blog, Web, Sec), labels, and module counts.</li>
|
|
374
380
|
<li><strong>Brand</strong> — Brand kit (colors, fonts, logo URL) with a live visual preview card showing color swatches, sample text, and logo thumbnail. Also surfaces import analysis results for themes fetched from HubSpot.</li>
|
|
375
|
-
<li><strong>Library</strong> —
|
|
381
|
+
<li><strong>Library</strong> — Project assets browser showing images, fonts, and scripts in the active theme. Also provides access to the shared module library for adding reusable modules to any template.</li>
|
|
376
382
|
<li><strong>Marketplace</strong> — Marketplace validation and listing metadata editor.</li>
|
|
377
383
|
<li><strong>Settings</strong> — Quick access to AI, HubSpot, Figma, GitHub, and vibeSpot configuration.</li>
|
|
378
384
|
</ul>
|
|
379
385
|
|
|
380
|
-
<img class="doc-screenshot" src="screenshots/workspace-tabs.png" alt="
|
|
381
|
-
|
|
382
|
-
<img class="doc-screenshot" src="screenshots/editor-full-layout.png" alt="The full editor layout showing chat panel on the left, live preview on the right, and workspace tabs in the topbar">
|
|
386
|
+
<img class="doc-screenshot" src="screenshots/workspace-tabs.png" alt="The full editor layout showing chat panel on the left, live preview on the right, and workspace tabs (Pages, Brand, Library, Marketplace, Settings) in the topbar">
|
|
383
387
|
|
|
384
388
|
<p>The topbar provides access to theme settings, upload, version history, responsive viewport toggle, and the settings gear.</p>
|
|
385
389
|
|
|
390
|
+
<h3 id="project-overview">Project Overview Table</h3>
|
|
391
|
+
<p>When you have multiple projects, the Project Home shows a <strong>sortable table</strong> that gives you a bird's-eye view of every project in your workspace:</p>
|
|
392
|
+
<table>
|
|
393
|
+
<thead>
|
|
394
|
+
<tr><th>Column</th><th>What it shows</th></tr>
|
|
395
|
+
</thead>
|
|
396
|
+
<tbody>
|
|
397
|
+
<tr><td><strong>Name</strong></td><td>The project (theme) name. Click to open it in the editor.</td></tr>
|
|
398
|
+
<tr><td><strong>Pages</strong></td><td>Number of page templates (landing pages, website pages, blog posts).</td></tr>
|
|
399
|
+
<tr><td><strong>Emails</strong></td><td>Number of email templates in the project.</td></tr>
|
|
400
|
+
<tr><td><strong>Modules</strong></td><td>Total module count across all templates.</td></tr>
|
|
401
|
+
<tr><td><strong>Brand Assets</strong></td><td>Whether a brand kit is configured (checkmark or dash).</td></tr>
|
|
402
|
+
</tbody>
|
|
403
|
+
</table>
|
|
404
|
+
|
|
405
|
+
<h4 id="bulk-operations">Bulk Operations</h4>
|
|
406
|
+
<p>Select multiple projects using the checkboxes in the leftmost column, or click the header checkbox to select all. A floating toolbar appears with the selection count and two actions:</p>
|
|
407
|
+
<ul>
|
|
408
|
+
<li><strong>Duplicate</strong> — Copies all selected projects (only available for projects with saved sessions).</li>
|
|
409
|
+
<li><strong>Delete</strong> — Removes all selected projects. A confirmation dialog asks whether to also delete local theme files from disk.</li>
|
|
410
|
+
</ul>
|
|
411
|
+
|
|
412
|
+
<img class="doc-screenshot" src="screenshots/project-overview-table.png" alt="Project overview table showing multiple projects with pages, emails, modules, and brand asset columns, with two rows selected and the bulk toolbar visible">
|
|
413
|
+
|
|
386
414
|
<h3 id="chat-panel">Chat Panel</h3>
|
|
387
415
|
<p>The chat panel is your primary way to interact with the AI. Type a message describing what you want and press <kbd>Enter</kbd> to send. Use <kbd>Shift</kbd>+<kbd>Enter</kbd> to insert a new line without sending.</p>
|
|
388
416
|
<p>During generation, the chat panel shows a real-time pipeline progress UI with stage indicators and per-module status cards. Each module progresses through: <em>queued</em> → <em>generating...</em> → <em>validating...</em> → <em>✔</em> (complete) or <em>✗</em> (failed). If a module fails, it may show <em>retrying...</em> before a second attempt.</p>
|
|
@@ -396,7 +424,9 @@ vibespot</code></pre>
|
|
|
396
424
|
<p>Drag and drop files onto the chat input, or click the attachment button to browse.</p>
|
|
397
425
|
|
|
398
426
|
<h4 id="starter-templates">Starter Templates</h4>
|
|
399
|
-
<p>For quick starts, the
|
|
427
|
+
<p>For quick starts, click <strong>From Template</strong> on the Project Home screen (or use the templates icon in the chat input area). Nine starter templates bootstrap a new theme with pre-built modules, shared CSS/JS, and module order — instant preview with no AI wait:</p>
|
|
428
|
+
|
|
429
|
+
<p><strong>Page starters:</strong></p>
|
|
400
430
|
<ul>
|
|
401
431
|
<li><strong>SaaS Landing Page</strong> — Hero, features grid, pricing, testimonials, CTA, footer</li>
|
|
402
432
|
<li><strong>Portfolio</strong> — About section, project gallery, skills, contact form</li>
|
|
@@ -406,6 +436,13 @@ vibespot</code></pre>
|
|
|
406
436
|
<li><strong>Blog Content Hub</strong> — 8-module blog layout with post body, author bio, related posts, sidebar, and navigation</li>
|
|
407
437
|
</ul>
|
|
408
438
|
|
|
439
|
+
<p><strong>Email starters:</strong></p>
|
|
440
|
+
<ul>
|
|
441
|
+
<li><strong>Welcome Email</strong> — Logo header, greeting, onboarding steps, CTA button, footer</li>
|
|
442
|
+
<li><strong>Announcement Email</strong> — Header, announcement body, feature highlights, CTA</li>
|
|
443
|
+
<li><strong>Newsletter Email</strong> — Header, content sections, article cards, footer</li>
|
|
444
|
+
</ul>
|
|
445
|
+
|
|
409
446
|
<h4 id="smart-suggestions">Smart Chat Suggestions</h4>
|
|
410
447
|
<p>After each pipeline completion, contextual suggestion chips appear below the assistant message with follow-up actions tailored to your current page. The suggestions are filtered by which modules already exist — you won't see "Add a pricing section" if you already have one. Click a chip to send it as the next message, or ignore them and type your own prompt.</p>
|
|
411
448
|
|
|
@@ -516,14 +553,17 @@ vibespot</code></pre>
|
|
|
516
553
|
</div>
|
|
517
554
|
</div>
|
|
518
555
|
|
|
519
|
-
<p>The
|
|
556
|
+
<p>The Project Home screen greets you with a time-of-day message ("Good morning / afternoon / evening") and six <strong>asset-type cards</strong>. Each card scopes the prompt and pipeline to the right content type:</p>
|
|
520
557
|
<ul>
|
|
521
|
-
<li><strong>
|
|
522
|
-
<li><strong>
|
|
523
|
-
<li><strong>
|
|
524
|
-
<li><strong>
|
|
525
|
-
<li><strong>From
|
|
558
|
+
<li><strong>Landing Page</strong> — Full-width marketing pages with standard HubSpot CMS modules.</li>
|
|
559
|
+
<li><strong>Email</strong> — Table-based email templates with inline CSS and MSO/VML conditional structure.</li>
|
|
560
|
+
<li><strong>Website</strong> — Standard website pages (About, Contact, Services).</li>
|
|
561
|
+
<li><strong>Blog Post</strong> — Blog templates with HubSpot blog variables.</li>
|
|
562
|
+
<li><strong>From Template</strong> — Opens the starter template grid (SaaS, Portfolio, Restaurant, Event, Coming Soon, Blog, plus three email starters).</li>
|
|
563
|
+
<li><strong>Import</strong> — Shows a source picker: HubSpot (fetch existing theme), Figma (translate a design), or React (convert a project).</li>
|
|
526
564
|
</ul>
|
|
565
|
+
<p>Clicking an asset-type card reveals a scoped prompt input with an eyebrow label (e.g. "Landing Page") and a per-type placeholder. Enter a project name and your description, then vibeSpot creates the theme directory and opens the editor.</p>
|
|
566
|
+
<p>You can also reach your existing projects from the sidebar list (“Continue”) or the <a href="#project-overview">project overview table</a> when you have multiple projects.</p>
|
|
527
567
|
|
|
528
568
|
<h3 id="onboarding">Onboarding Walkthrough</h3>
|
|
529
569
|
<p>On first launch (no projects, no local themes), vibeSpot shows a <strong>3-step onboarding walkthrough</strong> on the Project Home screen:</p>
|
|
@@ -534,8 +574,6 @@ vibespot</code></pre>
|
|
|
534
574
|
</ol>
|
|
535
575
|
<p>The walkthrough includes back/next/skip controls and progress dots. Once completed, a <code>vibespot:introSeen</code> localStorage flag prevents it from reappearing. After the intro, the existing AI-engine setup walkthrough still triggers if no engine is configured. Force-show with <code>?intro</code> in the URL.</p>
|
|
536
576
|
|
|
537
|
-
<img class="doc-screenshot" src="screenshots/onboarding-walkthrough.png" alt="The 3-step onboarding walkthrough shown on first launch, with progress dots and Skip/Next controls">
|
|
538
|
-
|
|
539
577
|
<h3 id="first-page">Your First Page</h3>
|
|
540
578
|
<p>Follow these steps to build your first landing page from scratch:</p>
|
|
541
579
|
<ol class="doc-steps">
|
|
@@ -558,10 +596,10 @@ vibespot</code></pre>
|
|
|
558
596
|
<p>vibeSpot supports three content types, each with its own pipeline prompts, validation rules, and starter templates:</p>
|
|
559
597
|
<ul>
|
|
560
598
|
<li><strong>Landing Page</strong> — The default. Full-width marketing pages with standard HubSpot CMS modules.</li>
|
|
561
|
-
<li><strong>Email</strong> — HubSpot email templates with table-based layout, inline CSS design tokens, and MSO/VML conditional structure for Outlook compatibility. Select "Email" from the page type dropdown
|
|
599
|
+
<li><strong>Email</strong> — HubSpot email templates with table-based layout, inline CSS design tokens, and MSO/VML conditional structure for Outlook compatibility. Select the <strong>Email</strong> card on the Project Home screen, choose "Email" from the page type dropdown, or use <code>vibespot email</code> from the CLI. The pipeline routes through email-specific prompts at every stage (architect, module developer, validator). A dedicated <strong>email client preview</strong> (envelope icon in the topbar) renders your email as it appears in Gmail, Outlook Desktop, and Apple Mail.</li>
|
|
562
600
|
<li><strong>Blog</strong> — Blog templates with HubSpot blog variables (<code>content.post_body</code>, <code>content.author</code>, <code>blog_recent_posts</code>, etc.). Blog-specific prompts, validator auto-fix, and a pre-built Blog Content Hub starter template with 8 modules.</li>
|
|
563
601
|
</ul>
|
|
564
|
-
<p>The intent analyzer detects the content type from your prompt (e.g. "create a welcome email" triggers the email pipeline). You can also set it explicitly via the page type dropdown.</p>
|
|
602
|
+
<p>The intent analyzer detects the content type from your prompt (e.g. "create a welcome email" triggers the email pipeline). You can also set it explicitly via the asset-type cards on the Project Home screen or the page type dropdown.</p>
|
|
565
603
|
|
|
566
604
|
<img class="doc-screenshot" src="screenshots/content-type-dropdown.png" alt="Page type dropdown showing Landing Page, Email, Website, and Blog Post options">
|
|
567
605
|
|
|
@@ -606,12 +644,182 @@ vibespot</code></pre>
|
|
|
606
644
|
</ul>
|
|
607
645
|
</div>
|
|
608
646
|
|
|
647
|
+
<!-- ============================================================
|
|
648
|
+
Section 4b: Your First Generation
|
|
649
|
+
============================================================ -->
|
|
650
|
+
<div class="doc-section" id="first-generation">
|
|
651
|
+
<h2 id="first-generation-heading">Your First Generation <a href="#first-generation" class="doc-anchor">#</a></h2>
|
|
652
|
+
<p class="doc-subtitle">Step-by-step walkthroughs for generating your first landing page, your first email template, editing with the module overview, and publishing to HubSpot.</p>
|
|
653
|
+
|
|
654
|
+
<h3 id="first-gen-page">Page Workflow: Landing Page from Scratch</h3>
|
|
655
|
+
<p>This walkthrough creates a complete landing page and deploys it to HubSpot. Estimated time: 5–10 minutes.</p>
|
|
656
|
+
<ol class="doc-steps">
|
|
657
|
+
<li>
|
|
658
|
+
<strong>Launch vibeSpot.</strong> Run <code>npx vibespot</code> in your terminal. The web UI opens at <code>localhost:4200</code>.
|
|
659
|
+
</li>
|
|
660
|
+
<li>
|
|
661
|
+
<strong>Pick an asset type.</strong> On Project Home you see six asset-type cards. Click <strong>Landing Page</strong>. A prompt input appears with the eyebrow "Landing Page" and a placeholder hint.
|
|
662
|
+
<img class="doc-screenshot" src="screenshots/asset-type-cards.png" alt="Six asset-type cards on the Project Home screen: Landing Page, Email, Website, Blog Post, From Template, and Import">
|
|
663
|
+
</li>
|
|
664
|
+
<li>
|
|
665
|
+
<strong>Name your project.</strong> Type a kebab-case name (e.g. <code>acme-launch</code>) and press Enter. vibeSpot creates a theme directory at <code>~/vibespot-themes/acme-launch</code> and opens the editor.
|
|
666
|
+
</li>
|
|
667
|
+
<li>
|
|
668
|
+
<strong>Describe the page.</strong> In the chat panel, write a detailed prompt. Include the page purpose, sections, headlines, and design preferences. Example:
|
|
669
|
+
<pre><code>Build a SaaS landing page for Acme — a project management tool.
|
|
670
|
+
Use a dark navy (#0f172a) and white palette with orange (#f97316) accents.
|
|
671
|
+
Sections: hero with headline "Ship Projects Faster" and a CTA button,
|
|
672
|
+
3-column features grid with icons, pricing table (Free / Pro / Enterprise),
|
|
673
|
+
testimonial carousel, and a minimal footer with social links.</code></pre>
|
|
674
|
+
</li>
|
|
675
|
+
<li>
|
|
676
|
+
<strong>Watch the pipeline.</strong> The four-stage pipeline runs:
|
|
677
|
+
<ul>
|
|
678
|
+
<li><strong>Intent Analyzer</strong> — classifies your request as <code>create</code> and plans which modules to build.</li>
|
|
679
|
+
<li><strong>Page Architect</strong> — creates a CSS design system (<code>:root</code> variables, shared styles) and plans module specs.</li>
|
|
680
|
+
<li><strong>Module Developer</strong> — generates all modules in parallel. Each module card in the chat panel shows its status: <em>queued</em> → <em>generating</em> → <em>complete</em>.</li>
|
|
681
|
+
<li><strong>Quality Check</strong> — validates HubL syntax, field names, and meta.json fields; auto-fixes any issues.</li>
|
|
682
|
+
</ul>
|
|
683
|
+
The live preview populates incrementally as modules finish. Skeleton placeholders hold the position of modules still generating.
|
|
684
|
+
<img class="doc-screenshot" src="screenshots/pipeline-progress.png" alt="Pipeline progress cards in the chat panel showing Intent Analyzer complete, Page Architect complete, and Module Developer generating modules in parallel">
|
|
685
|
+
</li>
|
|
686
|
+
<li>
|
|
687
|
+
<strong>Review in the preview.</strong> Once the pipeline completes, the full page renders in the preview panel. Use the responsive toggles (desktop / tablet / mobile) to check the layout at different breakpoints.
|
|
688
|
+
</li>
|
|
689
|
+
<li>
|
|
690
|
+
<strong>Refine with follow-up prompts.</strong> Send targeted messages to iterate:
|
|
691
|
+
<ul>
|
|
692
|
+
<li><em>"Change the hero background to a gradient from #0f172a to #1e293b"</em></li>
|
|
693
|
+
<li><em>"Add a FAQ section with 5 questions after the pricing table"</em></li>
|
|
694
|
+
<li><em>"Remove the testimonial carousel"</em></li>
|
|
695
|
+
</ul>
|
|
696
|
+
The pipeline only regenerates the affected modules; everything else stays intact.
|
|
697
|
+
</li>
|
|
698
|
+
<li>
|
|
699
|
+
<strong>Deploy.</strong> Click the orange <strong>Deploy</strong> button in the topbar. Select your HubSpot account, monitor the upload progress, and click the link in the celebration screen to create a page in HubSpot. See <a href="#first-gen-publish">Publishing to HubSpot</a> below for the full flow.
|
|
700
|
+
</li>
|
|
701
|
+
</ol>
|
|
702
|
+
|
|
703
|
+
<h3 id="first-gen-email">Email Workflow: Marketing Email from Scratch</h3>
|
|
704
|
+
<p>vibeSpot generates HubSpot email templates with table-based layout, inline CSS, and Outlook-compatible MSO/VML conditionals. Estimated time: 5–10 minutes.</p>
|
|
705
|
+
<ol class="doc-steps">
|
|
706
|
+
<li>
|
|
707
|
+
<strong>Choose Email.</strong> On Project Home, click the <strong>Email</strong> asset-type card. The prompt input shows the eyebrow "Email" and a placeholder: <em>"Describe the email you want to create…"</em>
|
|
708
|
+
</li>
|
|
709
|
+
<li>
|
|
710
|
+
<strong>Name and describe.</strong> Enter a project name (e.g. <code>acme-welcome</code>), then describe the email:
|
|
711
|
+
<pre><code>Create a welcome email for Acme. Include:
|
|
712
|
+
- Logo header with brand colors
|
|
713
|
+
- Greeting with the recipient's first name
|
|
714
|
+
- 3-step onboarding guide with icons
|
|
715
|
+
- A large "Get Started" CTA button
|
|
716
|
+
- Footer with unsubscribe link and social icons</code></pre>
|
|
717
|
+
</li>
|
|
718
|
+
<li>
|
|
719
|
+
<strong>Pipeline generates email modules.</strong> The same four-stage pipeline runs, but with email-specific prompts at every stage:
|
|
720
|
+
<ul>
|
|
721
|
+
<li>The <strong>Email Architect</strong> plans table-based layouts with inline CSS tokens and MSO conditional structure.</li>
|
|
722
|
+
<li>The <strong>Module Developer</strong> generates email-safe HubL — no floats, no flexbox, table cells with inline styles.</li>
|
|
723
|
+
<li>The <strong>Validator</strong> sets <code>host_template_types: ["EMAIL"]</code> in meta.json and skips CSS-prefix fixes (not needed for email).</li>
|
|
724
|
+
</ul>
|
|
725
|
+
</li>
|
|
726
|
+
<li>
|
|
727
|
+
<strong>Preview across email clients.</strong> Click the <strong>envelope icon</strong> in the topbar to open the email client preview. This renders your email as it would appear in Gmail, Outlook Desktop, and Apple Mail, with heuristic notes for each client (e.g. "Outlook ignores <code>border-radius</code>").
|
|
728
|
+
<img class="doc-screenshot" src="screenshots/email-client-preview.png" alt="Email client preview overlay showing Gmail, Outlook Desktop, and Apple Mail tabs with the rendered email and rendering notes">
|
|
729
|
+
</li>
|
|
730
|
+
<li>
|
|
731
|
+
<strong>Iterate.</strong> Use the same chat-based workflow to modify sections: <em>"Make the CTA button larger"</em> or <em>"Add a product screenshot below the onboarding steps."</em>
|
|
732
|
+
</li>
|
|
733
|
+
<li>
|
|
734
|
+
<strong>Deploy to HubSpot.</strong> Click <strong>Deploy</strong>. Email templates upload to your HubSpot portal under the theme’s <code>templates/</code> directory. In HubSpot, go to <strong>Marketing → Email → Create email</strong> and select your template from the theme.
|
|
735
|
+
</li>
|
|
736
|
+
</ol>
|
|
737
|
+
|
|
738
|
+
<div class="doc-callout doc-callout--tip">
|
|
739
|
+
<div class="doc-callout__label">Email starter templates</div>
|
|
740
|
+
<p>For a faster start, pick <strong>From Template</strong> on the Project Home screen. Three email starters are available: Welcome, Announcement, and Newsletter. Each is a pre-built email bundle you can customize immediately.</p>
|
|
741
|
+
</div>
|
|
742
|
+
|
|
743
|
+
<h3 id="first-gen-editing">Editing with the Module Overview</h3>
|
|
744
|
+
<p>After generation, the <strong>Module Overview</strong> (click the grid icon at the top of the left panel) is your central hub for reviewing and editing every module on the page. Here is a step-by-step editing workflow using the module overview:</p>
|
|
745
|
+
<ol class="doc-steps">
|
|
746
|
+
<li>
|
|
747
|
+
<strong>Open the module overview.</strong> Click the <strong>Modules</strong> button (grid icon with a count badge) at the top of the left panel. The slideout opens, listing every module in page order.
|
|
748
|
+
<img class="doc-screenshot" src="screenshots/module-overview-slideout.png" alt="Module overview slideout showing a list of modules (Hero, Features Grid, Pricing, Footer) with drag handles, gear icons, and delete buttons">
|
|
749
|
+
</li>
|
|
750
|
+
<li>
|
|
751
|
+
<strong>Reorder modules.</strong> Grab a module by its drag handle (⠷) and move it up or down. The preview updates instantly to reflect the new page order. Recommended flow for landing pages: Navigation → Hero → Features → Social Proof → Pricing/CTA → Footer.
|
|
752
|
+
</li>
|
|
753
|
+
<li>
|
|
754
|
+
<strong>Edit fields.</strong> Click the <strong>gear icon</strong> (⚙) on any module to open its field editor. The slideout switches to a form generated from the module's <code>fields.json</code>:
|
|
755
|
+
<ul>
|
|
756
|
+
<li><strong>Text fields</strong> — edit headlines, body copy, button labels directly.</li>
|
|
757
|
+
<li><strong>Color pickers</strong> — change background colors, text colors, accents.</li>
|
|
758
|
+
<li><strong>Image fields</strong> — swap image URLs.</li>
|
|
759
|
+
<li><strong>Number fields</strong> — adjust spacing, font sizes.</li>
|
|
760
|
+
<li><strong>Boolean toggles</strong> — show/hide optional elements.</li>
|
|
761
|
+
<li><strong>Choice dropdowns</strong> — select from predefined options.</li>
|
|
762
|
+
<li><strong>Groups</strong> — expand nested field sets (e.g. "Style" groups for padding and colors).</li>
|
|
763
|
+
</ul>
|
|
764
|
+
All changes are <strong>debounced at 300ms</strong> and the preview refreshes automatically. No save button needed.
|
|
765
|
+
</li>
|
|
766
|
+
<li>
|
|
767
|
+
<strong>Delete a module.</strong> Click the <strong>×</strong> icon on a module and confirm. The module is removed from the current template. If the module is used in other templates, it stays in the library.
|
|
768
|
+
</li>
|
|
769
|
+
<li>
|
|
770
|
+
<strong>Add from library.</strong> Click the <strong>+</strong> button in the module overview header to browse the module library. Select any existing module to add it to the current template without regenerating it.
|
|
771
|
+
</li>
|
|
772
|
+
</ol>
|
|
773
|
+
<p>This workflow works identically for pages and emails. For emails, the module list shows email-specific modules (email-header, email-body, email-footer, etc.) and the preview renders with table-based layout.</p>
|
|
774
|
+
|
|
775
|
+
<h3 id="first-gen-publish">Publishing to HubSpot</h3>
|
|
776
|
+
<p>Once your page or email looks right in the preview, deploy it to your HubSpot portal. This walkthrough covers the full flow from vibeSpot to a live HubSpot page.</p>
|
|
777
|
+
<ol class="doc-steps">
|
|
778
|
+
<li>
|
|
779
|
+
<strong>Connect your HubSpot account (one-time).</strong> Open <strong>Settings → HubSpot</strong> and click <strong>Add Account</strong>. Paste a Personal Access Key (PAK) from your HubSpot portal (Settings → Integrations → Private Apps → create a key with <strong>CMS</strong> scope). vibeSpot validates the key and detects your portal ID and data center.
|
|
780
|
+
</li>
|
|
781
|
+
<li>
|
|
782
|
+
<strong>Click Deploy.</strong> The orange <strong>Deploy</strong> button is in the top-right of the topbar. vibeSpot writes all files to disk, runs auto-fix on any known HubSpot compatibility issues, then uploads the entire theme: folder structure, shared CSS/JS, all modules, and templates.
|
|
783
|
+
<img class="doc-screenshot" src="screenshots/deploy-progress.png" alt="Deploy progress panel showing file upload progress bar at 72% with auto-fix log entries and per-file upload status">
|
|
784
|
+
</li>
|
|
785
|
+
<li>
|
|
786
|
+
<strong>Monitor progress.</strong> A progress panel shows:
|
|
787
|
+
<ul>
|
|
788
|
+
<li>A progress bar with file count (e.g. "36/50 files")</li>
|
|
789
|
+
<li>Auto-fix log entries (e.g. "textarea → text in Hero/fields.json")</li>
|
|
790
|
+
<li>Per-file upload status with checkmarks</li>
|
|
791
|
+
</ul>
|
|
792
|
+
API mode (default) uploads modules in parallel. CLI mode uploads sequentially.
|
|
793
|
+
</li>
|
|
794
|
+
<li>
|
|
795
|
+
<strong>Celebration screen.</strong> On success, a screen with confetti shows a direct link to your HubSpot portal. Click it to jump straight into creating a page.
|
|
796
|
+
</li>
|
|
797
|
+
<li>
|
|
798
|
+
<strong>Create a page in HubSpot.</strong>
|
|
799
|
+
<ul>
|
|
800
|
+
<li><strong>For landing pages:</strong> Go to <strong>Content → Landing Pages → Create</strong>. Select your vibeSpot theme, pick the template, and you'll see all your modules pre-configured in HubSpot's page editor. Edit content using HubSpot's native editor, then publish.</li>
|
|
801
|
+
<li><strong>For emails:</strong> Go to <strong>Marketing → Email → Create email</strong>. Choose your vibeSpot email template. Modules appear in HubSpot's drag-and-drop email editor with all fields editable. Customize and send.</li>
|
|
802
|
+
</ul>
|
|
803
|
+
</li>
|
|
804
|
+
</ol>
|
|
805
|
+
|
|
806
|
+
<div class="doc-callout doc-callout--warning">
|
|
807
|
+
<div class="doc-callout__label">Upload errors</div>
|
|
808
|
+
<p>If the upload fails, vibeSpot's auto-fix system scans for known issues (deprecated field types, reserved names, CDN imports) and retries up to 3 times. If auto-fix cannot resolve the error, click <strong>"Fix with AI"</strong> to let the AI diagnose and repair the issue. See <a href="#auto-fix">Auto-Fix</a> for the full list of handled issues.</p>
|
|
809
|
+
</div>
|
|
810
|
+
|
|
811
|
+
<div class="doc-callout doc-callout--info">
|
|
812
|
+
<div class="doc-callout__label">Email deploy differences</div>
|
|
813
|
+
<p>Email templates upload the same way as page themes, but the template file includes HubSpot email-specific metadata: <code>templateType: email</code>, MSO/VML namespaces, and <code>dnd_area</code> references so modules appear in HubSpot's email drag-and-drop editor.</p>
|
|
814
|
+
</div>
|
|
815
|
+
</div>
|
|
816
|
+
|
|
609
817
|
<!-- ============================================================
|
|
610
818
|
Section 5: AI Generation
|
|
611
819
|
============================================================ -->
|
|
612
820
|
<div class="doc-section" id="ai-generation">
|
|
613
821
|
<h2 id="ai-generation-heading">AI Generation <a href="#ai-generation" class="doc-anchor">#</a></h2>
|
|
614
|
-
<p>vibeSpot offers two generation modes: a simpler single-call mode and a
|
|
822
|
+
<p>vibeSpot offers two generation modes: a simpler single-call mode and a multi-stage agentic pipeline. The agentic pipeline is the default and recommended mode.</p>
|
|
615
823
|
|
|
616
824
|
<h3 id="single-call">Single-Call Mode</h3>
|
|
617
825
|
<p>In single-call mode, the AI generates all modules in a single API request. The response contains a <code>vibespot-modules</code> JSON code block with all module definitions. This mode is simpler but less reliable for complex pages because the AI must produce all modules in one shot.</p>
|
|
@@ -1010,11 +1218,13 @@ vibespot</code></pre>
|
|
|
1010
1218
|
</ol>
|
|
1011
1219
|
<p>This is especially useful for HubL syntax errors, invalid field configurations, or template rendering issues that rule-based auto-fix cannot handle.</p>
|
|
1012
1220
|
|
|
1013
|
-
<h3 id="creating-page-hubspot">Creating a Page in HubSpot</h3>
|
|
1014
|
-
<p>After a successful upload, follow these steps in HubSpot
|
|
1221
|
+
<h3 id="creating-page-hubspot">Creating a Page or Email in HubSpot</h3>
|
|
1222
|
+
<p>After a successful upload, follow these steps in HubSpot:</p>
|
|
1223
|
+
|
|
1224
|
+
<h4>Landing Pages & Website Pages</h4>
|
|
1015
1225
|
<ol class="doc-steps">
|
|
1016
|
-
<li><strong>Go to Content → Landing Pages</strong> in your HubSpot portal.</li>
|
|
1017
|
-
<li><strong>Click "Create"</strong> and select
|
|
1226
|
+
<li><strong>Go to Content → Landing Pages</strong> (or Website Pages) in your HubSpot portal.</li>
|
|
1227
|
+
<li><strong>Click "Create"</strong> and select the page type.</li>
|
|
1018
1228
|
<li><strong>Choose your theme</strong> from the template selector. Your vibeSpot theme appears under your portal's themes.</li>
|
|
1019
1229
|
<li><strong>Select a template</strong> from the templates you created in vibeSpot.</li>
|
|
1020
1230
|
<li><strong>Drag modules</strong> from the sidebar into the page layout, or use the pre-configured module order from vibeSpot.</li>
|
|
@@ -1022,6 +1232,15 @@ vibespot</code></pre>
|
|
|
1022
1232
|
<li><strong>Publish</strong> when ready. Your page is live.</li>
|
|
1023
1233
|
</ol>
|
|
1024
1234
|
|
|
1235
|
+
<h4>Email Templates</h4>
|
|
1236
|
+
<ol class="doc-steps">
|
|
1237
|
+
<li><strong>Go to Marketing → Email</strong> in your HubSpot portal.</li>
|
|
1238
|
+
<li><strong>Click "Create email"</strong> and choose Regular or Automated.</li>
|
|
1239
|
+
<li><strong>Select your vibeSpot email template</strong> from the template picker. Your email modules are pre-loaded in the HubSpot drag-and-drop email editor.</li>
|
|
1240
|
+
<li><strong>Edit content</strong> — text, images, CTAs, and all fields you defined in vibeSpot are editable in HubSpot's email editor.</li>
|
|
1241
|
+
<li><strong>Configure recipients, subject line, and send settings</strong>, then send or schedule.</li>
|
|
1242
|
+
</ol>
|
|
1243
|
+
|
|
1025
1244
|
<h3 id="multi-account">Multi-Account Support</h3>
|
|
1026
1245
|
<p>vibeSpot supports multiple HubSpot portal connections. This is useful for agencies managing client portals or teams with staging and production environments.</p>
|
|
1027
1246
|
<ul>
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|