Skip to content
CAI
Software that uses CAICheck a score

mo7amedaliEbaid/islamic

54.8

Adequate · 21 September 2026

6k

lines of production code

Dart

with C++

4

measurements over time

CAI band scale
CAI trend line
CAI lens gauges

What this system is

This is a cross-platform Flutter application designed for iOS, macOS, Linux, and Windows. It features a centralised resource structure and provides users with the ability to browse and watch YouTube videos, as well as view content related to Islamic pillars. The system manages local data storage and platform-specific integrations across all supported operating systems.

Features

Added Linux and Windows native platform support

The application now includes native build configurations and runner code for Linux and Windows. On Linux, the project uses GTK3 and CMake to build the executable and register Flutter plugins (sqlite3\_flutter\_libs, url\_launcher\_linux). On Windows, the project uses CMake and the Win32 API to create a window, handle DPI scaling, and register Flutter plugins (sqlite3\_flutter\_libs, url\_launcher\_windows). This enables the app to run as a native desktop application on both platforms.

linux, windows · high confidence

Added macOS platform support for the Flutter app

The macOS target has been added to the project, enabling the app to be built and run on macOS. This includes the full Xcode project structure (pbxproj, schemes, workspace), the Swift entry points (AppDelegate, MainFlutterWindow), and the generated plugin registrant that registers plugins such as location, path\_provider, shared\_preferences, sqflite, and url\_launcher for the macOS platform.

macos · high confidence

Restructures app resources and introduces video browsing and pillars features

The app's resource files (styles, colors, fonts, routes, etc.) have been moved from the presentation layer to the app layer, centralizing shared configuration. A new 'Pillars' screen has been added to display Islamic pillars with a page view and dot indicators. Additionally, a 'Browse YouTube' feature has been introduced, allowing users to watch and browse YouTube videos directly within the app, complete with a video list view. The navigation routes have been updated to include these new screens, and the drawer menu now links to the pillars and browse sections.

lib/presentation · high confidence

Behavioural changes

iOS build configuration and project structure updated for CocoaPods and testing

The iOS project configuration was updated to support CocoaPods integration and unit testing. The Xcode project file (project.pbxproj) was modified to include the Pods group, link the Pods\_Runner and Pods\_RunnerTests frameworks, and add build phases for checking the Pods manifest lock and embedding pods. The workspace was updated to reference the Pods project. Additionally, the Info.plist was updated to include location usage descriptions (NSLocationWhenInUseUsageDescription and NSLocationAlwaysAndWhenInUseUsageDescription) and retain existing keys like CADisableMinimumFrameDurationOnPhone and UIApplicationSupportsIndirectInputEvents.

ios · high confidence

Dependencies

Update iOS/macOS CocoaPods and Android Gradle dependencies

The project now includes explicit CocoaPods configuration files (Podfile and Podfile.lock) for both iOS and macOS, defining dependencies such as Flutter, flutter\_inappwebview, sqflite, and sqlite3\_flutter\_libs. On the Android side, the Gradle build tool is upgraded from version 7.3.0 to 7.4.2, and the minimum Android SDK version is explicitly set to 19. Additionally, the Dart package lock (pubspec.lock) reflects the addition of youtube\_player\_flutter, dots\_indicator, and sqlite3\_flutter\_libs, while removing flutter\_native\_splash, html, image, and other unused 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

Score

  • CAI 48 → 55 (+6.6)
  • Rubric changed (rubric-2026.08.19 → rubric-2026.09.15) — scores are not directly comparable.

Lenses

  • Code Health 100 → 97 (-3.5)
  • Architecture 100 → 90 (-10.2)
  • Maturity 34 → 50 (+16.1)
  • Readiness 24 → 33 (+9.1)
  • Security 100 → 100 (+0.0)
  • Domain Modelling 100 → 100 (+0.0)

Resolved (6)

  • Coverage not included — suite not readable by the collector
  • Dependency hygiene not measured — dependency manifest found but not parsed for hygiene
  • No exposed public API
  • Test reliability not included
  • complexity unreadable for .dart, .swift — churn × complexity hotspots could not be measured
  • dormant codebase — no living knowledge left to concentrate

New (23)

  • Dependency hygiene PARTLY measured — Maven/Gradle declarations read, no dependency graph resolved
  • Documentation: no architecture or design documentation (README.md)
  • Documentation: no installation or build instructions (README.md)
  • Documentation: no usage examples (README.md)
  • Duplicated block (13 lines × 2) (lib/presentation/custom_adhkar/view/custom_dhikr_view.dart)
  • Duplicated block (13 lines × 3) (lib/presentation/custom_adhkar/view/custom_adhkar_view.dart)
  • Duplicated block (14 lines × 2) (lib/presentation/custom_adhkar/view/custom_adhkar_view.dart)
  • Duplicated block (14 lines × 2) (lib/presentation/custom_adhkar/view/custom_dhikr_view.dart)
  • Duplicated block (14–15 lines × 2) (lib/presentation/custom_adhkar/view/custom_adhkar_view.dart)
  • Duplicated block (20–22 lines × 2) (lib/presentation/custom_adhkar/view/custom_dhikr_view.dart)
  • Duplicated block (48 lines × 2) (lib/presentation/home/cubit/home_cubit.dart)
  • Duplicated block (58 lines × 2) (lib/app/utils/custom_search.dart)
  • Duplicated block (9–10 lines × 2) (lib/presentation/home/screens/adhkar/view/adhkar_screen.dart)
  • Low cohesion: AdhkarCubit (LCOM4 4) (lib/presentation/home/screens/adhkar/cubit/adhkar_cubit.dart)
  • Low cohesion: CustomSearch (LCOM4 6) (lib/app/utils/custom_search.dart)
  • Low cohesion: QuranCubit (LCOM4 4) (lib/presentation/home/screens/quran/cubit/quran_cubit.dart)
  • Members sharing a duplicated core (4 members, 50+ identical tokens) (lib/presentation/custom_adhkar/view/custom_adhkar_view.dart)
  • MethodTooLong: DhikrBuilderView.build (lib/presentation/dhikr_builder/view/dhikr_builder_view.dart)
  • MethodTooLong: HomeView.build (lib/presentation/home/view/home_view.dart)
  • MethodTooLong: _BrowseYoutubeScreenState.build (lib/presentation/browseyoutube/view/browseyoutube_screen.dart)
  • …and 3 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

mo7amedaliEbaid/islamic 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 21 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 d3c458c62f31a443ca3231e9661d1cf82bb823ec — 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-fa71c66cabd8.