jogboms/flutter_spinkit
67.2
Adequate · 23 September 2026
3.5k
lines of production code
Dart
primary language
5
measurements over time
What this system is
This system is a Flutter library that provides a comprehensive collection of animated loading spinners for user interfaces. It exposes a wide variety of spinner widgets, each with corresponding widget tests to ensure correct rendering and lifecycle management. The project also includes a fully configured example application that demonstrates the library's capabilities across Android, iOS, and web platforms.
Features
Add Flutter example app with comprehensive spinner showcase
The example/lib directory now contains a complete Flutter application that demonstrates the SpinKit library's capabilities. The app features a main entry point that navigates to a showcase screen displaying a grid of all available spinners, including the newly added SpinKitPouringHourGlass, SpinKitWaveSpinner, SpinKitPulsingGrid, SpinKitFadingCube, and others. The showcase screen uses a responsive grid layout that adapts the number of columns based on screen width, and the workspace component demonstrates custom builder usage with the SpinKitFadingCircle spinner.
example/lib · high confidence
Add new loading spinner widgets
The library introduces a suite of new loading spinner widgets, including SpinKitChasingDots, SpinKitCircle, SpinKitCubeGrid, SpinKitDancingSquare, SpinKitDoubleBounce, SpinKitDualRing, SpinKitFadingCircle, SpinKitFadingCube, SpinKitFadingFour, SpinKitFadingGrid, SpinKitFoldingCube, SpinKitHourGlass, SpinKitPianoWave, SpinKitPouringHourGlass, SpinKitPouringHourGlassRefined, and SpinKitPulse. These provide various animated visual indicators for loading states.
lib/src · high confidence
Added example project scaffolding and configuration
The example directory now includes the standard Flutter project structure, including .gitignore, .metadata, README.md, analysis\_options.yaml, and example.iml. This provides a complete, configured starting point for the example application, with Dart/Flutter-specific exclusions, linting rules (including trailing commas), and IDE metadata.
example · high confidence
Expanded library with new spinner components
The flutter\_spinkit library has been significantly expanded to include a wide variety of new loading spinners. The previously minimal API now exports 28 distinct spinner implementations, including ChasingDots, Circle, CubeGrid, DancingSquare, DoubleBounce, DualRing, FadingCircle, FadingCube, FadingFour, FadingGrid, FoldingCube, HourGlass, PianoWave, PouringHourGlass, Pulse, PulsingGrid, PumpingHeart, Ring, Ripple, RotatingCircle, RotatingPlain, SpinningCircle, SpinningLines, SquareCircle, ThreeBounce, ThreeInOut, WanderingCubes, and Wave. Users can now import these specific spinner widgets directly from the main library file.
lib · high confidence
iOS example app project files added
The iOS example app's Xcode project structure has been added, including the \project.pbxproj\ build configuration, workspace settings, and the \Runner.xcscheme\ for build and run actions. This provides the necessary Xcode project files to build and run the example app on iOS.
example/ios/Runner.xcodeproj · high confidence
iOS example app scaffolding added
The iOS portion of the example app has been initialized with the standard Flutter project structure. This includes the Xcode project configuration files (Info.plist, AppFrameworkInfo.plist), the Swift AppDelegate, and the necessary asset catalogs for app icons and launch screens. These changes provide the complete iOS environment required to build and run the example application on iOS devices.
example/ios/Runner, example/macos · high confidence
Behavioural changes
Initialized iOS example project workspace configuration
The iOS example project's workspace configuration has been established, including the main workspace file, workspace check settings, and workspace settings that disable previews. This sets up the foundational structure for the iOS build environment.
example/ios/Runner.xcworkspace · medium confidence
Project configuration and documentation updates
The project now includes an \analysis\_options.yaml\ file that enforces Flutter linting rules and error handling, alongside a \Makefile\ with targets for test coverage and HTML reports. The \.gitignore\ file has been expanded to exclude IDE-specific files, build artifacts, and coverage directories. Additionally, the \README.md\ has been significantly updated with installation instructions, usage examples, and a showcase of available spinners, while the \.iml\ file was updated to exclude example build directories.
(repo-wide) · high confidence
Updated Android example project with AndroidX and V2 embedding
The Android example project has been upgraded to use AndroidX and the V2 Android embedding, which is required for modern Flutter development. This includes new Android manifest files, a Kotlin-based MainActivity, and updated resource styles for launch and normal themes. Additionally, the project now includes a web entry point (index.html) and a PWA manifest (manifest.json) to support web and PWA capabilities.
example/android · high confidence
Test coverage
Added widget tests for all spinners
Added widget tests for all spinners, including ChasingDots, Circle, CubeGrid, DancingSquare, DoubleBounce, DualRing, FadingCircle, FadingCube, FadingFour, FadingGrid, FoldingCube, HourGlass, PianoWave, PouringHourGlass, PouringHourGlassRefined, Pulse, PulsingGrid, PumpingHeart, Ring, Ripple, RotatingCircle, RotatingPlain, SpinningCircle, SpinningLines, SquareCircle, ThreeBounce, and ThreeInOut. Tests verify that each spinner renders correctly with and without Material, with color, with itemBuilder, and that tickers are properly disposed.
test · high confidence
Dependencies
Updated example project dependencies and Android build configuration
The example project has been updated with modernized dependencies and build configurations. The root pubspec.lock was removed, and the example's pubspec.yaml was updated to specify Dart SDK \>=2.15.0 and include flutter\_lints ^6.0.0 as a dev dependency. The Android build files (build.gradle, settings.gradle, gradle.properties) were added or updated to use AndroidX, Kotlin 1.3.50, and Gradle 4.1.0, ensuring the example app is compatible with current Flutter and Android standards.
(dependencies) · medium 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
This is the PUBLIC form of this artifact. Findings are listed in full, but the details of SECURITY findings — which rule fired, in which file, on which line, and how to fix it — are deliberately withheld, and any secret-scanner results are excluded entirely. Where detail is absent here it was REMOVED FOR PUBLICATION; it is not missing from the analysis. The complete artifact is available from the repository owner.
Score
- CAI 63 → 67 (+4.2)
- Rubric changed (rubric-2026.08.19 → rubric-2026.09.15) — scores are not directly comparable.
Lenses
- Code Health 100 → 97 (-3.0)
- Architecture 100 → 100 (+0.0)
- Maturity 49 → 49 (+0.0)
- Readiness 57 → 69 (+12.3)
- Security 83 → 93 (+9.3)
- Domain Modelling 100 → 100 (+0.0)
Resolved (9)
- Coverage not included — suite not readable by the collector
- Dependency hygiene not measured — dependency manifest found but not parsed for hygiene
- High: security finding (details withheld)
- High: security finding (details withheld)
- High: security finding (details withheld)
- No exposed public API
- Off-boarding risk: anonymized user #1
- Test reliability not included
- complexity unreadable for .dart, .kt, .swift — churn × complexity hotspots could not be measured
New (32)
- Dependency hygiene PARTLY measured — Maven/Gradle declarations read, no dependency graph resolved
- Documentation: no architecture or design documentation (README.md)
- Duplicated block (11 lines × 11) (lib/src/dual_ring.dart)
- Duplicated block (11 lines × 2) (lib/src/double_bounce.dart)
- Duplicated block (11 lines × 2) (lib/src/piano_wave.dart)
- Duplicated block (11–16 lines × 3) (lib/src/fading_grid.dart)
- Duplicated block (12 lines × 2) (lib/src/hour_glass.dart)
- Duplicated block (12 lines × 2) (lib/src/pouring_hour_glass.dart)
- Duplicated block (13 lines × 2) (lib/src/piano_wave.dart)
- Duplicated block (13 lines × 2) (lib/src/piano_wave.dart)
- Duplicated block (13 lines × 2) (lib/src/piano_wave.dart)
- Duplicated block (13 lines × 4) (lib/src/ring.dart)
- Duplicated block (14 lines × 2) (lib/src/piano_wave.dart)
- Duplicated block (15 lines × 2) (lib/src/rotating_circle.dart)
- Duplicated block (16 lines × 4) (lib/src/dancing_square.dart)
- Duplicated block (18 lines × 2) (lib/src/pouring_hour_glass.dart)
- Duplicated block (18 lines × 2) (lib/src/rotating_circle.dart)
- Duplicated block (21 lines × 2) (lib/src/pouring_hour_glass.dart)
- Duplicated block (32–33 lines × 2) (lib/src/pouring_hour_glass.dart)
- Duplicated block (5 lines × 4) (lib/src/fading_four.dart)
- …and 12 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
jogboms/flutter_spinkit 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 23 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 a813e6f7150a24319b11ac2dd91bf3cab2303fd5 — 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-955b9cee9818.