Skip to main content

Course material builder for online learning systems

Project description

build status download release

Abstract:

Course material builder for online learning systems

Author:

Jaakko Kantojärvi <jaakko.kantojarvi@aalto.fi>

Roman is course material builder for A+ and other learning management systems. Roman uses docker to run different build steps. Course building steps are configure in course.yml, which is read by roman.

Roman is in experimental development state

Check out Ariel. It is an extension to sphinx build process that is used to build RST course material to HTML and YAML files. It can simple be used by adding apluslms/ariel to build steps.

Course configuration

Roman reads configuration file course.yml, course.yaml or course.json and then runs course build steps defined in steps list. Steps can be strings describing docker image or objects containing at least img. Here is small example:

# course.yml
---
version: 2
theme: aplus

steps:
  - hello-world
  - img: apluslms/compile-rst
    cmd: make touchrst html
    mnt: /compile
    env:
      STATIC_CONTENT_HOST: "http://localhost:8080/static/default"

Installation

You can use prebuild binaries with graphical user inteface from releases page. Alternatively, you can install cli version via pip pip3 install --user apluslms-roman[docker], which will add $HOME/.local/bin/roman. Presuming you have that in your PATH, then you can execute roman --help to get started.

List of graphical user inteface binaries

  • *-linux.AppImage is an AppImage package of Roman. Download, mark file executable and run it. Requires FUSE (installed on typical linux desktop).

  • *-linux.zip contains a single-file executable. Download, extract, run roman. Requires that files in /tmp/ can be executed.

  • *-mac.dmg contains Roman.app in a disk image. Download, open, drag Roman.app to e.g. Applications, run. Note: On the first time you need to right or control-click the app, select open in the menu and finally open in the dialog.

  • *-mac.zip contains Roman.app in a zip. Same prosess as with above version.

If you are not sure what file to use, then use the first one for your operating system.

Documentation on how these files are build, can be found under ``packaging`` in the source repo.

Developing

This repository curently holds few different python packages, which makes things problematic. There is set of scripts under ./scripts/ to make this ok.

For example, you can setup development environment for you:

# install venv (you can skip this part)
python3 -m venv venv
# or
python3 -m virtualenv -p python3 venv
# activate
. ./venv/bin/activate

# install roman packages
./scripts/install_for_development.sh

To run tests:

# run all tests in the repo
#  creates virtual env, if none is active
./scripts/run_all_tests.sh

# run all tests for a package
python3 setup.py test
python3 -m unittest discover -t . -s tests

# run a single test file
python3 -m unittest tests.test_cli

# run a single test class
python3 -m unittest tests.test_cli.TestGetConfig

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

apluslms-roman-0.3.0rc1.tar.gz (30.1 kB view details)

Uploaded Source

Built Distribution

apluslms_roman-0.3.0rc1-py3-none-any.whl (31.7 kB view details)

Uploaded Python 3

File details

Details for the file apluslms-roman-0.3.0rc1.tar.gz.

File metadata

  • Download URL: apluslms-roman-0.3.0rc1.tar.gz
  • Upload date:
  • Size: 30.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.5.0.1 requests/2.9.1 setuptools/44.0.0 requests-toolbelt/0.9.1 tqdm/4.42.1 CPython/2.7.12

File hashes

Hashes for apluslms-roman-0.3.0rc1.tar.gz
Algorithm Hash digest
SHA256 bf896bd35479d25a4bd0b69223f6729aa80f495deaba9a26e2fd033571505ad8
MD5 1760964508013ac26619d21116367f74
BLAKE2b-256 2cc70bb141fb4bc47d94d2257e44eae74e12a155c0a8be632ff0f477e9a0f316

See more details on using hashes here.

File details

Details for the file apluslms_roman-0.3.0rc1-py3-none-any.whl.

File metadata

  • Download URL: apluslms_roman-0.3.0rc1-py3-none-any.whl
  • Upload date:
  • Size: 31.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.5.0.1 requests/2.9.1 setuptools/44.0.0 requests-toolbelt/0.9.1 tqdm/4.42.1 CPython/2.7.12

File hashes

Hashes for apluslms_roman-0.3.0rc1-py3-none-any.whl
Algorithm Hash digest
SHA256 b9592a92317afe966c0aefe50815762e3c0a924e0529aac1ae3d22cdc8954582
MD5 c1a86534fe75391efcf273bdb03ea962
BLAKE2b-256 dab8f21ad57bb89b22e43a84a56acdf21eca5d7b2d7d1a1ce18240c75c3059b1

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page