'use client'; import { TrendingUp } from 'lucide-react'; import Image from 'next/image'; import * as Badge from '@/components/ui/badge'; import { SVGHeartFill, SVGHeartHalf, SVGHeartLine, SVGStarFill, SVGStarHalf, SVGStarLine, } from '@/components/ui/svg-rating-icons'; export function SVGTrustStarFill(props: React.SVGProps) { return ( ); } function StarRating({ rating }: { rating: number }) { const getStarIcon = (i: number) => { if (rating >= i + 1) { return ; } else if (rating >= i + 0.5) { return ; } return ; }; return (
{Array.from({ length: 5 }, (_, i) => getStarIcon(i))}
); } function TrustStarRating({ rating }: { rating: number }) { const getStarIcon = (i: number) => { if (rating >= i + 1) { return ; } else if (rating >= i + 0.5) { return ; } return ; }; return (
{Array.from({ length: 5 }, (_, i) => getStarIcon(i))}
); } function HeartRating({ rating }: { rating: number }) { const getHeartIcon = (i: number) => { if (rating >= i + 1) { return ; } else if (rating >= i + 0.5) { return ; } return ; }; return (
{Array.from({ length: 5 }, (_, i) => getHeartIcon(i))}
); } const reviewsData = [ { id: 'review1', icon: 'https://alignui.com/images/blocks/icon-app-store.svg', iconAlt: 'app-store', title: 'App-store review', rating: '4.9/5', subtitle: 'Based on 6,200+ ratings', description: 'Teams love how fast and simple it is to manage projects from their phones', descriptionSpan: '—', descriptionEnd: ' wherever they work.', ratingComponent: HeartRating, ratingValue: 5, }, { id: 'review2', icon: 'https://alignui.com/images/blocks/icon-trustpilot.svg', iconAlt: 'trustpilot', title: 'Trustpilot score', rating: '97%', subtitle: 'Recommended by team leaders', description: 'From task planning to delivery, users say it’s the smoothest tool they’ve ever used at scale.', descriptionSpan: '', descriptionEnd: ' used at scale.', ratingComponent: TrustStarRating, ratingValue: 5, }, { id: 'review3', icon: 'https://alignui.com/images/blocks/icon-google.svg', iconAlt: 'google', title: 'Google reviews', rating: '4.8/5', subtitle: 'Rated by remote teams', description: 'Product and ops teams trust it to keep work visible, collaborative, and', descriptionSpan: '', descriptionEnd: ' always moving forward.', ratingComponent: StarRating, ratingValue: 5, }, ]; export default function AppReviewScoreStats() { return (
Stats & review

Real-time feedback, trusted by teams

Track reviews, improve your workflow, and see why modern{' '} teams rely on us every single day.

{reviewsData.map((review) => { const RatingComponent = review.ratingComponent; return (
{review.iconAlt}

{review.title}

{review.rating}
{review.subtitle}

{review.description} {review.descriptionSpan && ( {review.descriptionSpan} )} {review.descriptionEnd}

); })}
); }