# Rating > **NOTE**
> This component is supported since API version 7. Updates will be marked with a superscript to indicate their earliest API version. The **<Rating>** component provides a rating bar. ## Required Permissions None ## Child Components None ## APIs Rating(options?: { rating: number, indicator?: boolean }) - Parameters | Name | Type | Mandatory | Default Value | Description | | -------- | -------- | -------- | -------- | -------- | | rating | number | Yes | 0 | Value to rate. | | indicator | boolean | No | false | Used only as an indicator and cannot be operated. | ## Attributes | Name | Type | Default Value | Description | | -------- | -------- | -------- | -------- | | stars | number | 5 | Total number of stars. | | stepSize | number | 0.5 | Step of an operation. | | starStyle | {
backgroundUri: string,
foregroundUri: string,
secondaryUri?: string
} | - | **backgroundSrc**: image link of the unselected star. You can customize the image or use the default image. Only local images are supported.
**foregroundSrc**: image path of the selected star. You can customize the image or use the default image. Only local images are supported.
**secondarySrc**: image path of the partially selected star. You can customize the image or use the default image. Only local images are supported. | ## Events | Name | Description | | -------- | -------- | | onChange(callback:(value: number) => void) | Triggered when the rating value changes. | ## Example ``` @Entry @Component struct RatingExample { @State rating: number = 1 @State indicator: boolean = false build() { Flex({ direction: FlexDirection.Column, alignItems: ItemAlign.Center, justifyContent: FlexAlign.SpaceBetween }) { Text('current score is ' + this.rating).fontSize(20) Rating({ rating: this.rating, indicator: this.indicator }) .stars(5) .stepSize(0.5) .onChange((value: number) => { this.rating = value }) }.width(350).height(200).padding(35) } } ``` ![en-us_image_0000001257058423](figures/en-us_image_0000001257058423.gif)