The main dashboard has a well-crafted DashboardSkeleton component, but sub-pages like Features, Queue, Pipelines (product scope), Support, and Competitors all use either isLoading text ('Loading tickets…') or basic div-pulse animation. This creates an inconsistent experience where the dashboard feels polished but product pages feel unfinished.
Category: performance File: src/components/support-tickets-dashboard.tsx Recommendation: Create skeleton components for the most-visited product sub-pages: FeaturesTabSkeleton (cards in a 2-column grid), SupportTabSkeleton (5 stat cards + list), PipelineTabSkeleton (table rows). Use the existing Skeleton component from shadcn. Ensure all loading states use skeletons instead of spinner + text combinations.