Skip to content

Commit dbb6f86

Browse files
committed
feat: optimize landing page for better UX and clarity
- Shorten feature card descriptions to be more concise - Remove video calls from copy (not implemented) - Remove stats section (99.9% Uptime SLA, etc.) - Reduce spacing between sections for tighter layout - Update feature titles to be more specific (Chat & Voice Support, CRM Integration) - Improve overall page flow and readability
1 parent 1efa5d3 commit dbb6f86

1 file changed

Lines changed: 14 additions & 47 deletions

File tree

frontend/app/page.tsx

Lines changed: 14 additions & 47 deletions
Original file line numberDiff line numberDiff line change
@@ -28,40 +28,35 @@ const features = [
2828
{
2929
icon: Brain,
3030
title: "Intelligent AI Agents",
31-
description: "Deploy AI agents that understand context, learn from conversations, and provide accurate answers from your knowledge base. No more guessing—agents escalate when they don't know."
31+
description: "Context-aware agents that learn from conversations and escalate when they don't know the answer."
3232
},
3333
{
3434
icon: MessageSquare,
35-
title: "Unified Communication",
36-
description: "One platform for chat, voice, and video calls. Seamlessly switch between channels while maintaining conversation context across all interactions."
35+
title: "Chat & Voice Support",
36+
description: "Natural conversations across text chat and voice calls with seamless context switching."
3737
},
3838
{
3939
icon: Globe,
4040
title: "Multilingual Support",
41-
description: "Automatically detect and respond in the user's language. Support for English, French, Spanish, German, Italian, Portuguese, and more—out of the box."
41+
description: "Auto-detects and responds in the user's languageEnglish, French, Spanish, and more."
4242
},
4343
{
4444
icon: Database,
4545
title: "Knowledge Base Integration",
46-
description: "Connect your documents, FAQs, and data sources. AI agents only use verified information from your knowledge base, ensuring accurate and reliable responses."
46+
description: "Agents use only verified information from your documents and FAQs—no guessing."
4747
},
4848
{
4949
icon: BarChart3,
5050
title: "Real-Time Analytics",
51-
description: "Track conversations, response times, user satisfaction, and costs. Make data-driven decisions with comprehensive insights and performance metrics."
51+
description: "Track conversations, response times, and user satisfaction for data-driven insights."
5252
},
5353
{
5454
icon: Workflow,
55-
title: "CRM & Workflow Automation",
56-
description: "Automatically capture contact information, create deals, and trigger workflows. Integrate with your existing tools to streamline operations."
55+
title: "CRM Integration",
56+
description: "Automatically capture contacts and create deals to streamline your sales process."
5757
}
5858
]
5959

60-
const stats = [
61-
{ value: "99.9%", label: "Uptime SLA" },
62-
{ value: "<100ms", label: "Response Time" },
63-
{ value: "24/7", label: "Always Available" }
64-
]
6560

6661
export default function Home() {
6762
const heroRef = useRef<HTMLDivElement>(null)
@@ -322,7 +317,7 @@ export default function Home() {
322317
</section>
323318

324319
{/* Live Demo Section */}
325-
<section id="try-now" className="container mx-auto py-24 md:py-32">
320+
<section id="try-now" className="container mx-auto py-16 md:py-20">
326321
<motion.div
327322
initial={{ opacity: 0, y: 30 }}
328323
whileInView={{ opacity: 1, y: 0 }}
@@ -378,10 +373,10 @@ export default function Home() {
378373
</div>
379374
<div className="flex items-start gap-3">
380375
<div className="h-8 w-8 rounded-lg bg-primary/10 flex items-center justify-center flex-shrink-0 mt-0.5">
381-
<Video className="h-4 w-4 text-primary" />
376+
<MessageSquare className="h-4 w-4 text-primary" />
382377
</div>
383378
<div>
384-
<h4 className="font-semibold text-sm mb-1">Voice & Video Calls</h4>
379+
<h4 className="font-semibold text-sm mb-1">Voice Calls</h4>
385380
<p className="text-sm text-muted-foreground">Switch to voice mode for hands-free, real-time conversations</p>
386381
</div>
387382
</div>
@@ -400,37 +395,9 @@ export default function Home() {
400395
</motion.div>
401396
</section>
402397

403-
{/* Social Proof / Stats */}
404-
<section className="border-t bg-muted/50">
405-
<div className="container mx-auto py-16">
406-
<div className="mx-auto grid max-w-5xl gap-8 sm:grid-cols-3">
407-
{stats.map((stat, index) => (
408-
<motion.div
409-
key={stat.label}
410-
initial={{ opacity: 0, scale: 0.5 }}
411-
whileInView={{ opacity: 1, scale: 1 }}
412-
viewport={{ once: true }}
413-
transition={{ duration: 0.5, delay: index * 0.1, type: "spring" }}
414-
className="flex flex-col items-center text-center"
415-
>
416-
<motion.div
417-
initial={{ opacity: 0 }}
418-
whileInView={{ opacity: 1 }}
419-
viewport={{ once: true }}
420-
transition={{ duration: 0.5, delay: index * 0.1 + 0.2 }}
421-
className="text-4xl font-bold text-primary"
422-
>
423-
{stat.value}
424-
</motion.div>
425-
<div className="mt-2 text-sm text-muted-foreground">{stat.label}</div>
426-
</motion.div>
427-
))}
428-
</div>
429-
</div>
430-
</section>
431398

432399
{/* Pricing Preview */}
433-
<section id="pricing" className="container mx-auto py-24 md:py-32">
400+
<section id="pricing" className="container mx-auto py-16 md:py-20">
434401
<motion.div
435402
initial={{ opacity: 0, y: 30 }}
436403
whileInView={{ opacity: 1, y: 0 }}
@@ -584,7 +551,7 @@ export default function Home() {
584551
</section>
585552

586553
{/* CTA Section */}
587-
<motion.section
554+
<motion.section
588555
initial={{ opacity: 0 }}
589556
whileInView={{ opacity: 1 }}
590557
viewport={{ once: true }}
@@ -593,7 +560,7 @@ export default function Home() {
593560
>
594561
<div className="absolute inset-0 bg-[radial-gradient(circle_at_50%_50%,rgba(99,102,241,0.1),transparent_50%)]" />
595562
<div className="absolute inset-0 bg-[radial-gradient(circle_at_80%_20%,rgba(139,92,246,0.1),transparent_50%)]" />
596-
<div className="container mx-auto py-24 md:py-32 relative z-10">
563+
<div className="container mx-auto py-16 md:py-20 relative z-10">
597564
<motion.div
598565
initial={{ opacity: 0, y: 30 }}
599566
whileInView={{ opacity: 1, y: 0 }}

0 commit comments

Comments
 (0)