The edx-documentation repository contains source files for most of the documentation for edX partners and the Open edX community. This repo is managed by the edX Documentation team.
- API documentation that includes docstrings from code files is stored in the repository of that module.
- Documentation source files for Insights is in the edx-analytics-dashboard repository.
Documentation for developers, researchers, course staff, and students is located in the language-specific subdirectories.
EdX documentation is published through Read the Docs. Links to all published documentation are available through docs.edx.org.
We welcome input from the community on any documentation issues. You can submit issues to the Documentation project in the Open edX JIRA board.
You can also email docs@edx.org.
You, the user community, can help update and revise edX documentation.
EdX documentation is published from RST source files using Sphinx.
To suggest a revision, fork the project, make changes in your fork, and submit a pull request back to the original project: this is known as the GitHub Flow.
All pull requests need approval from edX. For more information, contact edX at docs@edx.org.
The edX documentation team created a template for pull request descriptions that you are encouraged to use. You can find it on the team wiki.
Before submitting a pull request, it is recommended you run the test suite on your contribution to ensure it can be compiled into HTML format without errors.
To run a test compilation of a contribution, first install the prerequisites.
pip install -r shared/travis_requirements.txt
Then run the tests.
./run_tests.sh
Additionally, you can run tests for a single project. For example, to build an HTML version of the Installing, Configuring, and Running the Open edX Platform guide, you run this test.
./run_tests.sh en_us/install_operations/
A convenience script is provided to help you develop new documentation. To use it you must first install the optional tools, and then run the script.
pip install -r shared/tools.txt ./develop.sh en_us/install_operations/
It will output a line of text that looks like this.
Serving on http://127.0.0.1:9090
You can copy this URL into a web browser to see the HTML output for your project.
The command starts an HTTP server that renders the HTML for the project. This HTTP server also monitors the project and detects any changes. When you save a change to a file, the server rebuilds the HTML and refreshes your browser automatically. In this way you can rapidly see how changes you make will be rendered as HTML.