glorylab/wave
67.9
Adequate · 19 September 2026
2.3k
lines of production code
Dart
primary language
1
measurement over time
What this system is
This system is a Flutter library that renders customizable wave animations using configurable layers, colors, and gradients. It provides a core widget for visualizing these waves and includes an interactive example application to demonstrate and generate configuration code. The package supports modern Dart versions and includes comprehensive testing for configuration validation and rendering performance.
Features
Add interactive Wave Generator example project
An example application has been added to demonstrate the \wave\ package. This interactive generator allows users to adjust configuration modes (SingleConfig, RandomConfig, CustomConfig), palettes, layer counts, wave height, amplitude, animation speed, and loop behavior, with immediate preview updates and live frame metrics. It includes a 'Code' feature to inspect and copy the generated Flutter widget, and supports running locally on web (Chrome) or viewing a live demo.
example · high confidence
Add web entry point for the example application
The example application now includes the necessary \index.html\ and \manifest.json\ files to support web deployment. This addition enables the app to be served as a standalone web application with proper metadata, icons, and Flutter web initialization logic.
example/web · high confidence
New Wave Generator demo application with interactive configuration
The example/lib location now contains a complete, null-safe Flutter demo application (main.dart) that serves as an interactive wave generator. Users can now explore the library's capabilities through a UI that supports single, random, and custom configuration modes, allowing them to adjust parameters such as layers, height, amplitude, and speed. The demo includes built-in color palettes (Ocean, Sunset, Mint, Violet), supports Material 3 theming, and provides functionality to copy generated code snippets to the clipboard or view the source code in a dialog.
example/lib · high confidence
New wave animation configuration and widget implementation
This change introduces the core configuration and widget files for a wave animation feature. The \config.dart\ file defines a \ColorMode\ enum (single, random, custom) and a \Config\ base class with validation logic for layer counts, durations, height percentages, and opacity percentages. It also introduces \CustomConfig\ for explicit per-layer colors or gradients. The \widget.dart\ file contains the main widget implementation, which includes the Apache License 2.0 header and appears to be the primary UI component for rendering these waves.
lib/src · high confidence
Architecture
Refactored wave library into modular source files
The wave animation library has been restructured from a single monolithic file into separate modules. The main entry point now exports configuration helpers from \src/config.dart\ and the widget implementation from \src/widget.dart\, improving code organization and maintainability for users integrating the library.
lib · high confidence
Behavioural changes
Wave package v0.2.5: Performance improvements and Dart 3 support
This release improves \WaveWidget\ paint performance for long-duration, high-amplitude wave configurations and adds runtime validation for custom gradient and layer configurations. It also expands Dart SDK compatibility to allow Dart 3, avoids deprecated color opacity APIs, and adds default rendering support for \SingleConfig\ and \RandomConfig\. The package now includes CI coverage for Flutter 3.7.12 and the latest stable Flutter, along with improved documentation and a refreshed example app.
(repo-wide) · high confidence
Test coverage
Added benchmark test for long-duration wave animation performance; Added empty widget test scaffold; Added unit and widget tests for wave configuration validation and rendering.
Dependencies
Update example app and main package dependencies for null safety and modern Dart SDK
The example application now includes a dedicated pubspec.yaml with dependencies on url\_launcher (^6.1.10) and flutter\_lints (^2.0.0), while the main package's pubspec.yaml has been updated to require Dart SDK \>=2.12.0 \<4.0.0, reflecting a migration to null safety. The pubspec.lock has been regenerated to resolve transitive dependencies to newer versions (e.g., analyzer 4.1.0, async 2.10.0) and includes the test package (^1.16.5) in dev\_dependencies.
(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 68.
Lenses
- Code Health 100
- Architecture 87
- Maturity 55
- Readiness 72
- Security 77
- Domain Modelling 100
Changes since last survey
- 85 commits — 78 feature/other, 7 fixes
By area
- (root) — 33 commits
- (repo) — 22 commits
- .github/workflows — 9 commits
- example/web — 5 commits
- example/assets — 2 commits
- example/lib — 2 commits
- lib/config.dart — 2 commits
- lib/src — 2 commits
- lib/wave.dart — 2 commits
- .github/FUNDING.yml — 1 commit
- .github/ISSUE_TEMPLATE — 1 commit
- .github/dependabot.yml — 1 commit
- assets/wave_banner.png — 1 commit
- docs/cloudflare-workers.md — 1 commit
- example/pubspec.yaml — 1 commit
Notable commits
- fix: Fix README.md
- fix: Fix config validation and animation lifecycle
- fix: Fix the path of gif.
- fix: Merge pull request #57 from glorylab/codex/fix-config-validation-lifecycle
- fix: Merge pull request #64 from glorylab/codex/fix-pub-publish-permissions
- fix: Merge remote-tracking branch 'origin/master' into codex/fix-config-validation-lifecycle
- fix: Revert "Create CNAME"
- change: Add Cloudflare Workers static assets deployment
- change: Add backgroundImage To Wave Params
- change: Add example project.
- change: Add options of setting blur and gradient. Resolved #1 and resolved #3 .
- change: Add web directory
- change: Added option to stop animation by duration
- change: Added options for custom waves and remove the image from WaveView.
- change: Allow Dart 3 package consumers
- change: Allow pub.dev publish OIDC token
- change: Bump version
- change: Bump version to 0.1.0
- change: Cancel timer on dispose
- change: Change banner
- …and 65 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
glorylab/wave 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 618be5ac0e7e005918a1ad47e4989cec1a47482c — 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.