oppia/oppia-android - Open Source PR Review Scorecard

A free online & offline learning platform to make quality education accessible for all.

C-Rank Grade: A (Welcoming) - 60/100

External PR Merge Rate: 43%

Response Time: -

First Timer Success: 36%

Frequently Asked Questions

Is oppia/oppia-android welcoming to first-time open-source contributors?

oppia/oppia-android has a recorded first-timer success rate of 35.7%. Repositories ranked A typically provide actionable feedback during code reviews and actively nurture new community contributors.

How fast can I expect code review feedback on my pull request?

Maintainers in oppia/oppia-android respond to incoming external pull requests in approximately 0.0 hours on average. Keeping PRs focused on single tasks and ensuring tests pass helps maintainers review faster.

What does the 59.6 C-Rank™ score (A Tier) represent?

The C-Rank™ system evaluates GitHub projects on a 0–100 scale using real data: PR merge rates, review turnaround time, active maintainer presence, and first-time contributor success. A score of 59.6 places oppia/oppia-android in the A tier.

What is the external contributor pull request merge rate for oppia/oppia-android?

The external contributor pull request merge rate for oppia/oppia-android is 42.7%, based on public PR activity from non-core contributors.

Are there Good First Issues available in oppia/oppia-android?

oppia/oppia-android currently has 2 active issue(s) tagged with beginner-friendly labels like "good first issue", "beginner", or "up-for-grabs".

oppia
oppia/oppia-androidA•Welcoming418
GitHub
Back to Explorer
oppia

oppia/oppia-android

418
InactiveA•Welcoming(60/100)Kotlin

A free online & offline learning platform to make quality education accessible for all.

GitHub
Compare••
Jump to:

AI Maintainer Review Guidelines

Review Persona

Strict Quality Architect

Warmth Score
6.8/10
Patience Score
7.3/10
Nitpick Rate
41%

Rigorous architecture standards (62% critical review signals). Ensure PRs strictly follow guidelines before requesting review in oppia/oppia-android.

Top PR Submission Do's

  • •Add unit tests with >80% coverage for modified code paths
  • •Run repository linter and code formatters locally before pushing
  • •Link relevant GitHub issue ID in PR description pre-flight checklist

