Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

Roman

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

Metadata

Release files for apluslms-roman 0.3.0rc1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for apluslms-roman 0.3.0rc1
File Size Uploaded Provenance Actions
apluslms-roman-0.3.0rc1.tar.gz 30.1 kB Without provenance Details for apluslms-roman-0.3.0rc1.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for apluslms-roman 0.3.0rc1
File Interpreter ABI Platform Actions
apluslms_roman-0.3.0rc1-py3-none-any.whl Python 3 none any Details for apluslms_roman-0.3.0rc1-py3-none-any.whl

Total release size: 61.8 kB

Release files / apluslms-roman-0.3.0rc1.tar.gz

Download URL apluslms-roman-0.3.0rc1.tar.gz
Size 30.1 kB
Tags Source
SHA-256 checksum
How to use checksums
bf896bd35479d25a4bd0b69223f6729aa80f495deaba9a26e2fd033571505ad8
BLAKE2b-256 checksum
How to use checksums
2cc70bb141fb4bc47d94d2257e44eae74e12a155c0a8be632ff0f477e9a0f316
Upload date
Uploaded using Trusted Publishing?
What is 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

Release files / apluslms_roman-0.3.0rc1-py3-none-any.whl

Download URL apluslms_roman-0.3.0rc1-py3-none-any.whl
Size 31.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
b9592a92317afe966c0aefe50815762e3c0a924e0529aac1ae3d22cdc8954582
BLAKE2b-256 checksum
How to use checksums
dab8f21ad57bb89b22e43a84a56acdf21eca5d7b2d7d1a1ce18240c75c3059b1
Upload date
Uploaded using Trusted Publishing?
What is 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

Security for apluslms-roman 0.3.0rc1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page