Skip to content
CAI
Software that uses CAICheck a score

emrcftci/NSDeprem

40.8

Weak · 21 September 2026

1.1k

lines of production code

Swift

primary language

4

measurements over time

CAI band scale
CAI trend line
CAI lens gauges

What this system is

This is an iOS application for displaying earthquake data, structured around a modular architecture with distinct List and Detail scenes. It leverages shared framework modules for networking, UI components, and common utilities to manage data retrieval and presentation. The system separates concerns through a protocol-driven design, enabling independent development of the networking layer and UI components.

Features

Initial project structure and build configuration for NSDeprem

The Xcode project file (project.pbxproj) and scheme configuration have been added, establishing the build targets, file references for the 'Detail' and 'List' scenes (including their controllers, presenters, interactors, and storyboards), and linking the Common, Networking, and UIComp frameworks. This change sets up the foundational architecture and build settings required to compile and run the application.

NSDeprem/NSDeprem.xcodeproj · high confidence

Introduce Common and UIComp framework modules

The project now includes two new shared framework modules: Common and UIComp. The Common module provides foundational utilities, including a singleton Cacher for image storage, a MapPreview service for generating map snapshots, and various Swift extensions for UI components (such as rounded corners and shadows on UIView/CALayer). The UIComp module introduces a reusable ListCell for displaying data in a list format, along with a NibLoadable protocol to simplify XIB-based view loading. These modules establish a modular structure for shared UI components and utilities.

Common, UIComp · high confidence

Introduced a modular Networking framework with protocol-based architecture

The Networking module has been restructured into a modular framework, introducing a protocol-driven design that separates concerns. This includes new protocols for services (ServiceProtocol), providers (ProviderProtocol), and URL sessions (URLSessionProtocol), alongside concrete implementations like URLSessionProvider and EarthQuakeService. The update also adds supporting enums for HTTP methods, network errors, and task states, as well as extensions for URL and request handling, enabling a more flexible and testable networking layer.

Networking · high confidence

Introduced modular architecture with dedicated List and Detail scenes

The application now features a modular structure with separate List and Detail scenes, each containing their own controllers, interactors, presenters, routers, and workers. The List scene displays earthquake data in a table view with pull-to-refresh and image caching, while the Detail scene presents specific earthquake information. This change establishes a clear separation of concerns and improves maintainability by organizing the code into distinct, self-contained modules for each major user flow.

NSDeprem/NSDeprem · high confidence

Behavioural changes

Workspace restructured into modular components

The Xcode workspace has been reorganized to support a modular architecture. The workspace now explicitly references four distinct project groups: NSDeprem, UIComp, Common, and Networking. This change facilitates independent development and testing of these modules within the same workspace.

NSDeprem.xcworkspace · 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 41 → 41 (+0.3)
  • Rubric changed (rubric-2026.08.19 → rubric-2026.09.15) — scores are not directly comparable.

Lenses

  • Code Health 100 → 100 (+0.0)
  • Architecture 69 → 69 (+0.0)
  • Maturity 37 → 44 (+6.5)
  • Readiness 15 → 15 (+0.0)
  • Security 100 → 100 (+0.0)

Resolved (5)

  • Dependency hygiene not measured — no supported dependency manifest was read
  • No exposed public API
  • complexity unreadable for .swift — 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 (4)

  • Documentation: no installation or build instructions (README.md)
  • Documentation: no usage examples (README.md)
  • Low cohesion: DetailController (LCOM4 4) (NSDeprem/NSDeprem/Scenes/Detail/DetailController.swift)
  • No ADRs found

Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.

Survey your own repository

emrcftci/NSDeprem 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 653fc0e81c9c9ad9a271aaab0a1e66131981a95b — 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-b84573e22831.