React Star Rating — Build Hoverable Rating Component

Forms & Events — Intermediate React challenge.

Build a hoverable, accessible star rating component. Hovering previews a rating without committing it; clicking permanently selects a rating; the component is fully keyboard-operable and screen-reader friendly.

Requirements

Signature

function StarRating({
  maxStars?: number;
  onRatingChange?: (rating: number) => void;
}): JSX.Element

Example

<StarRating maxStars={5} />
// hover star 3 -> stars 1-3 preview as filled
// click star 4 -> rating locks to 4, "4 out of 5"
// hover star 5, then leave -> reverts to showing 4 filled, not 0

Constraints

🏷️ Get 20% OFF on Yearly & Lifetime plans — use code 🏷️ Get 20% OFF on Yearly & Lifetime plans — use code 🏷️ Get 20% OFF on Yearly & Lifetime plans — use code 🏷️ Get 20% OFF on Yearly & Lifetime plans — use code 🏷️ Get 20% OFF on Yearly & Lifetime plans — use code 🏷️ Get 20% OFF on Yearly & Lifetime plans — use code
Loading workspace…