Skip to content
CAI
Software that uses CAICheck a score

CarGuo/gsy_flutter_demo

61.4

Adequate · 19 September 2026

32.5k

lines of production code

Dart

primary language

1

measurement over time

CAI band scale
CAI lens gauges

What this system is

This system is a comprehensive Flutter demonstration application designed to showcase a wide variety of UI components, animations, and platform capabilities. It provides over 120 distinct demo pages covering basic widgets, scrolling behaviors, canvas shaders, and visual effects, organized with category filtering and search functionality. The application supports multi-language localization and is built to run across mobile, desktop, and web platforms, including Android, iOS, Linux, Windows, macOS, and web with PWA support.

How it got here

2019 — Flutter 3.x migration and platform modernization

13 changes.

The project was initialized and migrated to Flutter 3.x, upgrading Android and iOS build systems to modern standards including Gradle 8, CocoaPods, and iOS 13+ deployment targets. This period established a comprehensive demo catalog with Material 3 theming, localization support, and new animation widgets, while adding web PWA capabilities.

2025–2026 — Desktop expansion and UI restructuring

7 changes.

The project expanded its native desktop support by adding runners for Linux, Windows, and macOS, while introducing new GLSL shader demos for visual effects. Concurrently, the application's interface was restructured with a localized, category-filtered home page and optimized deferred loading for demo routes.

Features

Add native desktop runners for Linux and Windows

This change adds the native desktop platform code for the \gsy\_flutter\_demo\ application, enabling it to run on Linux (via GTK) and Windows (via Win32). The diff introduces the full CMake build configurations, application entry points, and window management logic for both platforms. On Linux, the runner sets up a GTK application with the ID \com.gsy.shuyu.gsy\_flutter\_demo\ and a default window size of 1280x720. On Windows, the runner configures a Win32 window with high-DPI awareness, dark mode support, and console attachment for debugging. Both platforms are configured to register the \rive\_common\ plugin and bundle the necessary Flutter assets and libraries.

linux, windows · high confidence

Added English and Chinese localization support

The app now supports English and Chinese languages. This change introduces the localization infrastructure (ARB files and generated Dart classes) for UI strings such as the app title, home subtitle, search hints, and category labels, along with a utility for translating route titles from Chinese to English.

lib/l10n · high confidence

Added web entry point and PWA manifest for gsy\_flutter\_demo

The web location now includes the primary HTML entry point (index.html) and the Progressive Web App manifest (manifest.json). The HTML file provides a loading spinner while the Flutter application (main.dart.js) initializes, and the manifest configures the app as a standalone PWA with specific theme colors, icons, and orientation settings.

web · high confidence

Initial macOS platform support added

The macOS platform is now supported for the Flutter application. This change introduces the complete native macOS project structure, including the Xcode project configuration, build schemes, and workspace settings. It adds the necessary entry points such as the AppDelegate and MainFlutterWindow, configures the app bundle with the identifier com.gsy.shuyu.gsyFlutterDemo and name gsy\_flutter\_demo, and sets up CocoaPods integration for dependency management. Additionally, it includes the GeneratedPluginRegistrant to handle plugin registration, specifically initializing the Rive plugin, and provides default test scaffolding.

macos · high confidence

New animation demo widgets added to the library

Added a collection of new demo pages and custom widgets in lib/widget/animation to showcase various Flutter animation techniques. These include animated backgrounds and waves (AnimBgDemoPage), bubble gum particle effects (AnimBubbleGum), animated play and loading buttons (AnimButtonDemoPage, LoadingAnimButton, PlayAnimButton), image progress indicators (AnimProgressImgDemoPage), scan/ripple effects (AnimScanDemoPage), layout switching animations (AnimSwitchLayoutDemoPage), text animations using the animated\_text\_kit package (AnimTextDemoPage), slide-in tips (AnimTipDemoPage), and several general animation examples (AnimaDemoPage, AnimaDemoPage2, AnimaDemoPage4, AnimaDemoPage5).

