GSY Flutter Demo

April 9, 2026 · View on GitHub

GSY Flutter Demo

中文文档

Unlike the GSYGithubAppFlutter project, this project will gradually improve various Flutter independent examples, making it easier for beginners to learn and get started.

Github Actions


Web Version Online Testing

APK Download

Currently gradually completing and improving, mainly providing some useful or interesting examples. If you have good examples, please submit a PR.

Running Instructions: Configure Flutter development environment (currently requires Flutter SDK version 3.35 or above).

If cloning is too slow or images cannot be displayed, try downloading from Gitee

WeChat Official AccountJuejinZhihuCSDNJianshu
GSYTechLinkLinkLinkLink

GSY Book: 《Flutter Development Guide》 Available at: JD.com / Dangdang / E-book JD Reading and Kindle

demoRoutes (Grouped Tables)

Basics (39)

#NamePage File
1Simple text input controllerwidget/basic/controller_demo_page.dart
2Different rounded corner combinationswidget/basic/clip_demo_page.dart
6Gradient text with borderwidget/basic/gradient_text_demo_page.dart
7Transform effectdemowidget/basic/transform_demo_page.dart
8Custom text line-height demowidget/basic/text_line_height_demo_page.dart
9Simple pull refreshwidget/basic/refresh_demo_page.dart
10Simple pull refresh2widget/basic/refresh_demo_page2.dart
11Simple pull refresh3widget/scroll/custom_pull/refresh_demo_page3.dart
12Absolute positioned layoutwidget/basic/positioned_demo_page.dart
13Bubble tooltipwidget/basic/bubble/bubble_demo_page.dart
14Tageffectdemowidget/basic/tag_demo_page.dart
15Shared element transitionwidget/basic/honor_demo_page.dart
17warpContentwidget/basic/wrap_content_page.dart
18Status bar color update(App only)widget/basic/statusbar_demo_page.dart
19Keyboard show/hide listener(App only)widget/basic/keyboard_demo_page.dart
22Global floating action buttonwidget/basic/floating_touch_demo_page.dart
23Global font size settingwidget/basic/text_size_demo_page.dart
24Legacy rich text implementationwidget/basic/rich_text_demo_page.dart
25Official rich text implementationwidget/basic/rich_text_demo_page2.dart
28Verification code inputwidget/basic/verification_code_input_demo_page.dart
29Verification code input2widget/basic/verification_code_input_demo_page2.dart
30Custom layout demowidget/basic/custom_multi_render_demo_page.dart
31Word cloud with custom layoutwidget/basic/cloud/cloud_demo_page.dart
35Keyboard insets demo(App only)widget/basic/input_bottom_demo_page.dart
42Dropdown filter demowidget/basic/drop_select_menu/drop_select_demo_page.dart
48Image overflow demowidget/basic/overflow_image_page.dart
49Align layout demowidget/basic/align_demo_page.dart
50Ratio by size calculationwidget/basic/card_item_page.dart
59Circular selector demowidget/basic/bottom_anim_nav_page.dart
60Stacked card demowidget/basic/index_stack_drag_card_demo_page.dart
61Stacked card demo2widget/basic/index_stack_drag_card_demo_page2.dart
70Color progress barwidget/basic/color_progress_demo_page.dart
72Stable list when prepend/appendwidget/basic/chat_list_scroll_demo_page.dart
73Stable list when prepend/append2widget/basic/chat_list_scroll_demo_page_2.dart
74Nested route testwidget/basic/route_demo_page.dart
89png shadowwidget/basic/png_shadow_demo_page.dart
93Ordered async callswidget/basic/async_to_sync_call_page.dart
110Black holewidget/visual/black_hole_simulation_page.dart
114Destructive Compass Needlewidget/basic/akaza_page.dart

Scrolling (31)

