1+ import type { LucideIcon } from 'lucide-react' ;
2+ import {
3+ BellIcon ,
4+ ConeIcon ,
5+ DollarSignIcon ,
6+ FilterIcon ,
7+ GlobeIcon ,
8+ MonitorIcon ,
9+ MousePointerClickIcon ,
10+ PieChartIcon ,
11+ RefreshCwIcon ,
12+ ShareIcon ,
13+ UserIcon ,
14+ WorkflowIcon ,
15+ } from 'lucide-react' ;
16+ import type { Metadata } from 'next' ;
17+ import { FeatureCardLink } from './_components/feature-card' ;
118import { FeatureHero } from '@/app/(content)/features/[slug]/_components/feature-hero' ;
219import { CtaBanner } from '@/app/(home)/_sections/cta-banner' ;
320import { Section , SectionHeader } from '@/components/section' ;
421import { WindowImage } from '@/components/window-image' ;
522import { url } from '@/lib/layout.shared' ;
623import { getOgImageUrl , getPageMetadata } from '@/lib/metadata' ;
724import { featureSource } from '@/lib/source' ;
8- import type { Metadata } from 'next' ;
9- import { FeatureCardLink } from './_components/feature-card' ;
25+
26+ const featureIcons : Record < string , LucideIcon > = {
27+ conversion : FilterIcon ,
28+ 'data-visualization' : PieChartIcon ,
29+ 'event-tracking' : MousePointerClickIcon ,
30+ funnels : ConeIcon ,
31+ 'identify-users' : UserIcon ,
32+ integrations : WorkflowIcon ,
33+ notifications : BellIcon ,
34+ retention : RefreshCwIcon ,
35+ 'revenue-tracking' : DollarSignIcon ,
36+ 'session-tracking' : MonitorIcon ,
37+ 'share-and-collaborate' : ShareIcon ,
38+ 'web-analytics' : GlobeIcon ,
39+ } ;
1040
1141export const metadata : Metadata = getPageMetadata ( {
1242 title : 'Product analytics features' ,
@@ -32,36 +62,37 @@ export default async function FeaturesIndexPage() {
3262
3363 < div className = "container my-16" >
3464 < WindowImage
35- srcDark = "/screenshots/overview-dark.webp"
36- srcLight = "/screenshots/overview-light.webp"
3765 alt = "OpenPanel Dashboard Overview"
3866 caption = "Get a clear view of your product analytics with real-time insights and customizable dashboards."
67+ srcDark = "/screenshots/overview-dark.webp"
68+ srcLight = "/screenshots/overview-light.webp"
3969 />
4070 </ div >
4171
4272 < Section className = "container" >
4373 < SectionHeader
44- title = "All features"
4574 description = "Browse our capabilities. Each feature is designed to answer specific questions about your product and users."
75+ title = "All features"
4676 variant = "sm"
4777 />
48- < div className = "grid grid-cols-1 sm:grid-cols-2 lg :grid-cols-3 gap-4 mt-12 " >
78+ < div className = "mt-12 grid grid-cols-1 gap-4 sm:grid-cols-2 2xl :grid-cols-3" >
4979 { features . map ( ( feature ) => (
5080 < FeatureCardLink
81+ description = { feature . hero . subheading }
82+ icon = { featureIcons [ feature . slug ] }
5183 key = { feature . slug }
52- url = { feature . url }
5384 title = { feature . hero . heading }
54- description = { feature . hero . subheading }
85+ url = { feature . url }
5586 />
5687 ) ) }
5788 </ div >
5889 </ Section >
5990
6091 < CtaBanner
61- title = "Ready to get started?"
62- description = "Join thousands of teams using OpenPanel for their analytics needs."
63- ctaText = "Get Started Free"
6492 ctaLink = "https://dashboard.openpanel.dev/onboarding"
93+ ctaText = "Get Started Free"
94+ description = "Join thousands of teams using OpenPanel for their analytics needs."
95+ title = "Ready to get started?"
6596 />
6697 </ div >
6798 ) ;
0 commit comments