lib/widget · high confidence

New demo routes file for deferred loading of UI components

A new \demo\_routes.dart\ file has been added to the \lib/routes\ directory, establishing a centralized routing configuration for the application's demo section. This file imports a comprehensive list of demo pages—covering animations, basic widgets, canvas drawing, scrolling behaviors, and visual effects—using Dart's deferred loading mechanism to optimize initial load times. This change introduces the structural wiring for these specific demo components without altering the underlying widget implementations.

lib/routes · high confidence

New shader demos for elastic, fire, liquid glass, mosaic, and shockwave effects

Added five new GLSL fragment shaders to the shaders directory, providing visual demos for elastic deformation, fire rendering, liquid glass distortion, mosaic scanning, and shockwave propagation. These files (elastic.frag, fire.frag, liquid\_glass.frag, liquid\_glass2.frag, mosaic\_wave.frag, shockwave.frag) implement specific visual effects using Flutter's runtime effect API, allowing users to see these graphical capabilities in action.

shaders · high confidence

Project initialization with Flutter 3.38.4 and comprehensive demo catalog

The repository has been initialized as a collection of independent Flutter examples, establishing a baseline configuration that requires Flutter SDK version 3.35 or above (enforced via .fvmrc with version 3.38.4). This initial commit adds the MIT license, project analysis options, localization configuration, and a detailed README cataloging over 120 demo pages across categories such as basic widgets, scrolling behaviors, animations, and canvas shaders.

(repo-wide) · high confidence

Behavioural changes

9 commits (0 fixes) modifying static

A change to existing behaviour in static — 9 commits, 11 files.

static · medium confidence · unverified

Android embedding v2 migration and Gradle upgrade

The Android module has been updated to use Flutter's v2 embedding, which changes the MainActivity to extend FlutterActivity without manual plugin registration and adds the required flutterEmbedding meta-data to the manifest. This migration also includes adding necessary permissions (Internet, Write External Storage, Wake Lock), setting the activity as exported, and upgrading the Gradle wrapper from version 4.10.2 to 8.7.

android · high confidence

App restructured with localization support and Material 3 theming

The application root has been refactored to support multi-language localization (English and Chinese) via flutter\_localizations, allowing users to toggle the display language. The UI theme has been updated to use Material 3, and the home page now uses a dedicated DemoHomePage component instead of the previous hardcoded list. Additionally, a debug-mode observer has been added to log route information changes.

lib · high confidence

New demo home page with category filtering and localization

The home page has been refactored to include a new demo listing interface that supports localization and categorization. Users can now filter demos by category (Basic, Scroll, Animation, Canvas, Visual) using keyword-based matching logic defined in the new demo category configuration. The interface includes a search field to filter by title or route name, a category selector, and handles web hash-based routing for direct navigation to specific demos.

lib/home · high confidence

Updated iOS minimum deployment target and added LLDB debugging support

The iOS minimum deployment target has been raised from 8.0 to 13.0, meaning the app will no longer support devices running older iOS versions. Additionally, LLDB debugging integration has been added to the Flutter tooling via new helper scripts, and the build configurations now conditionally include CocoaPods support files to facilitate dependency management.

ios/Flutter · high confidence

Updated iOS workspace configuration and settings

The iOS workspace has been initialized with standard Xcode configuration files, including a workspace settings file that disables previews and an IDE workspace check file. Additionally, the workspace data file was updated to reference the project using a self-location, ensuring the workspace correctly points to its own project file.

ios/Runner.xcodeproj/project.xcworkspace · high confidence

iOS Runner updated for modern platform compatibility

The iOS runner configuration has been updated to align with newer Flutter and iOS platform requirements. The application entry point in AppDelegate.swift now uses the @main attribute instead of @UIApplicationMain, reflecting modern Swift conventions. Additionally, Info.plist has been updated to include keys that disable minimum frame duration on phones, support indirect input events, and indicate that UI design does not require compatibility mode, ensuring the app behaves correctly on newer iOS versions and devices.

