nslogx/flutter_easyloading
73.6
Strong · 19 September 2026
81.3k
lines of production code
JavaScript
primary language
1
measurement over time
What this system is
Flutter EasyLoading is a UI library for displaying loading indicators, progress bars, and toast notifications within Flutter applications. It provides a global API to manage various loading states, including custom animations, progress arcs, and toast positioning, while ensuring robust input validation and null safety. The system includes a comprehensive example app and extensive test coverage to demonstrate its capabilities and verify correct behavior across different configurations.
Features
New Flutter EasyLoading example app for version 4.0.0
The repository now includes a complete example application for Flutter EasyLoading 4.0.0. This interactive catalog demonstrates the library's capabilities, including loading states, coalesced progress, toast notifications, request deadlines, custom content, dismissal reasons, callbacks, and various style, mask, placement, animation, and interaction options. The example also showcases all 30 animations exported by flutter\_spinkit 5.2.2 and allows users to configure and test the library's behavior directly.
example · high confidence
Behavioural changes
Android example project migrated to Flutter V2 embedding
The Android example app has been updated to use Flutter's V2 Android embedding. This involves adding a Kotlin-based MainActivity, configuring AndroidManifest.xml with the flutterEmbedding meta-data, and setting up standard launch themes and splash screens. Users running the example on Android will benefit from the updated embedding architecture required by newer Flutter versions.
example/android · high confidence
EasyLoading refactored to support null safety and new configuration APIs
The library has been updated to support null safety, introducing immutable configuration snapshots and a new runtime state machine for managing loading sessions. Users will notice changes in the public API, including the renaming of \EasyLoadingAnimationType\ to \EasyLoadingIndicatorType\, the addition of \EasyLoadingToastPosition\ for toast placement, and new options for custom animations, mask colors, and line widths. The global instance now exposes \isShow\ and \toastPosition\, while internal logic ensures safer dismissal and progress updates.
lib/src · high confidence
Flutter EasyLoading 4.0.2 release with lowered SDK requirements and input validation
This release lowers the minimum supported versions to Dart 3.6 and Flutter 3.27 (previously 3.8/3.32) while preserving the 4.0 API. It also adds runtime validation for display inputs, throwing RangeError for invalid progress values and ArgumentError/StateError for invalid layout, duration, or custom-mode configurations, ensuring errors are caught early across all build modes.
(repo-wide) · high confidence
Refactored loading UI components and introduced custom progress indicator
The loading widget layer has been restructured to support a new, customizable progress indicator. A new \EasyLoadingProgress\ widget has been added, allowing users to display a circular progress arc with configurable color, size, and stroke width. The internal implementation of the loading container and animation logic has been refactored, moving animation definitions to a dedicated \animation.dart\ file and simplifying the indicator logic to rely on explicit parameters rather than global instance state. This change improves the flexibility of the loading UI, enabling more granular control over the appearance of progress states.
lib/src/widgets · high confidence
Test coverage
Expanded test coverage for EasyLoading initialization, public API, and widget behavior
Added comprehensive tests for the flutter\_easyloading package, including verification that show operations throw a StateError if EasyLoading.init is missing, validation that the public facade methods (init, show, showProgress, showSuccess, showError, showInfo, showToast, dismiss, and callbacks) maintain their expected signatures, and widget tests confirming that the builder correctly displays and dismisses loading indicators with status callbacks. The tests also verify that all flutter\_spinkit 5.2.2 indicator types are properly exposed.
test · high confidence
Dependencies
Update example project to modern Gradle/Kotlin and upgrade package dependencies
The example application has been migrated to use the new Flutter Gradle plugin with Kotlin DSL (build.gradle.kts), requiring Java 17 and Kotlin 2.3.20. The main package dependencies have been updated to require Dart SDK \>=3.6.0 and Flutter \>=3.27.0, with the flutter\_spinkit dependency upgraded from version 4.1.1+1 to 5.2.2 and flutter\_lints added as a dev dependency. The package version has been bumped to 4.0.2 with updated metadata and repository information.
(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 74.
Lenses
- Code Health 98
- Architecture 100
- Maturity 58
- Readiness 77
- Security 95
- Domain Modelling 100
Changes since last survey
- 134 commits — 129 feature/other, 5 fixes
By area
- (root) — 74 commits
- lib/src — 30 commits
- example/lib — 7 commits
- (repo) — 5 commits
- example/ios — 4 commits
- .github/FUNDING.yml — 2 commits
- .github/workflows — 2 commits
- .github/ISSUE_TEMPLATE — 1 commit
- .vscode/launch.json — 1 commit
- docs/assets — 1 commit
- example/android — 1 commit
- example/example — 1 commit
- example/macos — 1 commit
- example/pubspec.lock — 1 commit
- example/pubspec.yaml — 1 commit
- images/gif04.gif — 1 commit
- images/jetbrains.png — 1 commit
Notable commits
- fix: Fix syntax errors
- fix: fixed (https://github.com/huangjianke/flutter_easyloading/issues/8)
- fix: fixed #7
- fix: fixed https://github.com/huangjianke/flutter_easyloading/issues/58
- fix: update v2.1.3 (fixed: https://github.com/huangjianke/flutter_easyloading/issues/64)
- change: 3.0.4
- change: Create FUNDING.yml
- change: Create greetings.yml
- change: Merge branch 'develop'
- change: Merge pull request #115 from LiLinXiang/develop
- change: Merge pull request #121 from joaovvrodrigues/develop
- change: Merge pull request #171 from hkloudou/develop
- change: Merge pull request #3 from sckoh/dev
- change: Release 4.0.0
- change: Release 4.0.1
- change: Release 4.0.2
- change: Remove unavailable popularity badge
- change: Update CHANGELOG.md
- change: Update CHANGELOG.md
- change: Update README-zh_CN.md
- …and 114 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
nslogx/flutter_easyloading 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 17b7a63f802e03a21a3140c4441a4cee918774d4 — 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.