Skip to main content

Website for course materials

Project description


This is a server for open course material.

To use it, you will need some content. Usually, the repository with the content will require the naucse module, and will run using python -m naucse.

We use content at to generate


Install from a virtual environment.

To install the latest release:

(venv)$ python -m pip install naucse

To install from a cloned repository, for development:

(venv)$ python -m pip install -e.[dev]


To run the serve, either change (cd) to the directory with content, or set NAUCSE_ROOT_PATH to that directory. Then run:

(venv)$ python -m naucse serve

Instead of serve, you can run freeze to generate a static website. See Elsa for other usage, including deployment to GitHub Pages.

Served courses

The courses on the served website are taken from two sources:

  • courses.yml in $NAUCSE_ROOT_PATH, with entries like:

          branch: main
          path: _compiled

    The named repositories will be cloned. At the given path in the given branch, naucse expects compiled course info, as prepared by python -m naucse_render compile.

    This is intended for the production site, which aggregates lots of individual courses.

    If courses.yml is present, naucse will use a pretty homepage (rather than listing all courses on the homepage).

  • Any courses found by python -m naucse_render ls. This is useful when developing a course locally.


Tests can be run using tox:

(venv)$ tox

or pytest directly:

(venv)$ python -m pytest


The code is licensed under the terms of the MIT license, see LICENSE.MIT file for full text. By contributing code to this repository, you agree to have it licensed under the same license.

Content has its own license specified in the appropriate matadata. Only free content licenses are used. By contributing to an already licensed document, you agree to have it licensed under the same license. (And feel free to add yourself to the authors list in its metadata.) When contributing new document(s) a license must be specified in the metadata.

Project details

Download files

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

Source Distributions

No source distribution files available for this release. See tutorial on generating distribution archives.

Built Distribution

naucse-0.5.2-py3-none-any.whl (784.2 kB view hashes)

Uploaded py3

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page