docs
    site-kit: Reputation
    v7.2.0.md

    Reputation — @sonordev/site-kit/reputation

    Display client reviews, testimonials, and rating statistics from Sonor.

    Usage

    import { TestimonialSection } from '@sonordev/site-kit/reputation'
    
    export default function ReviewsPage() {
      return (
        <TestimonialSection
          title="What Our Clients Say"
          showRating
          maxReviews={6}
        />
      )
    }

    TestimonialSection Props

    interface TestimonialSectionProps {
      title?: string
      subtitle?: string
      autoplay?: boolean              // Auto-rotate reviews
      autoplayInterval?: number       // ms between rotations
      showRating?: boolean            // Display star ratings
      maxReviews?: number             // Limit displayed count
      featuredOnly?: boolean          // Show featured reviews only
      service?: string                // Filter by service tag
      className?: string
    }

    API Functions

    import { fetchReviews, fetchReviewStats } from '@sonordev/site-kit/reputation'
    
    const reviews = await fetchReviews({ service: 'divorce', limit: 10, featured: true })
    const stats = await fetchReviewStats()  // { total_reviews, average_rating, distribution }

    Types

    interface Review {
      id: string; quote: string; name: string; role?: string;
      rating: number; image?: string; date?: string;
      platform?: string; isFeatured?: boolean; serviceTags?: string[];
    }
    
    interface ReviewStats {
      total_reviews: number
      average_rating: number
      distribution: { 1: number; 2: number; 3: number; 4: number; 5: number }
    }

    Caching

    Uses in-memory cache (60s TTL) with retry-on-429 backoff to prevent rate limiting during dev hot reload.