Below is a list of Flutter team members who are suggested reviewers
for contributions to packages in this repository.

These names are just suggestions. It is fine to have your changes
reviewed by someone else.

`animations`:
  - @hannah-hyj

`camera`:
  - **Cross-platform**: @bparrishMines
  - **Android**: @camsim99
  - **iOS**: @hellohuanlin, @louisehsu
  - **Web**: @mdebbar
  - **Windows**: @stuartmorgan-g

`cross_file`:
  - @stuartmorgan-g

`cupertino_icons`:
  - @victorsanni

`cupertino_ui`:
  - @dkwingsmt

`espresso`:
  - @jesswrd

`extension_google_sign_in_as_googleapis_auth`:
  - @stuartmorgan-g

`file_selector`:
  - **Cross-platform**: @stuartmorgan-g
  - **Android**: @mboetger
  - **iOS**: @okorohelijah, @vashworth
  - **Linux**: @robert-ancell, @stuartmorgan-g
  - **macOS**: @okorohelijah, @vashworth
  - **Web**: @mdebbar
  - **Windows**: @stuartmorgan-g

`flutter_lints`:
  - @chunhtai

`flutter_plugin_android_lifecycle`:
  - @reidbaker

`flutter_svg, flutter_svg_test`:
  - @domesticmouse

`flutter_template_images`:
  - @stuartmorgan-g

`go_router / go_router_builder`:
  - @chunhtai

`google_adsense`:
  - @sokoloff06, @ditman

`google_identity_services_web`:
  - @mdebbar

`google_fonts`:
  - @Piinks

`google_maps_flutter`:
  - **Cross-platform**: @stuartmorgan-g
  - **Android**: @reidbaker
  - **iOS**: @vashworth, @LongCatIsLooong
  - **Web**: @mdebbar

`google_sign_in`:
  - **Cross-platform**: @stuartmorgan-g
  - **Android**: @reidbaker
  - **iOS**: @LongCatIsLooong, @okorohelijah
  - **Web**: @mdebbar

`image_picker`:
  - **Cross-platform**: @tarrinneal
  - **Android**: @gmackall
  - **iOS**: @okorohelijah, @vashworth
  - **Linux**: @robert-ancell, @stuartmorgan-g
  - **macOS**: @okorohelijah, @vashworth
  - **Web**: @mdebbar
  - **Windows**: @stuartmorgan-g

`interactive_media_ads`:
  - @bparrishMines

`in_app_purchase`:
  - **Cross-platform**: @bparrishMines
  - **Android**: @gmackall
  - **iOS**: @louisehsu, @LongCatIsLooong

`local_auth`:
  - **Cross-platform**: @stuartmorgan-g
  - **Android**: @mboetger
  - **iOS/macOS**: @louisehsu, @okorohelijah
  - **Windows**: @stuartmorgan-g

`material_ui`:
  - @qunccccccc

`metrics_center`:
  - @bkonyi

`multicast_dns`:
  - @vashworth

`mustache_template`:
  - @bkonyi, @parlough

`path_parsing`:
  - @domesticmouse

`path_provider`:
  - **Cross-platform**: @stuartmorgan-g
  - **Android**: @camsim99
  - **iOS/macOS**: @LongCatIsLooong, @vashworth
  - **Linux**: @robert-ancell, @stuartmorgan-g
  - **Windows**: @stuartmorgan-g

`pigeon`:
  - @tarrinneal

`platform`:
  - @stuartmorgan-g

`plugin_platform_interface`:
  - @stuartmorgan-g

`pointer_interceptor`:
  - **Cross-platform**: @ditman
  - **iOS**: @louisehsu, @hellohuanlin
  - **Web**: @mdebbar

`quick_actions`:
  - **Cross-platform**: @bparrishMines
  - **Android**: @jesswrd
  - **iOS**: @louisehsu, @LongCatIsLooong

`rfw`:
  - @Hixie

`shared_preferences`:
  - **Cross-platform**: @tarrinneal
  - **Android**: @jesswrd
  - **iOS/macOS**: @tarrinneal
  - **Linux**: @robert-ancell, @stuartmorgan-g
  - **Windows**: @stuartmorgan-g
  - **Web**: @mdebbar
  - **Devtools**: @adsonpleal

`standard_message_codec`:
  - @stuartmorgan-g

`two_dimensional_scrollables`:
  - @Piinks

`url_launcher`:
  - **Cross-platform**: @stuartmorgan-g
  - **Android**: @gmackall
  - **iOS**: @vashworth, @LongCatIsLooong
  - **Linux**: @robert-ancell, @stuartmorgan-g
  - **macOS**: @vashworth, @LongCatIsLooong
  - **Windows**: @stuartmorgan-g
  - **Web**: @mdebbar

`vector_graphics, vector_graphics_codec, vector_graphics_compiler`:
  - @jtmcdole

`video_player`:
  - **Cross-platform**: @tarrinneal
  - **Android**: @mboetger
  - **iOS/macOS**: @hellohuanlin, @louisehsu
  - **Web**: @mdebbar

`web_benchmarks`:
  - @yjbanov

`webview_flutter`:
  - **Cross-platform**: @bparrishMines
  - **Android**: @bparrishMines
  - **iOS/macOS**: @bparrishMines, @LongCatIsLooong, @hellohuanlin
  - **Web**: @mdebbar

`xdg_directories`:
  - @stuartmorgan-g
