iamnijat/code-quizzy
47.8
Weak · 21 September 2026
3.2k
lines of production code
Dart
primary language
4
measurements over time
What this system is
This system is a Flutter-based quiz application that retrieves programming topics and questions from the QuizAPI.io service at runtime. It provides a cross-platform user experience across Android, iOS, and Web, featuring interactive navigation, dynamic difficulty selection, and robust error handling for API failures. The application manages user progress through an interactive counter and supports offline capabilities via a service worker on the web platform.
Features
Initial commit of web application files
This change introduces the initial web build artifacts for the 'quiz\_programming' Flutter application, including the entry point (index.html) and the PWA manifest (manifest.json). These files establish the basic structure for serving the app in a browser, configuring the app title, icons, and service worker integration for offline capabilities.
web · high confidence
Initial project setup and configuration documentation
The repository has been initialized with the core application code, including a new MIT license file and updated project metadata. The README has been expanded to document the Flutter Code Quizzy application, specifically detailing the requirement for a QuizAPI.io key passed via \--dart-define\ at build time and explaining how the app fetches topics at runtime. Additionally, the \.gitignore\ has been updated to include the \.vscode\ directory to prevent committing launch configurations that contain the API key, and the generated plugin registrant file has been removed from version control.
(repo-wide) · high confidence
Behavioural changes
Improved quiz navigation, error handling, and counter interactivity
The presentation layer now handles quiz loading failures more gracefully: the Error Page displays dynamic error titles and messages from the repository, and the Home Page opens the Quiz Page before fetching data so that a failed load can replace the view instead of being covered. The Topic Selection Page has been refactored to load categories asynchronously from a repository, supporting loading states, error displays with a retry button, and grouped topic lists. The Counter Page's Animated Circles widget is now interactive, accepting increment/decrement callbacks and a counter value, replacing the previous static animation. Additionally, the Difficulty Page dynamically adjusts its slide count based on the available difficulty list rather than a hardcoded number.
lib/presentation · high confidence
Quiz and category management refactored to use live API data
The app no longer uses hardcoded topic lists and images; instead, it fetches categories and icons from the quiz API at runtime. A new CategoryRepository and CategoryIcons mapping replace the deleted TopicSelectionModel and static assets, filtering out empty topics and resolving Lucide icon names to Material icons. The quiz flow now handles API errors (missing key, unauthorized, rate limit, network, server, or no questions) with specific user-facing messages and navigation to an error page, while the correct answer logic and difficulty filters are simplified to match the updated API response structure.
(repo-wide) · high confidence
iOS minimum deployment target raised and counter limits adjusted
The iOS app now requires a minimum deployment target of iOS 12.0 (up from 9.0) and includes configuration updates for CocoaPods integration and indirect input event support. In the application logic, the counter feature's valid range has been adjusted: the minimum value is now 4 and the maximum is 9, changing the previous bounds of 3 and 10.
ios, lib/logic · high confidence
Dependencies
Updated Android Gradle wrapper to version 8.14.5
The Android build system now uses Gradle 8.14.5 (upgraded from 6.7) to handle project builds. This change updates the underlying build tooling used by the Android application without altering the app's runtime behavior or user-facing features.
android · high confidence
Upgrade Android build configuration and update Flutter dependencies
The Android build system has been migrated to the new Gradle plugin management DSL, upgrading the Android Gradle Plugin to 8.13.2 and Kotlin to 2.3.20. This change updates the compile and target SDK versions to 36, adds multidex support, and switches the Kotlin standard library to JDK 8. Additionally, Flutter dependencies have been updated, including upgrades to packages such as animated\_text\_kit, archive, args, async, bloc, characters, clock, collection, crypto, cupertino\_icons, fake\_async, ffi, file, flare\_flutter, flutter\_bloc, and flutter\_launcher\_icons, with the project version bumped to 1.0.1+9.
(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 42 → 48 (+5.5)
- Rubric changed (rubric-2026.08.19 → rubric-2026.09.15) — scores are not directly comparable.
Lenses
- Code Health 100 → 100 (-0.1)
- Architecture 100 → 92 (-7.8)
- Maturity 29 → 54 (+24.9)
- Readiness 15 → 15 (+0.0)
- Security 97 → 98 (+0.8)
- Domain Modelling 100 → 100 (+0.0)
Resolved (6)
- Dependency hygiene not measured — dependency manifest found but not parsed for hygiene
- No exposed public API
- complexity unreadable for .dart, .kt, .swift — churn × complexity hotspots could not be measured
- early-stage repository — too little history to judge knowledge freshness
- git history depth insufficient
- single-maintainer — knowledge-concentration (bus factor) risk
New (6)
- Dependency hygiene PARTLY measured — Maven/Gradle declarations read, no dependency graph resolved
- Documentation: no contributor guidance (README.md)
- Documentation: no installation or build instructions (README.md)
- Documentation: no usage examples (README.md)
- Duplicated block (14 lines × 3) (lib/presentation/widgets/counter/animated_circles.dart)
- No ADRs found
Changes since last survey
- 2 commits — 1 feature/other, 1 fixes
By area
- (root) — 1 commit
- lib/presentation — 1 commit
Notable commits
- fix: fix: refactor quiz and category management
- change: chore: update Android and Flutter dependencies and configurations
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
Survey your own repository
iamnijat/code-quizzy 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 8d78de4d4b5809570ce85c0a3ed2c442e13df322 — 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.