Top PR Friction Pitfalls (Don'ts)

  • •Do not submit unlinked PRs without referencing an existing issue
  • •Do not mix refactoring and feature logic into a single commit
  • •Do not ping maintainers repeatedly within 24 hours of opening
Response Velocity
-
No reviewer activity recorded

Average Response Latency

Tracks hours until a maintainer leaves a review, comment, or PR response.

Merge Efficiency
42.7%
Moderate PR acceptance rate

External Acceptance Rate

Percentage of community pull requests successfully merged into main.

First-Timer Success
35.7%
Accepts new contributor PRs

First PR Conversion

Rate at which developers submitting their first repository PR succeed.

Active Maintainers
27 core
Highly collaborative maintainer core
Diagnostic Health HUD
42.7%
Merge Gauge
35.7%
1st-Timer
Community Vibe28/100

Embed C-Rank Badge

Show contributors that your repository actively reviews and merges external pull requests.

GetMerged C-Rank badge for oppia/oppia-android
[![GetMerged C-Rank](https://getmerged.abhishekco.de/api/badge/oppia/oppia-android)](https://getmerged.abhishekco.de/oppia/oppia-android?utm_source=github&utm_medium=badge)

Active Good First Issues (5)

View on GitHub

Describe the bug When the app is opened after a long period of inactivity, there is a blocking screen prompting the user to update the app. However, there is not a direct link provided to go to the Google App Store to update the app. Steps To Reproduce Ensure Oppia is installed Set the device's date to 1 year from today Open the app Expected Behavior There should be a direct link provided to update on Google Play. Screenshots/Videos There is no option provided to go directly to Google Play to get the update, as described in test documentation (see details below). What device/emulator are you using? Samsung Galaxy S21 Which Android version is your device/emulator running? Android 15 Which version of the Oppia Android app are you using? 0.19-rc03-alpha-9faec1d609 Additional Context In August we had identified #6393; in addressing that we have added the screen shown in the screenshot, just missing a direct link to Google Play.

📅 Opened Sep 26, 2026💬 2 comments
Quality: 90/100Contribute

Describe the bug Related to #6430 and #6431: After a list, there is no spacing between the last list item and the next item, whether a non-list item or an outer list item. Some sentences are have the appearance of missing spacing before/after, making them run into each other after a period(.) and look like links. For this specific bug #6432 fixed it in worked examples and it appears that some of the list tags were previously getting stripped. The same fix applied to worked examples should be applied to the broader lists. Steps To Reproduce Open a study guide with lists. See that subsequent lists have no spacing in between Also notice that some text have no spacing in between, showing up as links. Expected Behavior Lists should display corrcetly, with proper spacing, e.g.: Screenshots/Videos What device/emulator are you using? No response Which Android version is your device/emulator running? Android 10 Which version of the Oppia Android app are you using? 0.18-dev Additional Contex

📅 Opened Sep 9, 2026💬 8 comments
Quality: 90/100Contribute

Describe the bug The Code Coverage CI workflow (Evaluate Code Coverage Reports job) fails during the Generate Markdown Coverage Report step because scripts/src/java/org/oppia/android/scripts/lint/AndroidLintRunner.kt has a test line coverage of 67.32%, which is below the default required threshold of 70%. Error Log COVERAGE FAILURE REPORT: Covered File: scripts/src/java/org/oppia/android/scripts/lint/AndroidLintRunner.kt Coverage percentage: 67.32% covered Line coverage: 239 / 355 lines covered Minimum Required: 70% Exception in thread "main" java.lang.IllegalStateException: Coverage Analysis FAILED at org.oppia.android.scripts.coverage.reporter.CoverageReporterKt.main(CoverageReporter.kt:79) Context & Root Cause The default minimum test coverage threshold in CoverageReporter.kt is 70%. AndroidLintRunner.kt currently has 239 / 355 lines covered (67.32%). scripts/assets/test_file_exemptions.textproto does not currently have an exemption entry for AndroidLintRunner.kt to either o

📅 Opened Sep 1, 2026💬 3 comments
Quality: 90/100Contribute

Describe the bug The "Checks for Oppia Lesson Compatibility" workflow (lesson_checks.yml) calls //scripts:download_lesson_list with 5 arguments, but the script now requires a 6th argument so the path to a download config textproto that specifies allowed_classrooms, allowed_topic_ids, and allowed_interaction_ids. This 6th argument was introduced when pull_latest_lesson_versions.yml was added (which passes it correctly), but lesson_checks.yml was never updated to match. As a result, the "Download lesson version list" step fails with a usage/argument-count error on every scheduled Monday run, and no lesson compatibility data is being collected. Steps To Reproduce Navigate to Actions → "Checks for Oppia Lesson Compatibility" Open the most recent Monday cron run Expand the "Download lesson version list" step Observe the script exit with a usage error (argument count mismatch) Expected Behavior download_lesson_list should complete successfully, populate pinned_versions.textproto, and all

📅 Opened Aug 31, 2026💬 2 comments
Quality: 90/100Contribute

Now that minSdkVersion is 23, code that only supported Android 5.0/5.1 (API 21/22) is dead and the repo needs some cleanup. What to do 1. Freeze the final Lollipop builds, first scripts/src/java/org/oppia/android/scripts/release/FrozenReleaseConfig.kt lists only the KitKat build ("alpha" to setOf(16L)). The Play Developer API replaces a track's entire contents on each tracks.update, so the last Lollipop-supporting builds must be frozen before any minSdk-23 release ships. Otherwise they are silently deactivated and Lollipop users lose the app instead of seeing the OS-deprecation notice. The version codes are on upstream/target-sdk-36 (commit dba09933b) but not on develop: "alpha" to setOf(16L, 201L) and "beta" to setOf(196L). Add them, then update the "Currently frozen" KDoc list in the same file. 2. Drop the legacy multidex dependency Native multidex arrived in Lollipop, so androidx.multidex only does work below API 21. It survived #5630 because that PR removed the if (SDK_INT < LOLLIP

📅 Opened Aug 31, 2026💬 1 comment
Quality: 90/100Contribute
Looking for more Kotlin beginner tasks?Explore Kotlin GFI

Contributor Community Vibe Feedback

Rate what actually matters after opening a pull request here.

Have you contributed to this repo?

Rate your first-hand PR experience (review speed, maintainer responsiveness, and onboarding ease) to help other contributors.

3 ratings required
Maintainer helpfulness
Review speed
Beginner friendliness

Contributor Compatibility & Review Speed Analysis for oppia/oppia-android

When evaluating whether to contribute to oppia/oppia-android, response velocity and maintainer engagement are crucial. GetMerged continuously tracks pull request trajectories, first-comment latency, and code review rounds to help developers avoid submitting pull requests to backlogged repositories.

Currently, maintainers of oppia/oppia-android acknowledge new external contributions in approximately -. Out of all submitted pull requests from non-core authors in the last 180-day window, 42.7% were successfully merged into the primary branch.

Frequently Asked Questions - Contributing to oppia/oppia-android

01

Is oppia/oppia-android welcoming to first-time open-source contributors?

oppia/oppia-android has a recorded first-timer success rate of 35.7%. Repositories ranked Welcoming typically provide actionable feedback during code reviews and actively nurture new community contributors.

02

How fast can I expect code review feedback on my pull request?

The initial maintainer response time averages ~-. Keeping PRs scoped to single concerns and ensuring CI checks succeed will optimize review turnaround.

03

What does the 59.6 C-Rank™ score represent?

The C-Rank™ index scores repositories on a 0 to 100 scale using an objective formula: external PR merge rates, initial response speed, active maintainer count, and first-time contributor retention. A score of 59.6 places oppia/oppia-android in the Welcoming tier.

04

What is the external contributor pull request merge rate for oppia/oppia-android?

The external pull request merge rate is 42.7%. GetMerged isolates non-core community contributions so external developers get an accurate benchmark of PR acceptance probability.

05

Are there beginner Good First Issues open in oppia/oppia-android?

Yes, oppia/oppia-android currently has 2 active issue(s) tagged with beginner-friendly labels. You can inspect these directly from the repository issues tab.

GetMerged C-Rank™ Indexing Standard

All metrics displayed for oppia/oppia-android are automatically retrieved via the public GitHub API and recalculated daily. Insider pull requests submitted by repository owners or organization members are excluded from merge rate calculations to preserve objective external contributor statistics.