Skip to content
CAI
Software that uses CAICheck a score

T8RIN/PapriCoin

39.5

Weak · 21 September 2026

2.2k

lines of production code

Kotlin

primary language

4

measurements over time

CAI band scale
CAI trend line
CAI lens gauges

What this system is

This is an Android cryptocurrency application that fetches market data from the CoinPaprika API and stores it locally using Room for offline access. It provides users with the ability to view coin details and maintain a personalized list of favorite cryptocurrencies. The system manages data synchronization between the remote API and local cache, ensuring a seamless experience even under poor network conditions.

Features

Introduces local caching and a favorites feature for cryptocurrency data

The app now caches data from the CoinPaprika API using a local Room database, ensuring that users can view coin lists, details, and market overviews even when offline or when the network is slow. The implementation includes a new 'Favorite Coins' feature, allowing users to save specific cryptocurrencies to a local list. This is supported by new domain use cases for managing favorites, a repository implementation that coordinates between the remote API and the local database, and UI screens for viewing and managing the favorite list.

app/src · high confidence

Behavioural changes

Updated ProGuard rules for OkHttp, Retrofit, Moshi, and DTOs

The app's ProGuard configuration was updated to include keep-rules for OkHttp, Retrofit, and Moshi libraries, as well as specific data transfer objects (DTOs) in the \ru.tech.papricoin.data.remote\ package. This ensures that these classes and their members are preserved during code shrinking and obfuscation, preventing runtime errors related to reflection or serialization.

app · high confidence

Updated release APK metadata to version 1.0.1

The release build metadata has been updated to reflect version 1.0.1 (version code 2) for the application ru.tech.papricoin. This change updates the output metadata file to track the new release artifact.

app/release · high confidence

Dependencies

Updated Android build configuration and dependencies

The app's build configuration was updated to version 1.0.1 (versionCode 2). Dependencies were upgraded, including Accompanist to 0.24.5-alpha, and new libraries were added for Retrofit (2.9.0), OkHttp (4.9.3/4.9.2), and Room (2.4.2). The Gradle plugin was also adjusted.

(dependencies) · medium 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 44 → 40 (-4.5)
  • Rubric changed (rubric-2026.08.19 → rubric-2026.09.15) — scores are not directly comparable.

Lenses

  • Code Health 98 → 95 (-2.4)
  • Architecture 100 → 84 (-15.8)
  • Maturity 35 → 35 (+0.0)
  • Readiness 15 → 17 (+1.9)
  • Security 100 → 100 (+0.0)
  • Domain Modelling 100 → 70 (-30.3)

Resolved (12)

  • Dependency hygiene not measured — dependency manifest found but not parsed for hygiene
  • Duplicated block (11 lines × 2) (app/src/main/java/ru/tech/papricoin/presentation/coin_list/CoinListScreen.kt)
  • Duplicated block (11 lines × 2) (app/src/main/java/ru/tech/papricoin/presentation/coin_list/CoinListScreen.kt)
  • Duplicated block (11 lines × 3) (app/src/main/java/ru/tech/papricoin/presentation/coin_detail/CoinDetailsScreen.kt)
  • Duplicated block (12 lines × 2) (app/src/main/java/ru/tech/papricoin/presentation/coin_list/CoinListScreen.kt)
  • Duplicated block (13 lines × 3) (app/src/main/java/ru/tech/papricoin/presentation/coin_detail/CoinDetailsScreen.kt)
  • Duplicated block (15 lines × 2) (app/src/main/java/ru/tech/papricoin/presentation/coin_list/CoinListScreen.kt)
  • No exposed public API
  • early-stage repository — too little history to judge knowledge freshness
  • git history depth insufficient
  • git history depth insufficient
  • single-maintainer — knowledge-concentration (bus factor) risk

New (14)

  • Dependency hygiene PARTLY measured — Maven/Gradle declarations read, no dependency graph resolved
  • Documentation: no installation or build instructions (README.md)
  • Documentation: no licence statement (README.md)
  • Documentation: no usage examples (README.md)
  • Duplicated block (11 lines × 3) (app/src/main/java/ru/tech/papricoin/presentation/coin_detail/CoinDetailsScreen.kt)
  • Duplicated block (12 lines × 2) (app/src/main/java/ru/tech/papricoin/presentation/coin_list/CoinListScreen.kt)
  • Duplicated block (13 lines × 2) (app/src/main/java/ru/tech/papricoin/presentation/coin_list/CoinListScreen.kt)
  • Duplicated block (13 lines × 3) (app/src/main/java/ru/tech/papricoin/presentation/coin_detail/CoinDetailsScreen.kt)
  • Duplicated block (15 lines × 2) (app/src/main/java/ru/tech/papricoin/presentation/coin_list/CoinListScreen.kt)
  • Duplicated block (16 lines × 2) (app/src/main/java/ru/tech/papricoin/presentation/coin_list/CoinListScreen.kt)
  • MethodTooLong: CoinDetailsScreenKt.CoinDetailsScreen (app/src/main/java/ru/tech/papricoin/presentation/coin_detail/CoinDetailsScreen.kt)
  • MethodTooLong: CoinListScreenKt.CoinListScreen (app/src/main/java/ru/tech/papricoin/presentation/coin_list/CoinListScreen.kt)
  • Near-duplicate member pair (46 shared lines) (app/src/main/java/ru/tech/papricoin/presentation/coin_list/CoinListScreen.kt)
  • 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

T8RIN/PapriCoin 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 fd513fb72a7bf56e31d0e96d5dae8f39d4dd84a2 — 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.