Python JavaScript HTML CSS Shell
Switch branches/tags
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
assets Fix #3258: Add share-to-classroom Button (#3743) Aug 14, 2017
core Assign the default dashboard to all the users of the site. (#3760) Aug 17, 2017
data Preloading of audio and bandwidth confirmation (#3727) Aug 11, 2017
extensions
integrations
integrations_dev Fixes #1515 Mar 15, 2016
scripts Fix #3695: Pull the load tests apart from the main test. (#3729) Aug 13, 2017
.eslintignore Fix #2447: Caching should be done on a per-file basis (#3454) Jul 22, 2017
.eslintrc Fix #1852: Transition to ESLint (#3264) Apr 3, 2017
.gitattributes Fix #1836: Add gitattributes file to set proper EOL (#1837) May 20, 2016
.gitignore Refactor AudioTranslations so that they are stored as a dict keyed by… Jul 24, 2017
.pylintrc Upgrade GAE version to 1.9.50. (#3386) May 3, 2017
.travis.yml Fix #3695: Pull the load tests apart from the main test. (#3729) Aug 13, 2017
AUTHORS Add new contributors to AUTHORS, CONTRIBUTORS and about.html Aug 16, 2017
CHANGELOG Update the changelog for release 2.5.3 Aug 16, 2017
CONTRIBUTING.md
CONTRIBUTORS Add new contributors to AUTHORS, CONTRIBUTORS and about.html Aug 16, 2017
ISSUE_TEMPLATE.md
LICENSE Change COPYING to LICENSE Aug 3, 2013
PULL_REQUEST_TEMPLATE.md Add note about mentioning bugnum in PR description (#3156) Mar 5, 2017
README.md Update README.md (#2515) Sep 27, 2016
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 Audio fixes: make audio download URL safe; don't show flagging modal … Aug 5, 2017
appengine_config.py Add audio file upload handler (#3624) Jul 15, 2017
constants.py
constants_test.py Assert change Apr 13, 2017
cron.yaml Clean up MR jobs less frequently. (#3392) May 6, 2017
feconf.py Fix #3467: Introduce re-training and add_to_training_queue methods (#… Aug 5, 2017
gulpfile.js Fix #2447: Caching should be done on a per-file basis (#3454) Jul 22, 2017
index.yaml Merge branch 'answer-summarizers-framework' into answer-migration Dec 17, 2016
jinja_utils.py Externalize first party js modules (#2360) Aug 18, 2016
jinja_utils_test.py Fixed #2989: checking if all files end with exactly one newline chara… Feb 17, 2017
main.py Add editor for audio translations (#3692) Aug 5, 2017
main_cron.py Fix #1726. Remove the third argument of get_redirect_route in main.py ( Sep 18, 2016
main_mail.py FIx #2768: Implement email receiving functionality for feedback messa… Feb 9, 2017
main_taskqueue.py Fix #1726. Remove the third argument of get_redirect_route in main.py ( Sep 18, 2016
manifest.json Create shared audio frontend services (#3647) Jul 21, 2017
queue.yaml Fix #2036: Introduces and uses configuration point for assigning a jo… Aug 14, 2017
schema_utils.py Fixes #2956: Images in explorations have descriptive alt attributes (#… Feb 1, 2017
schema_utils_test.py
utils.py Fix #2447: Caching should be done on a per-file basis (#3454) Jul 22, 2017
utils_test.py Fix #2447: Caching should be done on a per-file basis (#3454) Jul 22, 2017

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 and get feedback.

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.

In addition, if you'd like to make contributions to the codebase, please follow these instructions, which will walk you through setting things up, signing the CLA, and joining the developer mailing list. Thanks!

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!