yubo725/flutter-osc
52.8
Adequate · 23 September 2026
4k
lines of production code
Dart
primary language
5
measurements over time
What this system is
This is a Flutter-based mobile application that manages user authentication via a WebView and supports customizable theming. It provides a suite of reusable UI components and handles API communication through updated endpoints. The system is currently maintained with updated dependencies and build configurations for both Android and iOS platforms.
Features
Introduce customizable app theme and new login flow
Users can now change the app's primary color via a new 'Change Theme' page, which broadcasts a \ChangeThemeEvent\ to update the UI across the app. The login experience is updated with a new \NewLoginPage\ that handles authentication via a WebView, replacing the previous \LoginPage\ in several areas. Additionally, the \TestPage\ and \UserInfoDetailPage\ have been removed, and the main application now initializes the selected theme color on startup.
lib/pages · high confidence
New reusable UI components and updated widget library
The widgets library now includes two new reusable components: CommonButton, a styled button widget, and SlideViewIndicator, a dot-based page indicator for carousels. The existing SlideView widget has been updated to integrate with the new indicator via a global key, allowing the indicator to reflect the current slide. Additionally, the widget library underwent a general cleanup, removing redundant 'new' keywords and updating navigation calls to use the modern Flutter API style.
lib/widgets · high confidence
Behavioural changes
6 commits (1 fix) modifying apk
A change to existing behaviour in apk — 6 commits (1 fix), 1 file.
apk · medium confidence · unverified
Project license and documentation updates
The repository now includes an MIT license file, and the README has been updated to reflect that the project is no longer maintained, with older Flutter/Dart versions noted. Screenshot paths and descriptions were also adjusted to show the theme switching feature and update image references.
(repo-wide) · high confidence
Transparent status bar on Android Lollipop and above
On Android devices running Lollipop (API 21) or higher, the status bar background is now set to transparent, allowing the app content to extend behind the status bar for a more immersive visual experience.
android · high confidence
Updated API endpoints and constants to new domain and naming conventions
The application's API configuration and constants have been updated to use the new domain 'osc.yubo.me' instead of the previous 'osc.yubo725.top' and 'yubo725.top' domains. Additionally, all static string constants in 'lib/api/Api.dart' and 'lib/constants/Constants.dart' have been renamed from UPPER\_Snake\_CASE to camelCase (e.g., 'NEWS\_LIST' to 'newsList'), and the 'eventBus' field is now explicitly typed as 'final'.
lib/api, lib/constants · high confidence
iOS build configured for automatic code signing and provisioning
The iOS project has been updated to use automatic code signing and provisioning profiles. The build settings now specify a specific development team (4ZACZ79DU9) and set the code signing style to 'Automatic'. Additionally, the 'flutter\_assets' resource bundle has been removed from the build, and the path to the Pods framework script has been updated to use the PODS\_ROOT variable.
ios · medium confidence
Dependencies
Updated Flutter dependencies and iOS build configuration
The project's dependency graph has been updated, including bumping versions for packages such as http, flutter\_webview\_plugin, image\_picker, shared\_preferences, and event\_bus. The iOS CocoaPods lock file reflects updated checksums for Flutter and several plugins, and the CocoaPods version has been upgraded to 1.7.0.beta.3. Additionally, the Android Gradle configuration was modified to disable AAPT2, and a new image asset (ic\_eye.png) was added to the Flutter resources.
(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 51 → 53 (+1.6)
- Rubric changed (rubric-2026.08.19 → rubric-2026.09.15) — scores are not directly comparable.
Lenses
- Code Health 100 → 96 (-3.8)
- Architecture 100 → 100 (-0.3)
- Maturity 46 → 52 (+5.6)
- Readiness 24 → 26 (+1.4)
- Security 99 → 100 (+0.2)
- Domain Modelling 100 → 100 (+0.0)
Resolved (10)
- Coverage not included — suite not readable by the collector
- Dependency hygiene not measured — dependency manifest found but not parsed for hygiene
- Medium CVE: [GHSA redacted] (pubspec.lock)
- No exposed public API
- Test reliability not included
- The feature list is a bulleted checklist with [x] statuses but no explanation of what each item means or how it differs from the alternatives. (README.md)
- The maintenance note states the project 'is no longer maintained' and that it uses outdated Dart/Flutter versions; however, there is no guidance on how to update or fix any of the listed features given this state. (README.md)
- complexity unreadable for .dart, .java — churn × complexity hotspots could not be measured
- early-stage repository — too few commits for a meaningful bus factor
- early-stage repository — too little history to judge knowledge freshness
New (24)
- Dependency hygiene PARTLY measured — Maven/Gradle declarations read, no dependency graph resolved
- Duplicated block (10 lines × 2) (lib/pages/LoginPage.dart)
- Duplicated block (13 lines × 2) (lib/pages/BlackHousePage.dart)
- Duplicated block (13 lines × 2) (lib/pages/TweetDetailPage.dart)
- Duplicated block (15 lines × 2) (lib/pages/AboutPage.dart)
- Duplicated block (15–22 lines × 2) (lib/pages/TweetDetailPage.dart)
- Duplicated block (16 lines × 2) (lib/pages/MyInfoPage.dart)
- Duplicated block (17–18 lines × 2) (lib/pages/BlackHousePage.dart)
- Duplicated block (21 lines × 2) (lib/pages/LoginPage.dart)
- Duplicated block (22 lines × 2) (lib/pages/LoginPage.dart)
- Duplicated block (27–30 lines × 2) (lib/pages/TweetDetailPage.dart)
- Duplicated block (32–33 lines × 2) (lib/pages/TweetDetailPage.dart)
- Duplicated block (6 lines × 3) (lib/pages/DiscoveryPage.dart)
- Duplicated block (7–9 lines × 3) (lib/pages/AboutPage.dart)
- Duplicated block (7–9 lines × 3) (lib/pages/DiscoveryPage.dart)
- Duplicated block (8 lines × 2) (lib/pages/TweetDetailPage.dart)
- Duplicated block (9 lines × 2) (lib/pages/TweetDetailPage.dart)
- Medium CVE: [GHSA redacted] (pubspec.lock)
- MethodTooLong: TweetsListPageState.getRowWidget (lib/pages/TweetsListPage.dart)
- Near-duplicate member pair (87 shared lines) (lib/pages/TweetDetailPage.dart)
- …and 4 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
yubo725/flutter-osc 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 c03ed82a855cea97847cb58a2b7e273ecd9d9337 — 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.