Tool for collaboratively building interactive lessons.
Clone or download
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github Add nithusha21 to codeowners for /scripts (#6020) Dec 21, 2018
assets Fix #3074: Added height limit warning for card content (#5997) Jan 20, 2019
core Fix #6122: Add $log service to prevent the error arising on rejecting… Jan 21, 2019
data Fix #5933: Changed Code Editor Prompt in Test Exploration to be More … Dec 4, 2018
export Enforce variables to be in snake case (#5943) Dec 22, 2018
extensions Fixes #4407 KaTeX text no longer goes outside text container in MathE… Jan 21, 2019
scripts Fix #6104: Use sub-process in pre_push_hook (#6114) Jan 14, 2019
.eslintignore Group-2 Change, Rename files and services names (#3867) Sep 18, 2017
.eslintrc Introduce eslint: space-before-blocks rule (#6048) Jan 4, 2019
.gitattributes Fix #1836: Add gitattributes file to set proper EOL (#1837) May 20, 2016
.gitignore Build process refactorization + increasing coverage for build.py (#5580) Aug 26, 2018
.htmllintrc Modify _lint_html_files function and enable rules (#4910) May 14, 2018
.isort.cfg Fix #5243: Set ignore_whitespace to true in .isort.cfg (#5789) Oct 26, 2018
.pylintrc Enable missing docstrings check (#6073) Jan 9, 2019
.stylelintrc Add CSS lint rules: Space before curly braces for HTML files (#5732) Oct 5, 2018
.travis.yml Fixes #5839: Filter slow network logs for mobile tests on Browserstac… Jan 12, 2019
AUTHORS Update authors and changelog for v2.7.2. (#6109) Jan 14, 2019
CHANGELOG Update authors and changelog for v2.7.2. (#6109) Jan 14, 2019
CONTRIBUTORS Update authors and changelog for v2.7.2. (#6109) Jan 14, 2019
LICENSE Change COPYING to LICENSE Aug 3, 2013
Makefile Fix part of #5002: Move user related variables form GLOBALS (#5659) Nov 4, 2018
Vagrantfile Fix #3455 (#3460) May 24, 2017
__init__.py Move the oppia directories one level down, so that Django runfiles ca… Jul 13, 2013
app.yaml Add sitemap and remove i18n from title. (#5647) Sep 23, 2018
appengine_config.py removed the ENABLE_GCS_STORAGE_FLAG, and add develop condition for PI… Aug 13, 2018
constants.py Fixes #5843 Changes _check_comment to check for spaces and capitals (#… Nov 15, 2018
constants_test.py Fix part of #5002: Moved some constants from GLOBALS to other places. ( Jul 13, 2018
cron.yaml Add deployment of export service to deploy.py (#5773) Oct 28, 2018
dispatch.yaml Export schedule dispatch (#5643) Sep 21, 2018
feconf.py Fix part of #5591: Migrate Playthrough Feature Data into ExplorationF… Jan 13, 2019
gulpfile.js Fix #5623 Move server launch to python (#5657) Sep 17, 2018
index.yaml Add paging for questions in topic editor and story editor modificatio… Nov 28, 2018
jinja_utils.py Fix part of #4374: Add docstrings to python files (#5871) Nov 18, 2018
jinja_utils_test.py Upgrade pylint to 1.9.3 and fix some docstrings issues. (#5935) Dec 2, 2018
main.py Fix part of #5591: Migrate Playthrough Feature Data into ExplorationF… Jan 13, 2019
main_cron.py Generalised Review System, complete email functionality (#5387) Aug 14, 2018
main_mail.py Fix part of #3905: Add lint checks for alphabetical import order (#4343) Jan 6, 2018
main_taskqueue.py Fix part of #3905: Add lint checks for alphabetical import order (#4343) Jan 6, 2018
manifest.json Milestone 2.5: Lesson Translation Dashboard (#5279) Aug 7, 2018
queue.yaml Return queue.yaml rates to normal Dec 3, 2017
schema_utils.py Fix part of #4374: Add docstrings to the python files. (#5849) Nov 12, 2018
schema_utils_test.py Add one-off job to validate customization args for rich text componen… Aug 9, 2018
tox.ini Improving the dev workflow: Milestone 1.1.1 Enable Pycodestyle rules … May 15, 2018
utils.py Fix part of #5002: Remove DEV_MODE from GLOBALS. (#5618) Sep 13, 2018
utils_test.py Upgrade pylint to 1.9.3 and fix some docstrings issues. (#5935) Dec 2, 2018

README.md

Oppia Build Status Code Coverage Join the chat at https://gitter.im/oppia/oppia-chat

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, making it possible for students to learn by doing while getting feedback.

In addition to developing the Oppia platform, the team is also developing and piloting a set of free and effective lessons on basic mathematics. These lessons are targeted at learners who lack access to educational resources.

Oppia is written using Python and AngularJS, and is built on top of Google App Engine.

Installation

Please refer to the developer wiki for full installation instructions. This is just a short summary for developers who would like to contribute:

  1. Create a new, empty folder called opensource/ within your home folder. Navigate to it (cd opensource), then fork and clone the Oppia repo. This will create a new folder named opensource/oppia.

  2. Navigate to opensource/oppia/ and run:

  git checkout develop
  bash scripts/start.sh
  1. To run tests:
  bash scripts/run_tests.sh

Contributing

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.

Support

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.

License

The Oppia code is released under the Apache v2 license.

Keeping in touch

We also have public chat rooms on Gitter: https://gitter.im/oppia/oppia-chat and the #oppia channel on Freenode IRC. Drop by and say hello!