The tool is based on https://github.com/RunestoneInteractive/RunestoneComponents and https://github.com/sphinx-doc/sphinx and includes:
- additional Sphinx extensions
- partial Pygame implementation for Sculpt (https://github.com/Petlja/pygame4skulpt)
- additional ActiveCode features
- customized Sphinx theme
- customized project template
- exteded online course format
petljadoccommand line interface (CLI)
PetljaDoc currently depends on forked RunestoneComonents, but we are gradually closing the gap with the upstream repository through pull requests.
Use pip to install PetljaDoc:
pip3 install petljadoc
If you use Windows and previous command does not work, try:
py -3 -m pip install petljadoc
petljadoc [OPTIONS] COMMAND [ARGS]...
Options:
--helpShow help message
Commands:
init-courseCreate a new online course project in your current directoryinit-runestoneCreate a new Runestone project in your current directorypreviewBuild the project, open it in a web browser, watch for changes, rebuild changed files and refresh browser after rebuild (using sphinx-autobuild)publishBuild the project and copy produced content indocssubfolder (ready to be published using GitHub Pages)exportBuilds the project and exports its content as a SCORM package. You can select one of the 3 options with will deliver you diffrent type of packages:single: A single SCO (Shareable Content Object) SCORM package, which contains all course content in a single filemulti: A multi SCO SCORM package, which breaks the course content into multiple modules or unitsproxy: A proxy SCORM package, that can be used with a Learning Management System (LMS) and an additional Moodle backup file. This option requires you to upload your course files to a web server and provide a link to the packager viapackage-conf.json. We recommend to upload your course files to a web server like GitHub Pages, which allows you to host static web content for free. You can create a new repository for your course files and enable GitHub Pages to generate a website URL for your repository. Then, you can updatepackage-conf.jsonto include the GitHub Pages URL as thedata_content_urlproperty.
By using petljadoc preview, an author may keep opened a browser window for preview. Any saved changes will be updated in browser in about 5-10 seconds.
petljadoc publish command helps an author to share a public preview of his work via GitHub Pages.