ios/Runner · high confidence

iOS build system migrated to CocoaPods and updated Xcode project format

The iOS project configuration has been updated to use CocoaPods for dependency management, replacing the previous manual embedding of Flutter and App frameworks with a structured Pods group and build phases (including manifest lock checks and framework embedding). The Xcode project file format version was upgraded from 46 to 54, and the project attributes were updated to reflect Xcode 15.10 compatibility. Additionally, the debug and launch schemes now include a custom LLDB init file for Flutter tooling and have GPU validation mode enabled for debugging.

ios/Runner.xcodeproj · high confidence

iOS workspace configuration updated for CocoaPods and build settings

The iOS workspace now includes the Pods project, enabling CocoaPods dependency integration within the workspace. Additionally, the workspace settings have been updated to disable Xcode Previews and include the standard IDE workspace check file, ensuring consistent build environment configuration.

ios/Runner.xcworkspace · high confidence

Test coverage

Added initial iOS test target; Updated widget test to use const constructor.

Dependencies

Migrate to Flutter 3.x, Android Gradle Plugin 8, and modernize build configuration

The project has been upgraded to support the Dart 3 SDK and Flutter 3.x, requiring Android build tools to migrate to the new Kotlin DSL (Gradle 8) with Android Gradle Plugin 8.7.3 and Kotlin 2.1.0. This includes switching to the \dev.flutter.flutter-gradle-plugin\, enabling AndroidX, and updating the iOS/macOS Podfiles to use the modern \flutter\_ios\_podfile\_setup\ helpers. Additionally, the app version was bumped to 4.1.0, and the dependency list was refreshed with newer versions of packages like \rive\, \animated\_text\_kit\, and \simple\_animations\, while also introducing deferred components and custom shaders for advanced visual effects.

(dependencies) · high confidence

Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.

How this codebase got here

Baseline

  • First survey — no prior run to compare against. CAI 61.

Lenses

  • Code Health 89
  • Architecture 99
  • Maturity 60
  • Readiness 48
  • Security 76
  • Domain Modelling 100

Changes since last survey

  • 300 commits — 282 feature/other, 18 fixes

By area

  • lib/widget — 120 commits
  • (root) — 116 commits
  • lib/main.dart — 32 commits
  • .github/workflows — 12 commits
  • (repo) — 8 commits
  • android/app — 4 commits
  • ios/Flutter — 2 commits
  • ios/Runner.xcodeproj — 2 commits
  • docs/images — 1 commit
  • ios/Runner — 1 commit
  • macos/Runner — 1 commit
  • web/index.html — 1 commit

Notable commits

  • fix: fix
  • fix: fix
  • fix: fix
  • fix: fix #17
  • fix: fix 2.0
  • fix: fix 3.27
  • fix: fix custom sliver
  • fix: fix error
  • fix: fix iOS
  • fix: fix warning
  • fix: fix warnning
  • fix: update fix #20
  • fix: update fix 2.2
  • fix: update fix loadLibrary bug when release
  • fix: update fix new flutter sdk
  • fix: update fix new flutter sdk
  • fix: update fix new flutter sdk
  • fix: update fix null safety
  • change: 3.10
  • change: Add Jaw Control and Fire Shader demos
  • …and 280 more

Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.

Survey your own repository

CarGuo/gsy_flutter_demo was measured the same way every project in this corpus was: the same rubric, at a pinned commit, with the result published in full. Point a surveyor at a repository you know and see whether you agree with it.

About this page

  • The score is its most recent published measurement, taken on 19 September 2026 at a pinned commit. It is not a live figure and does not change until the project is measured again.
  • Measured at commit 80bbddb25cf728ecca32984f59fc40331897dbab — the exact code this score is about.
  • Scored under rubric-2026.09.15 — the same rubric and the same method as every other entry in this index.
  • Measured by watchdog.canine.dev using codehealth-analyzer preprod-13a154b7f5d1.