From 3545e6f5c872a35e33278c734770dcbff56b9b2e Mon Sep 17 00:00:00 2001 From: Vantz Stockwell Date: Thu, 11 Jun 2026 05:09:34 -0400 Subject: [PATCH] feat(marketing): pricing, how-it-works, FAQ, roadmap, early-access pages (real content) Five marketing sub-pages built to match the landing's design language, all real content: Pricing (4 real tiers + Fleet Block + commercial-use definition + feature-comparison table + self-service support model), How it works (one agent -> N game instances, BYOS, no-SSH), FAQ (real support/product/games/billing Q&A reflecting the self-service model), Roadmap (honest Shipped/In-progress/Planned, no fake dates), Early access (real signup form). 3 icons added (circle/send/help-circle). Visually verified via Playwright; 0 console errors. Build green. Co-Authored-By: Claude Opus 4.8 --- frontend/src/components/ds/core/Icon.vue | 2 + .../src/views/marketing/EarlyAccessView.vue | 628 +++++++++++------- frontend/src/views/marketing/FaqView.vue | 382 +++++++++-- .../src/views/marketing/HowItWorksView.vue | 460 +++++++++---- frontend/src/views/marketing/PricingView.vue | 532 +++++++++++---- frontend/src/views/marketing/RoadmapView.vue | 417 +++++++++--- 6 files changed, 1758 insertions(+), 663 deletions(-) diff --git a/frontend/src/components/ds/core/Icon.vue b/frontend/src/components/ds/core/Icon.vue index 2dee0dc..f16db6e 100644 --- a/frontend/src/components/ds/core/Icon.vue +++ b/frontend/src/components/ds/core/Icon.vue @@ -25,6 +25,7 @@ import { Pencil, Save, ShoppingBag, Target, User, // Marketing site additions Route, Timer, Megaphone, DatabaseBackup, Store, Undo2, + Circle, Send, HelpCircle, } from 'lucide-vue-next' const props = withDefaults( @@ -63,6 +64,7 @@ const registry: Record = { // Marketing site additions route: Route, timer: Timer, megaphone: Megaphone, 'database-backup': DatabaseBackup, store: Store, 'undo-2': Undo2, + circle: Circle, send: Send, 'help-circle': HelpCircle, } const cmp = computed(() => registry[props.name] ?? null) diff --git a/frontend/src/views/marketing/EarlyAccessView.vue b/frontend/src/views/marketing/EarlyAccessView.vue index e5aaa4c..2a807ba 100644 --- a/frontend/src/views/marketing/EarlyAccessView.vue +++ b/frontend/src/views/marketing/EarlyAccessView.vue @@ -1,16 +1,39 @@ + + diff --git a/frontend/src/views/marketing/FaqView.vue b/frontend/src/views/marketing/FaqView.vue index 0990a69..508955d 100644 --- a/frontend/src/views/marketing/FaqView.vue +++ b/frontend/src/views/marketing/FaqView.vue @@ -1,101 +1,353 @@ + + diff --git a/frontend/src/views/marketing/HowItWorksView.vue b/frontend/src/views/marketing/HowItWorksView.vue index 8db8f20..7f8feb3 100644 --- a/frontend/src/views/marketing/HowItWorksView.vue +++ b/frontend/src/views/marketing/HowItWorksView.vue @@ -1,150 +1,358 @@ diff --git a/frontend/src/views/marketing/PricingView.vue b/frontend/src/views/marketing/PricingView.vue index daf0976..85398a7 100644 --- a/frontend/src/views/marketing/PricingView.vue +++ b/frontend/src/views/marketing/PricingView.vue @@ -1,129 +1,429 @@ + + diff --git a/frontend/src/views/marketing/RoadmapView.vue b/frontend/src/views/marketing/RoadmapView.vue index 475d506..33c2aad 100644 --- a/frontend/src/views/marketing/RoadmapView.vue +++ b/frontend/src/views/marketing/RoadmapView.vue @@ -1,146 +1,353 @@ + +