whosramoss/clean-dart-github
55.8
Adequate · 20 September 2026
5.5k
lines of production code
Dart
primary language
4
measurements over time
What this system is
This system is a collection of Flutter applications and a shared library designed to fetch and display GitHub user profiles, repositories, and language statistics. It serves as a comparative showcase of different state management and architectural patterns, including BLoC, GetX, Provider, MobX, and InheritedWidget. The shared 'github\_commons' module provides the core domain logic and API integration, while the individual apps demonstrate how to consume this data using their respective frameworks.
Features
Add GitHub Inherited Flutter application scaffold
Introduces a new Flutter application named 'github\_inherited' that implements a GitHub user lookup feature. The app allows users to enter a username on a registration page to fetch and display their profile, repositories, and associated languages on a subsequent profile page. This location provides the Android and iOS platform configurations, the main entry point, and the presentation layer which utilizes an InheritedWidget to manage and propagate GitHub API actions (such as fetching profiles and repositories) throughout the widget tree.
_github\_inherited, github\mobx · high confidence
Add GitHub provider Flutter application
Introduces a new Flutter application for the GitHub provider, including the iOS and Android platform configurations, the main entry point, and the core presentation layer. The app features a registration page for entering a GitHub username and a profile page that displays the user's repositories and languages, driven by a \GithubProvider\ state manager that handles data fetching and error states.
_github\provider · high confidence
Added Android project scaffolding for GitHub provider and triple apps
New Android project structures have been added for the \github\_provider\ and \github\_triple\ applications. This includes the necessary \AndroidManifest.xml\ files, \MainActivity\ Kotlin classes, and resource definitions for launch themes and splash screens, enabling these Flutter apps to be built and run on Android devices.
_github\_provider/android, github\triple/android · high confidence
Added domain usecases for GitHub profile, repositories, and languages
New domain-layer usecases have been introduced to support GitHub data retrieval and processing. GetProfile and GetRepositories now provide structured access to user profile details and repository lists via the IGithubRepository interface. Additionally, GetLanguages aggregates repository language data, calculating usage percentages and icons, while also accounting for repositories without an assigned language (typically forks).
_github\_commons/lib/module/domain/usecases/get\_languages, github\_commons/lib/module/domain/usecases/get\_profile, github\_commons/lib/module/domain/usecases/get\repositories · high confidence
Initial release of github\_commons library
The new github\_commons module provides a reusable Flutter library for GitHub integration, featuring domain entities for user profiles, repositories, and languages, along with infrastructure for fetching data from the GitHub API via Dio. It includes UI components for displaying profile information and repository lists, a theme definition, and routing utilities, exposing a clean API for consuming applications to integrate GitHub features.
_github\commons · high confidence
Initial release of the Github Triple Flutter application
This change introduces the complete source code for the 'github\_triple' Flutter application, establishing the project's foundational structure and core functionality. The update includes the standard Flutter project scaffolding for Android and iOS platforms, such as the Xcode project configuration, Gradle wrapper, and platform-specific metadata. On the application side, it implements a modular architecture using the Modular package for routing and dependency injection, and the flutter\_triple package for state management. The app features a 'GithubRegisterPage' for user input and a 'GithubProfilePage' for displaying results, backed by a 'GithubTripleStore' that orchestrates data fetching via injected services (Dio, repositories) to retrieve and present GitHub profile and repository data.
_github\_bloc, github\triple · high confidence
Introduce GetX-based GitHub client application
Added a new Flutter application named 'github\_getx' that implements a GitHub profile viewer using the GetX state management and navigation library. The app features a registration page for entering a username and a profile page that displays user details, repositories, and language statistics. It utilizes GetX for dependency injection (binding Dio, datasources, repositories, and use cases) and reactive state management to handle loading states and errors.
_github\getx · high confidence
Test coverage
Added unit tests for GitHub data retrieval use cases
Added unit tests for the GetLanguages, GetProfile, and GetRepositories use cases in the github\_commons module. The test suite verifies that GetLanguages correctly aggregates language entities from a list of repositories, while GetProfile and GetRepositories are tested against mocked GithubRepository implementations to ensure they return the expected GithubProfileEntity and List\<GithubRepositoryEntity\> respectively.
_github\_commons/test/domain/usecases/get\_languages, github\_commons/test/domain/usecases/get\_profile, github\_commons/test/domain/usecases/get\repositories · high confidence
Dependencies
Initialize Flutter project scaffolding and dependency manifests
This change adds the initial build configuration and dependency manifests for multiple Flutter application variants (github\_bloc, github\_getx, github\_inherited, github\_mobx, github\_provider) and a shared library (github\_commons). It establishes the Android Gradle build scripts (app and project level), iOS Podfiles, and Dart pubspec files, locking in specific versions for core packages such as bloc (8.1.0), flutter\_bloc (8.1.1), get (4.6.5), mobx (2.1.4), flutter\_mobx (2.0.6+5), dio (5.0.0 in commons, 4.0.6 in apps), and flutter\_modular (5.0.3).
(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
Score
- CAI 60 → 56 (-3.8)
- Rubric changed (rubric-2026.08.17 → rubric-2026.09.15) — scores are not directly comparable.
Lenses
- Code Health 100 → 100 (-0.4)
- Architecture 100 → 98 (-2.4)
- Maturity 79 → 66 (-13.0)
- Readiness 24 → 24 (+0.0)
- Security 100 → 98 (-1.6)
- Domain Modelling 100 → 100 (+0.0)
Resolved (8)
- Coverage not included — suite not readable by the collector
- Dependency hygiene not measured — no supported dependency manifest was read
- Further orphaned files (smaller)
- LLM evaluation failed
- No exposed public API
- Test reliability not included
- complexity unreadable for .dart, .kt, .swift — churn × complexity hotspots could not be measured
- single-maintainer — knowledge-concentration (bus factor) risk
New (7)
- Dependency hygiene PARTLY measured — Maven/Gradle declarations read, no dependency graph resolved
- Documentation: no installation or build instructions (README.md)
- Duplicated block (15 lines × 2) (github_commons/lib/module/domain/entities/github_repository_entity.dart)
- Duplicated block (15 lines × 2) (github_mobx/lib/app/app_widget.dart)
- Duplicated block (19 lines × 2) (github_commons/lib/module/domain/entities/github_profile_entity.dart)
- Duplicated block (9 lines × 2) (github_commons/lib/module/domain/entities/github_profile_entity.dart)
- High CVE: [GHSA redacted] (github_bloc/pubspec.lock)
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
Survey your own repository
whosramoss/clean-dart-github 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 20 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 db228cdea82a95e42c5ffa2741a0848b9fee03e4 — 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-28e75b8e3254.