#NamePage File
3List scroll listenerwidget/scroll/scroll_listener_demo_page.dart
4Scroll to target positionwidget/scroll/scroll_to_index_demo_page.dart
5Scroll to target position2widget/scroll/scroll_to_index_demo_page2.dart
16Slider verificationwidget/scroll/slider_verify_page.dart
26Third-party ViewPager wrapperwidget/scroll/viewpager_demo_page.dart
27Sticky items while scrollingwidget/scroll/sliver_list_demo_page.dart
32List sticky header (Stick)widget/scroll/stick/stick_demo_page.dart
33List sticky header (Stick)widget/scroll/stick/stick_demo_page2.dart
34List sticky headereffect2 (Stickwidget/scroll/sliver_stick_demo_page.dart
40Sticky item animationwidget/scroll/list_anim/list_anim_demo_page.dart
41Sticky item animation2widget/scroll/list_anim_2/list_anim_demo_page.dart
44Advanced custom scroll + stickywidget/scroll/custom_sliver/scroll_header_demo_page.dart
45Custom sliver render orderwidget/scroll/custom_viewport/custom_viewport_page.dart
47Demowidget/scroll/stick_sliver_list_demo_page.dart
51Multi-list + top tabswidget/scroll/sliver_tab_demo_page.dart
52Multi-list + top tabs2widget/scroll/sliver_tab_demo_page2.dart
53Multi-list + top tabs3widget/scroll/sliver_tab/sliver_tab_demo_page3.dart
58Bottom follow + sticky demowidget/scroll/scroll_inner_content_demo_page.dart
68BOSS-style linked pagewidget/scroll/link_sliver/link_sliver_demo_page.dart
77ListView nested ViewPager fix diagonal gesture conflictwidget/scroll/vp_list_demo_page.dart
78Vertical ViewPager nestedVertical ListViewwidget/scroll/vp_list_demo_page.dart
79Vertical ListView nestedVertical ViewPagerwidget/scroll/vp_list_demo_page.dart
80Vertical ListView ListViewwidget/scroll/vp_list_demo_page.dart
91BottomSheet effectwidget/scroll/list_link_bottomsheet_demo_page.dart
92DraggableSheet stick effectwidget/scroll/demo_draggable_sheet_stick_page.dart
94Tap-to-explode star(ChatGPT )widget/scroll/star_bomb_button_page.dart
97Adaptive list orientationwidget/scroll/unbounded_listview.dart
98PageViewnestedPageViewwidget/scroll/pageview_in_pageview_demo_page.dart
100link scrollwidget/scroll/link_scroll_page.dart
115Fancy scrolling listwidget/scroll/tornado_scroll_demo.dart
121Shock Wave Chatwidget/scroll/shock_wave_chat_page.dart

Animation (24)

#NamePage File
20Combined widget animations()widget/animation/anima_demo_page.dart
21Expand animationwidget/animation/anima_demo_page2.dart
37Morphing animationwidget/animation/animation_container_demo_page.dart
39Switch animationwidget/animation/anima_demo_page4.dart
43Text pop animationwidget/animation/anima_demo_page5.dart
46Tap animation tipwidget/animation/anim_tip_demo_page.dart
54Book page flip animation(APP)widget/animation/book_page/book_page.dart
55Particle animation effectwidget/animation/particle/particle_page.dart
56Animated background effectwidget/animation/anim_bg_demo_page.dart
62Animated button demowidget/animation/anim_button/anim_button_demo_page.dart
63QQ-style image send animationwidget/animation/anim_progress_img_demo_page.dart
64Tantan-style scan animationwidget/animation/anim_scan_demo_page.dart
65Arc SeekBar(APP)widget/animation/arc_seek_bar_demo_page.dart
66Impressive animation demowidget/animation/anim_bubble_gum.dart
71Animated font package demowidget/animation/anim_text_demo_page.dart
76Widget switch animationwidget/animation/anim_switch_layout_demo_page.dart
96Text tear animationwidget/animation/tear_text_demo_page.dart
104Particle animationwidget/animation/attractor_page.dart
105Fibonacci sphere animationwidget/animation/fibonacci_sphere_page.dart
107Neon slider, full highlightwidget/animation/neon_slider_page.dart
109Cool boom particleswidget/animation/boom_particle_page.dart
116effectwidget/animation/particle_morphing_page.dart
117Cool Christmas treewidget/animation/combined_scene_page.dart
122Particle Effectwidget/animation/particle_effect_screen.dart

Canvas & Shader (15)

#NamePage File
36Blur Gaussian blur effectwidget/canvas/blur_demo_page.dart
38Clock animation drawingwidget/canvas/tick_click_demo_page.dart
57Gesture effectwidget/canvas/matrix_custom_painter_page.dart
67Canvas alarm clockwidget/canvas/canvas_click_demo_page.dart
69Matrix drag interactionwidget/canvas/drag_img_demo_page.dart
75Canvas shadow testwidget/canvas/shader_canvas_demo_page.dart
85Canvas transform demowidget/canvas/transform_canvas_demo_page.dart
90path path png effectwidget/canvas/custom_shader_path_demo_page.dart
99Gesture passwordwidget/basic/gesture_password/gesture_password_demo_page.dart
101glasswidget/canvas/glass_demo_page.dart
102liquid glasswidget/canvas/liquid_glass_demo.dart
103liquid glass 2widget/canvas/liquid_glass_demo2.dart
108Radial lineswidget/canvas/radial_lines_page.dart
125Jaw Controlwidget/canvas/dynamic_jaw_control_page.dart
126Fire Shaderwidget/canvas/fire_shader_demo_page.dart

3D & Visual (17)

#NamePage File
813D perspective cardwidget/visual/card_perspective_demo_page.dart
823D card rotationwidget/visual/card_3d_demo_page.dart
83advanced 3D card rotationwidget/visual/card_real_3d_demo_page.dart
843D Dashwidget/visual/dash_3d_demo_page.dart
86rive Juejin logowidget/visual/anim_juejin_logo_demo_page.dart
87Juejin 3d logowidget/visual/juejin_3d_logo_demo_page.dart
88Juejinenhanced 3d logowidget/visual/juejin_3d_box_logo_demo_page.dart
95Interesting gallerywidget/visual/photo_gallery_demo_page.dart
106Nebula animationwidget/visual/galaxy_scene_page.dart
111Fluid Taichiwidget/visual/stream_taichi_page.dart
112Black hole fluidwidget/visual/black_hole_page.dart
113Taichi particleswidget/visual/taichi_page.dart
118Cool QR codewidget/visual/notion_qrcode_page.dart
119Cool Disco Spherewidget/visual/disco_sphere_page.dart
120Cool Spatial Gridwidget/visual/spatial_grid_page.dart
123Mosaic Scannerwidget/visual/mosaic_scanner_page.dart
124Koi Fishwidget/visual/koi_fish_animation.dart

Code Structure After Home Categorization

  • Route registry: lib/routes/demo_routes.dart
  • Home and category logic: lib/home/demo_home_page.dart
  • Category rule config (keywords/priority/manual overrides): lib/home/demo_category_config.dart
  • Localization resources: lib/l10n/
  • Example files are organized by home categories:
    • lib/widget/basic/
    • lib/widget/scroll/
    • lib/widget/animation/
    • lib/widget/canvas/
    • lib/widget/visual/

Deferred Compatibility Notes

  • deferred-components depends on exact package: paths, so keep paths in sync between pubspec.yaml and lib/routes/demo_routes.dart.
  • When adding/moving demos, update both:
    • deferred import entries in lib/routes/demo_routes.dart
    • deferred-components.libraries in pubspec.yaml

Commands to Run Web with Specified Address Instead of Localhost

flutter run -d web-server --web-hostname 127.0.0.1 --web-port 8989

flutter build web --web-renderer canvaskit  # Specify render mode
flutter build web --release --web-renderer html 

cp -r ./build/app/intermediates/flutter/release/flutter_assets/ ./build/web/assets

License

This project is licensed under the Apache License 2.0 - see the LICENSE file for details.

Star History

Star History Chart

Contributors

Thanks to all contributors! 🎉

Contact


If you find this project helpful, please give it a ⭐️ Star!