dantech0xff/android-base-mvvm
50.6
Adequate · 21 September 2026
2.3k
lines of production code
Kotlin
primary language
4
measurements over time
What this system is
This is an Android application for managing notes, featuring a refactored architecture that separates business logic into a Use Case layer. The system handles note operations such as fetching, inserting, updating, and deleting notes, with state management handled via LiveData and UI interactions managed through Data Binding. The project also includes standard build tooling and dependencies for Android development.
Behavioural changes
Refactor note management with a Use Case layer and data binding
The app now uses a Use Case layer to separate repository logic from ViewModels, introducing base classes for handling RxJava schedulers. Specific use cases for notes (FetchAll, GetTODO, Insert, Update, Delete) are implemented and wired into the ViewModel and Fragment modules. Additionally, the UI layouts for the notes list and note editor have been converted to use Data Binding, allowing click events to be bound directly in XML rather than in the Fragment classes.
app/src · high confidence
Refactored ViewModels to use UseCase layer and LiveData
The NoteFragmentViewModel and UpdateNoteFragmentViewModel have been refactored to depend on specific UseCase classes (e.g., FetchAllNotesUseCase, DeleteNoteUseCase) instead of the raw NoteRepo. This separates repository logic from the ViewModel, and LiveData is now used to expose state to the UI, replacing direct repository calls and RxJava subscriptions for data flow.
. · high confidence
Updated Gradle wrapper to version 7.4
The Gradle wrapper has been upgraded from version 7.3.3 to 7.4, ensuring that the project uses the newer Gradle release for builds.
gradle · high confidence
Dependencies
Updated build dependencies and enabled data binding
The project's build configuration has been updated to support new features and improve compatibility. Data binding is now enabled in the app module. Several dependencies have been upgraded: the Android Gradle plugin to 7.3.0, the Navigation component to 2.5.2, the Firebase Bill of Materials to 30.5.0, the Android Billing Client to 5.0.0, and Google Play Services Ads to 21.2.0. Additionally, the MockK testing library has been added as a test dependency.
(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 51 → 51 (+0.1)
- Rubric changed (rubric-2026.08.19 → rubric-2026.09.15) — scores are not directly comparable.
Lenses
- Code Health 99 → 99 (+0.2)
- Architecture 100 → 96 (-4.4)
- Maturity 51 → 51 (+0.0)
- Readiness 24 → 24 (+0.0)
- Security 95 → 100 (+5.0)
Resolved (11)
- Coverage not included — suite not readable by the collector
- Dependency hygiene not measured — dependency manifest found but not parsed for hygiene
- Duplicated block (11 lines × 3) (app/src/main/java/com/creative/mvvm/ui/view/RatioFrameLayout.kt)
- No exposed public API
- Rotate the exposed credentials — git history can't be un-committed
- Secret: gcp-api-key (app/google-services.json)
- Test reliability not included
- 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 (7)
- Dependency hygiene PARTLY measured — Maven/Gradle declarations read, no dependency graph resolved
- Documentation: no installation or build instructions (README.md)
- Documentation: no usage examples (README.md)
- Duplicated block (12 lines × 3) (app/src/main/java/com/creative/mvvm/ui/base/BaseActivity.kt)
- Duplicated block (12 lines × 3) (app/src/main/java/com/creative/mvvm/ui/view/RatioFrameLayout.kt)
- No ADRs found
- TodoComment (app/src/main/java/com/creative/mvvm/data/app/AppRepoImpl.kt)
Architecture
- Containers 0 added · 0 removed · contexts 1 added · 1 removed · edges 0 added · 0 removed
Added bounded contexts (1)
- app
Removed bounded contexts (1)
- .
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
Survey your own repository
dantech0xff/android-base-mvvm 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 1b7238dfe5aa21f1e61b7f42e1d37f41c2b56802 — 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.