Oppia is an online learning tool that enables anyone to easily create and share interactive activities (called 'explorations'). These activities simulate a one-on-one conversation with a tutor, enabling students to learn by doing while getting feedback.
In addition to developing the Oppia platform, the team has developed free and effective lessons on basic mathematics, and we are planning to expand our educational offering to basic science and financial literacy. These lessons help learners who lack appropriate access to educational resources.
The Oppia web application is built using Python, Angular, and Google App Engine. See also:
You can also sign up to our email newsletter for news and updates about the Oppia project.
Please refer to the Installing Oppia page for full instructions.
The Oppia project is built by the community for the community. We welcome contributions from everyone, especially new contributors.
You can help with Oppia's development in many ways, including art, coding, design and documentation.
- Developers: please see this wiki page for instructions on how to set things up and commit changes.
- All other contributors: please see our general contributor guidelines.
If you'd like to donate to support our work, you can do so here.
If you have any feature requests or bug reports, please log them on our issue tracker.
Please report security issues directly to admin@oppia.org.
The Oppia code is released under the Apache v2 license.
PR #23604 – Fix: Misaligned “My Dashboard” button
Link: oppia#23604 This PR was implemented to fix the misaligned "My Dashboard" button on the Oppia practice session page (Issue #20003). The root cause was an invisible, phantom element in the Document Object Model (DOM) left over from a previous code change. This hidden element still consumed space within the flex container. Consequently, the button was pushed far to the right, breaking the intended layout. The merged fix ensures the correct removal of the phantom element, restoring proper button positioning.
PR #23806 – Fix: Highlight bug during language switch
Link: oppia#23806 This PR resolves a highlighting issue in the Exploration Player and preview pages when users switch between different language accents. The update ensures that text highlighting now stays properly synced with the voiceover playback, providing an accurate and consistent reading experience across all supported accents.
PR #23869 – Relax the regex for app feedback domain reports
Link: oppia#23869 This Pull Request relaxes the regular expression (regex) used for validating app feedback domain reports. The update makes the regex less restrictive by allowing digits in language codes, fixing an issue where the previous regex incorrectly rejected valid Android language codes.