kofi-stack-template-generator 2.1.59 → 2.1.61
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/.turbo/turbo-build.log +6 -6
- package/dist/index.js +1126 -23
- package/package.json +2 -2
- package/src/templates.generated.ts +23 -7
- package/templates/marketing/nextjs/components.json.hbs +44 -0
- package/templates/marketing/nextjs/package.json.hbs +2 -1
- package/templates/marketing/nextjs/src/app/about/page.tsx +155 -0
- package/templates/marketing/nextjs/src/app/blog/[slug]/page.tsx +181 -0
- package/templates/marketing/nextjs/src/app/features/analytics/page.tsx +140 -0
- package/templates/marketing/nextjs/src/app/features/automation/page.tsx +171 -0
- package/templates/marketing/nextjs/src/app/features/dashboard/page.tsx +140 -0
- package/templates/marketing/nextjs/src/app/features/integrations/page.tsx +174 -0
- package/templates/marketing/nextjs/src/app/features/security/page.tsx +150 -0
- package/templates/marketing/nextjs/src/app/features/workflows/page.tsx +140 -0
- package/templates/marketing/nextjs/src/app/use-cases/marketing/page.tsx +154 -0
- package/templates/marketing/nextjs/src/app/use-cases/operations/page.tsx +154 -0
- package/templates/marketing/nextjs/src/app/use-cases/product/page.tsx +154 -0
- package/templates/marketing/nextjs/src/app/use-cases/sales/page.tsx +154 -0
- package/templates/marketing/nextjs/src/components/Header/index.tsx +52 -2
- package/templates/marketing/nextjs/src/components/blocks/FAQAccordion.tsx +119 -0
- package/templates/marketing/nextjs/src/components/blocks/HowItWorks.tsx +95 -0
- package/templates/marketing/nextjs/src/components/blocks/index.ts +2 -0
- package/templates/marketing/payload/components.json.hbs +44 -0
- package/templates/web/components.json.hbs +6 -0
- package/templates/web/src/app/globals.css.hbs +460 -14
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
import { Header } from "@/components/Header"
|
|
2
|
+
import { Footer } from "@/components/Footer"
|
|
3
|
+
import { FinalCTA } from "@/components/blocks"
|
|
4
|
+
import { Workflow, Users, FileText, CheckSquare, Kanban, Calendar } from "lucide-react"
|
|
5
|
+
|
|
6
|
+
const features = [
|
|
7
|
+
{
|
|
8
|
+
icon: <Workflow className="h-6 w-6" />,
|
|
9
|
+
title: "Custom Workflows",
|
|
10
|
+
description:
|
|
11
|
+
"Design workflows that match how your team actually works. Fully customizable stages and transitions.",
|
|
12
|
+
},
|
|
13
|
+
{
|
|
14
|
+
icon: <Users className="h-6 w-6" />,
|
|
15
|
+
title: "Team Collaboration",
|
|
16
|
+
description:
|
|
17
|
+
"Assign tasks, leave comments, and collaborate in real-time. Everyone stays in sync.",
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
icon: <FileText className="h-6 w-6" />,
|
|
21
|
+
title: "Templates Library",
|
|
22
|
+
description:
|
|
23
|
+
"Start fast with pre-built templates for common workflows. Customize as needed.",
|
|
24
|
+
},
|
|
25
|
+
{
|
|
26
|
+
icon: <CheckSquare className="h-6 w-6" />,
|
|
27
|
+
title: "Task Dependencies",
|
|
28
|
+
description:
|
|
29
|
+
"Link tasks together with dependencies. See the critical path at a glance.",
|
|
30
|
+
},
|
|
31
|
+
{
|
|
32
|
+
icon: <Kanban className="h-6 w-6" />,
|
|
33
|
+
title: "Kanban Boards",
|
|
34
|
+
description:
|
|
35
|
+
"Visualize your workflow with drag-and-drop kanban boards. Track progress instantly.",
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
icon: <Calendar className="h-6 w-6" />,
|
|
39
|
+
title: "Timeline View",
|
|
40
|
+
description:
|
|
41
|
+
"See your workflow on a timeline. Plan sprints and manage deadlines visually.",
|
|
42
|
+
},
|
|
43
|
+
]
|
|
44
|
+
|
|
45
|
+
export default function WorkflowsPage() {
|
|
46
|
+
return (
|
|
47
|
+
<div className="min-h-screen flex flex-col">
|
|
48
|
+
<Header />
|
|
49
|
+
|
|
50
|
+
<main className="flex-1">
|
|
51
|
+
{/* Hero */}
|
|
52
|
+
<section className="py-16 md:py-24">
|
|
53
|
+
<div className="container mx-auto px-4">
|
|
54
|
+
<div className="max-w-3xl mx-auto text-center">
|
|
55
|
+
<div className="inline-block px-4 py-1 rounded-full bg-primary/10 text-primary text-sm font-medium mb-6">
|
|
56
|
+
Workflows
|
|
57
|
+
</div>
|
|
58
|
+
<h1 className="text-4xl md:text-5xl font-bold tracking-tight mb-6">
|
|
59
|
+
Build workflows that match how you work
|
|
60
|
+
</h1>
|
|
61
|
+
<p className="text-xl text-muted-foreground mb-8">
|
|
62
|
+
Design custom workflows with kanban boards, timelines, and task dependencies. Keep your team aligned and projects on track.
|
|
63
|
+
</p>
|
|
64
|
+
<div className="flex flex-wrap gap-4 justify-center">
|
|
65
|
+
<a
|
|
66
|
+
href="/sign-up"
|
|
67
|
+
className="inline-flex items-center justify-center px-6 py-3 text-sm font-medium rounded-md bg-primary text-primary-foreground hover:bg-primary/90 transition-colors"
|
|
68
|
+
>
|
|
69
|
+
Start free trial
|
|
70
|
+
</a>
|
|
71
|
+
<a
|
|
72
|
+
href="/demo"
|
|
73
|
+
className="inline-flex items-center justify-center px-6 py-3 text-sm font-medium rounded-md border border-border bg-background hover:bg-muted transition-colors"
|
|
74
|
+
>
|
|
75
|
+
Watch demo
|
|
76
|
+
</a>
|
|
77
|
+
</div>
|
|
78
|
+
</div>
|
|
79
|
+
</div>
|
|
80
|
+
</section>
|
|
81
|
+
|
|
82
|
+
{/* Workflow Preview */}
|
|
83
|
+
<section className="pb-16 md:pb-24">
|
|
84
|
+
<div className="container mx-auto px-4">
|
|
85
|
+
<div className="max-w-5xl mx-auto">
|
|
86
|
+
<div className="aspect-video bg-gradient-to-br from-primary/20 to-primary/5 rounded-lg border border-border flex items-center justify-center">
|
|
87
|
+
<div className="text-center text-muted-foreground">
|
|
88
|
+
<Kanban className="h-16 w-16 mx-auto mb-4 opacity-50" />
|
|
89
|
+
<p>Workflow Preview</p>
|
|
90
|
+
</div>
|
|
91
|
+
</div>
|
|
92
|
+
</div>
|
|
93
|
+
</div>
|
|
94
|
+
</section>
|
|
95
|
+
|
|
96
|
+
{/* Features Grid */}
|
|
97
|
+
<section className="py-16 md:py-24 bg-muted/30">
|
|
98
|
+
<div className="container mx-auto px-4">
|
|
99
|
+
<div className="text-center mb-12 md:mb-16">
|
|
100
|
+
<h2 className="text-3xl md:text-4xl font-bold tracking-tight mb-4">
|
|
101
|
+
Everything you need to manage work
|
|
102
|
+
</h2>
|
|
103
|
+
<p className="text-lg text-muted-foreground max-w-2xl mx-auto">
|
|
104
|
+
Powerful features that adapt to any team or project type.
|
|
105
|
+
</p>
|
|
106
|
+
</div>
|
|
107
|
+
|
|
108
|
+
<div className="grid md:grid-cols-2 lg:grid-cols-3 gap-8 max-w-5xl mx-auto">
|
|
109
|
+
{features.map((feature) => (
|
|
110
|
+
<div
|
|
111
|
+
key={feature.title}
|
|
112
|
+
className="bg-card rounded-lg border border-border p-6"
|
|
113
|
+
>
|
|
114
|
+
<div className="w-12 h-12 rounded-lg bg-primary/10 text-primary flex items-center justify-center mb-4">
|
|
115
|
+
{feature.icon}
|
|
116
|
+
</div>
|
|
117
|
+
<h3 className="text-lg font-semibold mb-2">{feature.title}</h3>
|
|
118
|
+
<p className="text-muted-foreground text-sm">{feature.description}</p>
|
|
119
|
+
</div>
|
|
120
|
+
))}
|
|
121
|
+
</div>
|
|
122
|
+
</div>
|
|
123
|
+
</section>
|
|
124
|
+
|
|
125
|
+
{/* Final CTA */}
|
|
126
|
+
<FinalCTA
|
|
127
|
+
headline="Ready to streamline your workflow?"
|
|
128
|
+
subheading="Start your free trial and build your first workflow in minutes."
|
|
129
|
+
style="dark"
|
|
130
|
+
links={[
|
|
131
|
+
{ label: "Start free trial", href: "/sign-up", variant: "outline" },
|
|
132
|
+
{ label: "Explore templates", href: "#", variant: "default" },
|
|
133
|
+
]}
|
|
134
|
+
/>
|
|
135
|
+
</main>
|
|
136
|
+
|
|
137
|
+
<Footer />
|
|
138
|
+
</div>
|
|
139
|
+
)
|
|
140
|
+
}
|
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
import { Header } from "@/components/Header"
|
|
2
|
+
import { Footer } from "@/components/Footer"
|
|
3
|
+
import { TestimonialsGrid, FinalCTA } from "@/components/blocks"
|
|
4
|
+
import { Megaphone, BarChart3, Calendar, Users, Sparkles, Target } from "lucide-react"
|
|
5
|
+
|
|
6
|
+
const benefits = [
|
|
7
|
+
{
|
|
8
|
+
icon: <Megaphone className="h-6 w-6" />,
|
|
9
|
+
title: "Campaign Management",
|
|
10
|
+
description:
|
|
11
|
+
"Plan, execute, and track campaigns across channels. Everything in one place.",
|
|
12
|
+
},
|
|
13
|
+
{
|
|
14
|
+
icon: <BarChart3 className="h-6 w-6" />,
|
|
15
|
+
title: "Performance Analytics",
|
|
16
|
+
description:
|
|
17
|
+
"See what's working with real-time dashboards. ROI tracking for every campaign.",
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
icon: <Calendar className="h-6 w-6" />,
|
|
21
|
+
title: "Content Calendar",
|
|
22
|
+
description:
|
|
23
|
+
"Plan your content pipeline visually. Collaborate on drafts and approvals.",
|
|
24
|
+
},
|
|
25
|
+
{
|
|
26
|
+
icon: <Users className="h-6 w-6" />,
|
|
27
|
+
title: "Team Collaboration",
|
|
28
|
+
description:
|
|
29
|
+
"Creative briefs, feedback, and approvals in one workflow. No more email chains.",
|
|
30
|
+
},
|
|
31
|
+
{
|
|
32
|
+
icon: <Sparkles className="h-6 w-6" />,
|
|
33
|
+
title: "AI-Powered Insights",
|
|
34
|
+
description:
|
|
35
|
+
"Get recommendations for improving campaign performance based on your data.",
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
icon: <Target className="h-6 w-6" />,
|
|
39
|
+
title: "Audience Segmentation",
|
|
40
|
+
description:
|
|
41
|
+
"Build and manage audience segments. Personalize at scale.",
|
|
42
|
+
},
|
|
43
|
+
]
|
|
44
|
+
|
|
45
|
+
const stats = [
|
|
46
|
+
{ value: "40%", label: "More campaigns shipped" },
|
|
47
|
+
{ value: "2.5x", label: "Faster time to launch" },
|
|
48
|
+
{ value: "25%", label: "Better campaign ROI" },
|
|
49
|
+
]
|
|
50
|
+
|
|
51
|
+
export default function MarketingPage() {
|
|
52
|
+
return (
|
|
53
|
+
<div className="min-h-screen flex flex-col">
|
|
54
|
+
<Header />
|
|
55
|
+
|
|
56
|
+
<main className="flex-1">
|
|
57
|
+
{/* Hero */}
|
|
58
|
+
<section className="py-16 md:py-24">
|
|
59
|
+
<div className="container mx-auto px-4">
|
|
60
|
+
<div className="max-w-3xl mx-auto text-center">
|
|
61
|
+
<div className="inline-block px-4 py-1 rounded-full bg-primary/10 text-primary text-sm font-medium mb-6">
|
|
62
|
+
For Marketing Teams
|
|
63
|
+
</div>
|
|
64
|
+
<h1 className="text-4xl md:text-5xl font-bold tracking-tight mb-6">
|
|
65
|
+
Launch campaigns that drive results
|
|
66
|
+
</h1>
|
|
67
|
+
<p className="text-xl text-muted-foreground mb-8">
|
|
68
|
+
Plan, execute, and measure marketing campaigns with a platform built for modern marketing teams.
|
|
69
|
+
</p>
|
|
70
|
+
<div className="flex flex-wrap gap-4 justify-center">
|
|
71
|
+
<a
|
|
72
|
+
href="/sign-up"
|
|
73
|
+
className="inline-flex items-center justify-center px-6 py-3 text-sm font-medium rounded-md bg-primary text-primary-foreground hover:bg-primary/90 transition-colors"
|
|
74
|
+
>
|
|
75
|
+
Start free trial
|
|
76
|
+
</a>
|
|
77
|
+
<a
|
|
78
|
+
href="/demo"
|
|
79
|
+
className="inline-flex items-center justify-center px-6 py-3 text-sm font-medium rounded-md border border-border bg-background hover:bg-muted transition-colors"
|
|
80
|
+
>
|
|
81
|
+
See it in action
|
|
82
|
+
</a>
|
|
83
|
+
</div>
|
|
84
|
+
</div>
|
|
85
|
+
</div>
|
|
86
|
+
</section>
|
|
87
|
+
|
|
88
|
+
{/* Stats */}
|
|
89
|
+
<section className="pb-16 md:pb-24">
|
|
90
|
+
<div className="container mx-auto px-4">
|
|
91
|
+
<div className="grid grid-cols-3 gap-8 max-w-2xl mx-auto">
|
|
92
|
+
{stats.map((stat) => (
|
|
93
|
+
<div key={stat.label} className="text-center">
|
|
94
|
+
<div className="text-3xl md:text-4xl font-bold text-primary mb-2">
|
|
95
|
+
{stat.value}
|
|
96
|
+
</div>
|
|
97
|
+
<div className="text-sm text-muted-foreground">{stat.label}</div>
|
|
98
|
+
</div>
|
|
99
|
+
))}
|
|
100
|
+
</div>
|
|
101
|
+
</div>
|
|
102
|
+
</section>
|
|
103
|
+
|
|
104
|
+
{/* Benefits Grid */}
|
|
105
|
+
<section className="py-16 md:py-24 bg-muted/30">
|
|
106
|
+
<div className="container mx-auto px-4">
|
|
107
|
+
<div className="text-center mb-12 md:mb-16">
|
|
108
|
+
<h2 className="text-3xl md:text-4xl font-bold tracking-tight mb-4">
|
|
109
|
+
Built for modern marketing
|
|
110
|
+
</h2>
|
|
111
|
+
<p className="text-lg text-muted-foreground max-w-2xl mx-auto">
|
|
112
|
+
Everything you need to plan, execute, and measure your marketing efforts.
|
|
113
|
+
</p>
|
|
114
|
+
</div>
|
|
115
|
+
|
|
116
|
+
<div className="grid md:grid-cols-2 lg:grid-cols-3 gap-8 max-w-5xl mx-auto">
|
|
117
|
+
{benefits.map((benefit) => (
|
|
118
|
+
<div
|
|
119
|
+
key={benefit.title}
|
|
120
|
+
className="bg-card rounded-lg border border-border p-6"
|
|
121
|
+
>
|
|
122
|
+
<div className="w-12 h-12 rounded-lg bg-primary/10 text-primary flex items-center justify-center mb-4">
|
|
123
|
+
{benefit.icon}
|
|
124
|
+
</div>
|
|
125
|
+
<h3 className="text-lg font-semibold mb-2">{benefit.title}</h3>
|
|
126
|
+
<p className="text-muted-foreground text-sm">{benefit.description}</p>
|
|
127
|
+
</div>
|
|
128
|
+
))}
|
|
129
|
+
</div>
|
|
130
|
+
</div>
|
|
131
|
+
</section>
|
|
132
|
+
|
|
133
|
+
{/* Testimonials */}
|
|
134
|
+
<TestimonialsGrid
|
|
135
|
+
heading="Trusted by marketing teams everywhere"
|
|
136
|
+
subheading="See how teams like yours are driving results with SaaSify."
|
|
137
|
+
/>
|
|
138
|
+
|
|
139
|
+
{/* Final CTA */}
|
|
140
|
+
<FinalCTA
|
|
141
|
+
headline="Ready to level up your marketing?"
|
|
142
|
+
subheading="Start your free trial and see why top marketing teams choose SaaSify."
|
|
143
|
+
style="dark"
|
|
144
|
+
links={[
|
|
145
|
+
{ label: "Start free trial", href: "/sign-up", variant: "outline" },
|
|
146
|
+
{ label: "Talk to us", href: "/contact", variant: "default" },
|
|
147
|
+
]}
|
|
148
|
+
/>
|
|
149
|
+
</main>
|
|
150
|
+
|
|
151
|
+
<Footer />
|
|
152
|
+
</div>
|
|
153
|
+
)
|
|
154
|
+
}
|
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
import { Header } from "@/components/Header"
|
|
2
|
+
import { Footer } from "@/components/Footer"
|
|
3
|
+
import { TestimonialsGrid, FinalCTA } from "@/components/blocks"
|
|
4
|
+
import { Settings, Workflow, Clock, Shield, BarChart3, Users } from "lucide-react"
|
|
5
|
+
|
|
6
|
+
const benefits = [
|
|
7
|
+
{
|
|
8
|
+
icon: <Workflow className="h-6 w-6" />,
|
|
9
|
+
title: "Process Automation",
|
|
10
|
+
description:
|
|
11
|
+
"Automate repetitive tasks and approvals. Free your team to focus on strategic work.",
|
|
12
|
+
},
|
|
13
|
+
{
|
|
14
|
+
icon: <Settings className="h-6 w-6" />,
|
|
15
|
+
title: "Resource Management",
|
|
16
|
+
description:
|
|
17
|
+
"Track and allocate resources across projects. Optimize utilization and reduce waste.",
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
icon: <Clock className="h-6 w-6" />,
|
|
21
|
+
title: "Time Tracking",
|
|
22
|
+
description:
|
|
23
|
+
"Track time across projects and clients. Automated timesheets and billing integration.",
|
|
24
|
+
},
|
|
25
|
+
{
|
|
26
|
+
icon: <Shield className="h-6 w-6" />,
|
|
27
|
+
title: "Compliance Management",
|
|
28
|
+
description:
|
|
29
|
+
"Track compliance requirements and deadlines. Audit trails for everything.",
|
|
30
|
+
},
|
|
31
|
+
{
|
|
32
|
+
icon: <BarChart3 className="h-6 w-6" />,
|
|
33
|
+
title: "Operational Analytics",
|
|
34
|
+
description:
|
|
35
|
+
"Real-time dashboards for operational metrics. Identify bottlenecks and optimize.",
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
icon: <Users className="h-6 w-6" />,
|
|
39
|
+
title: "Vendor Management",
|
|
40
|
+
description:
|
|
41
|
+
"Track vendors, contracts, and renewals. Never miss a deadline.",
|
|
42
|
+
},
|
|
43
|
+
]
|
|
44
|
+
|
|
45
|
+
const stats = [
|
|
46
|
+
{ value: "50%", label: "Less manual work" },
|
|
47
|
+
{ value: "35%", label: "Cost reduction" },
|
|
48
|
+
{ value: "99%", label: "Compliance rate" },
|
|
49
|
+
]
|
|
50
|
+
|
|
51
|
+
export default function OperationsPage() {
|
|
52
|
+
return (
|
|
53
|
+
<div className="min-h-screen flex flex-col">
|
|
54
|
+
<Header />
|
|
55
|
+
|
|
56
|
+
<main className="flex-1">
|
|
57
|
+
{/* Hero */}
|
|
58
|
+
<section className="py-16 md:py-24">
|
|
59
|
+
<div className="container mx-auto px-4">
|
|
60
|
+
<div className="max-w-3xl mx-auto text-center">
|
|
61
|
+
<div className="inline-block px-4 py-1 rounded-full bg-primary/10 text-primary text-sm font-medium mb-6">
|
|
62
|
+
For Operations Teams
|
|
63
|
+
</div>
|
|
64
|
+
<h1 className="text-4xl md:text-5xl font-bold tracking-tight mb-6">
|
|
65
|
+
Run operations like a well-oiled machine
|
|
66
|
+
</h1>
|
|
67
|
+
<p className="text-xl text-muted-foreground mb-8">
|
|
68
|
+
Automate processes, manage resources, and ensure compliance. The operations platform that scales with you.
|
|
69
|
+
</p>
|
|
70
|
+
<div className="flex flex-wrap gap-4 justify-center">
|
|
71
|
+
<a
|
|
72
|
+
href="/sign-up"
|
|
73
|
+
className="inline-flex items-center justify-center px-6 py-3 text-sm font-medium rounded-md bg-primary text-primary-foreground hover:bg-primary/90 transition-colors"
|
|
74
|
+
>
|
|
75
|
+
Start free trial
|
|
76
|
+
</a>
|
|
77
|
+
<a
|
|
78
|
+
href="/demo"
|
|
79
|
+
className="inline-flex items-center justify-center px-6 py-3 text-sm font-medium rounded-md border border-border bg-background hover:bg-muted transition-colors"
|
|
80
|
+
>
|
|
81
|
+
See it in action
|
|
82
|
+
</a>
|
|
83
|
+
</div>
|
|
84
|
+
</div>
|
|
85
|
+
</div>
|
|
86
|
+
</section>
|
|
87
|
+
|
|
88
|
+
{/* Stats */}
|
|
89
|
+
<section className="pb-16 md:pb-24">
|
|
90
|
+
<div className="container mx-auto px-4">
|
|
91
|
+
<div className="grid grid-cols-3 gap-8 max-w-2xl mx-auto">
|
|
92
|
+
{stats.map((stat) => (
|
|
93
|
+
<div key={stat.label} className="text-center">
|
|
94
|
+
<div className="text-3xl md:text-4xl font-bold text-primary mb-2">
|
|
95
|
+
{stat.value}
|
|
96
|
+
</div>
|
|
97
|
+
<div className="text-sm text-muted-foreground">{stat.label}</div>
|
|
98
|
+
</div>
|
|
99
|
+
))}
|
|
100
|
+
</div>
|
|
101
|
+
</div>
|
|
102
|
+
</section>
|
|
103
|
+
|
|
104
|
+
{/* Benefits Grid */}
|
|
105
|
+
<section className="py-16 md:py-24 bg-muted/30">
|
|
106
|
+
<div className="container mx-auto px-4">
|
|
107
|
+
<div className="text-center mb-12 md:mb-16">
|
|
108
|
+
<h2 className="text-3xl md:text-4xl font-bold tracking-tight mb-4">
|
|
109
|
+
Built for operational excellence
|
|
110
|
+
</h2>
|
|
111
|
+
<p className="text-lg text-muted-foreground max-w-2xl mx-auto">
|
|
112
|
+
Everything you need to run efficient, compliant operations.
|
|
113
|
+
</p>
|
|
114
|
+
</div>
|
|
115
|
+
|
|
116
|
+
<div className="grid md:grid-cols-2 lg:grid-cols-3 gap-8 max-w-5xl mx-auto">
|
|
117
|
+
{benefits.map((benefit) => (
|
|
118
|
+
<div
|
|
119
|
+
key={benefit.title}
|
|
120
|
+
className="bg-card rounded-lg border border-border p-6"
|
|
121
|
+
>
|
|
122
|
+
<div className="w-12 h-12 rounded-lg bg-primary/10 text-primary flex items-center justify-center mb-4">
|
|
123
|
+
{benefit.icon}
|
|
124
|
+
</div>
|
|
125
|
+
<h3 className="text-lg font-semibold mb-2">{benefit.title}</h3>
|
|
126
|
+
<p className="text-muted-foreground text-sm">{benefit.description}</p>
|
|
127
|
+
</div>
|
|
128
|
+
))}
|
|
129
|
+
</div>
|
|
130
|
+
</div>
|
|
131
|
+
</section>
|
|
132
|
+
|
|
133
|
+
{/* Testimonials */}
|
|
134
|
+
<TestimonialsGrid
|
|
135
|
+
heading="Trusted by operations teams everywhere"
|
|
136
|
+
subheading="See how teams like yours are optimizing operations with SaaSify."
|
|
137
|
+
/>
|
|
138
|
+
|
|
139
|
+
{/* Final CTA */}
|
|
140
|
+
<FinalCTA
|
|
141
|
+
headline="Ready to optimize your operations?"
|
|
142
|
+
subheading="Start your free trial and see why top operations teams choose SaaSify."
|
|
143
|
+
style="dark"
|
|
144
|
+
links={[
|
|
145
|
+
{ label: "Start free trial", href: "/sign-up", variant: "outline" },
|
|
146
|
+
{ label: "Talk to us", href: "/contact", variant: "default" },
|
|
147
|
+
]}
|
|
148
|
+
/>
|
|
149
|
+
</main>
|
|
150
|
+
|
|
151
|
+
<Footer />
|
|
152
|
+
</div>
|
|
153
|
+
)
|
|
154
|
+
}
|
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
import { Header } from "@/components/Header"
|
|
2
|
+
import { Footer } from "@/components/Footer"
|
|
3
|
+
import { TestimonialsGrid, FinalCTA } from "@/components/blocks"
|
|
4
|
+
import { Lightbulb, GitBranch, MessageSquare, BarChart3, Users, Rocket } from "lucide-react"
|
|
5
|
+
|
|
6
|
+
const benefits = [
|
|
7
|
+
{
|
|
8
|
+
icon: <Lightbulb className="h-6 w-6" />,
|
|
9
|
+
title: "Idea Management",
|
|
10
|
+
description:
|
|
11
|
+
"Capture and prioritize ideas from your team and customers. Never lose a great idea.",
|
|
12
|
+
},
|
|
13
|
+
{
|
|
14
|
+
icon: <GitBranch className="h-6 w-6" />,
|
|
15
|
+
title: "Roadmap Planning",
|
|
16
|
+
description:
|
|
17
|
+
"Build visual roadmaps that keep stakeholders aligned. Easy drag-and-drop planning.",
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
icon: <MessageSquare className="h-6 w-6" />,
|
|
21
|
+
title: "User Feedback",
|
|
22
|
+
description:
|
|
23
|
+
"Collect and organize user feedback. Close the loop with customers automatically.",
|
|
24
|
+
},
|
|
25
|
+
{
|
|
26
|
+
icon: <BarChart3 className="h-6 w-6" />,
|
|
27
|
+
title: "Product Analytics",
|
|
28
|
+
description:
|
|
29
|
+
"Track feature adoption and usage patterns. Make data-driven product decisions.",
|
|
30
|
+
},
|
|
31
|
+
{
|
|
32
|
+
icon: <Users className="h-6 w-6" />,
|
|
33
|
+
title: "Cross-Team Collaboration",
|
|
34
|
+
description:
|
|
35
|
+
"Connect product, engineering, and design. Everyone works from the same source of truth.",
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
icon: <Rocket className="h-6 w-6" />,
|
|
39
|
+
title: "Release Management",
|
|
40
|
+
description:
|
|
41
|
+
"Plan releases, coordinate launches, and communicate changes across the organization.",
|
|
42
|
+
},
|
|
43
|
+
]
|
|
44
|
+
|
|
45
|
+
const stats = [
|
|
46
|
+
{ value: "45%", label: "Faster time to market" },
|
|
47
|
+
{ value: "3x", label: "More features shipped" },
|
|
48
|
+
{ value: "60%", label: "Better stakeholder alignment" },
|
|
49
|
+
]
|
|
50
|
+
|
|
51
|
+
export default function ProductPage() {
|
|
52
|
+
return (
|
|
53
|
+
<div className="min-h-screen flex flex-col">
|
|
54
|
+
<Header />
|
|
55
|
+
|
|
56
|
+
<main className="flex-1">
|
|
57
|
+
{/* Hero */}
|
|
58
|
+
<section className="py-16 md:py-24">
|
|
59
|
+
<div className="container mx-auto px-4">
|
|
60
|
+
<div className="max-w-3xl mx-auto text-center">
|
|
61
|
+
<div className="inline-block px-4 py-1 rounded-full bg-primary/10 text-primary text-sm font-medium mb-6">
|
|
62
|
+
For Product Teams
|
|
63
|
+
</div>
|
|
64
|
+
<h1 className="text-4xl md:text-5xl font-bold tracking-tight mb-6">
|
|
65
|
+
Ship better products, faster
|
|
66
|
+
</h1>
|
|
67
|
+
<p className="text-xl text-muted-foreground mb-8">
|
|
68
|
+
From idea to launch, manage your entire product lifecycle. Roadmaps, feedback, and collaboration in one platform.
|
|
69
|
+
</p>
|
|
70
|
+
<div className="flex flex-wrap gap-4 justify-center">
|
|
71
|
+
<a
|
|
72
|
+
href="/sign-up"
|
|
73
|
+
className="inline-flex items-center justify-center px-6 py-3 text-sm font-medium rounded-md bg-primary text-primary-foreground hover:bg-primary/90 transition-colors"
|
|
74
|
+
>
|
|
75
|
+
Start free trial
|
|
76
|
+
</a>
|
|
77
|
+
<a
|
|
78
|
+
href="/demo"
|
|
79
|
+
className="inline-flex items-center justify-center px-6 py-3 text-sm font-medium rounded-md border border-border bg-background hover:bg-muted transition-colors"
|
|
80
|
+
>
|
|
81
|
+
See it in action
|
|
82
|
+
</a>
|
|
83
|
+
</div>
|
|
84
|
+
</div>
|
|
85
|
+
</div>
|
|
86
|
+
</section>
|
|
87
|
+
|
|
88
|
+
{/* Stats */}
|
|
89
|
+
<section className="pb-16 md:pb-24">
|
|
90
|
+
<div className="container mx-auto px-4">
|
|
91
|
+
<div className="grid grid-cols-3 gap-8 max-w-2xl mx-auto">
|
|
92
|
+
{stats.map((stat) => (
|
|
93
|
+
<div key={stat.label} className="text-center">
|
|
94
|
+
<div className="text-3xl md:text-4xl font-bold text-primary mb-2">
|
|
95
|
+
{stat.value}
|
|
96
|
+
</div>
|
|
97
|
+
<div className="text-sm text-muted-foreground">{stat.label}</div>
|
|
98
|
+
</div>
|
|
99
|
+
))}
|
|
100
|
+
</div>
|
|
101
|
+
</div>
|
|
102
|
+
</section>
|
|
103
|
+
|
|
104
|
+
{/* Benefits Grid */}
|
|
105
|
+
<section className="py-16 md:py-24 bg-muted/30">
|
|
106
|
+
<div className="container mx-auto px-4">
|
|
107
|
+
<div className="text-center mb-12 md:mb-16">
|
|
108
|
+
<h2 className="text-3xl md:text-4xl font-bold tracking-tight mb-4">
|
|
109
|
+
Built for product-led teams
|
|
110
|
+
</h2>
|
|
111
|
+
<p className="text-lg text-muted-foreground max-w-2xl mx-auto">
|
|
112
|
+
Everything you need to build products users love.
|
|
113
|
+
</p>
|
|
114
|
+
</div>
|
|
115
|
+
|
|
116
|
+
<div className="grid md:grid-cols-2 lg:grid-cols-3 gap-8 max-w-5xl mx-auto">
|
|
117
|
+
{benefits.map((benefit) => (
|
|
118
|
+
<div
|
|
119
|
+
key={benefit.title}
|
|
120
|
+
className="bg-card rounded-lg border border-border p-6"
|
|
121
|
+
>
|
|
122
|
+
<div className="w-12 h-12 rounded-lg bg-primary/10 text-primary flex items-center justify-center mb-4">
|
|
123
|
+
{benefit.icon}
|
|
124
|
+
</div>
|
|
125
|
+
<h3 className="text-lg font-semibold mb-2">{benefit.title}</h3>
|
|
126
|
+
<p className="text-muted-foreground text-sm">{benefit.description}</p>
|
|
127
|
+
</div>
|
|
128
|
+
))}
|
|
129
|
+
</div>
|
|
130
|
+
</div>
|
|
131
|
+
</section>
|
|
132
|
+
|
|
133
|
+
{/* Testimonials */}
|
|
134
|
+
<TestimonialsGrid
|
|
135
|
+
heading="Trusted by product teams everywhere"
|
|
136
|
+
subheading="See how teams like yours are shipping better products with SaaSify."
|
|
137
|
+
/>
|
|
138
|
+
|
|
139
|
+
{/* Final CTA */}
|
|
140
|
+
<FinalCTA
|
|
141
|
+
headline="Ready to build better products?"
|
|
142
|
+
subheading="Start your free trial and see why top product teams choose SaaSify."
|
|
143
|
+
style="dark"
|
|
144
|
+
links={[
|
|
145
|
+
{ label: "Start free trial", href: "/sign-up", variant: "outline" },
|
|
146
|
+
{ label: "Talk to us", href: "/contact", variant: "default" },
|
|
147
|
+
]}
|
|
148
|
+
/>
|
|
149
|
+
</main>
|
|
150
|
+
|
|
151
|
+
<Footer />
|
|
152
|
+
</div>
|
|
153
|
+
)
|
|
154
|
+
}
|