Skip to main content

neuromatch-course-kit

The nma-kit command line for Neuromatch courses written in MyST Markdown. It is one half of the Neuromatch course kit; the other half is the MyST plugin on npm, @neuromatch/course-kit. Both ship under the same version.

Courses usually don't install this by hand: the reusable GitHub workflows in the kit repository do. To use it locally:

uv venv && uv pip install -r requirements.txt "neuromatch-course-kit==0.1.*"
uv run nma-kit check
uv run myst start

Requires Python 3.10 or newer. Run every command from the course root (the folder with myst.yml).

Commands

Command What it does
nma-kit init [DIR] [--title T] [--author A]... [--github URL] [--license L] [--preview] Write a starter course (myst.yml, the workflow, requirements.txt, .nvmrc, .gitignore, LICENSE, a README with the setup checklist, one example day and a projects/ stub). Asks for what you don't pass; never overwrites
nma-kit check Validate the content rules and the nma: block of myst.yml
nma-kit notebooks [--dry-run] Generate student and instructor notebooks and the solution files into `notebooks/<tutorials
nma-kit sync-assets Write the site branding (stylesheet, logos, favicon, Rubik font) to _nma/, which the course's myst.yml points at
nma-kit render-scrolly Run each scrolly page's instructor notebook and save outputs to _build/scrolly/
nma-kit prepare-site [--dry-run] [--kit-version V] Add badges and fallback cells to the pages, pin the kit URL in myst.yml and run sync-assets. CI only: it edits files in place, never commit the result
nma-kit publish-notebooks [--remote R] [--message M] Push notebooks/ to the notebooks branch (created if missing)

Exit codes: 0 ok, 1 content problems or a failed publish, 2 usage or configuration errors.

Settings

Read from myst.yml: project.github gives the repository, and the optional top-level nma: block holds the rest.

nma:
  paths:
    tutorials: tutorials          # where the tutorial .md pages live
    projects: projects            # where the project .md pages live
  notebooks:
    branch: notebooks-branch      # where generated notebooks are published
  feedback:                       # required if any page uses {nma-feedback}
    url: https://...
    project: ...
    user_key: ...
  brand:                          # site colours, "#RRGGBB" each (see below)
    primary: "#008CBF"
  style:
    extra: _static/extra.css      # your own CSS, appended after the kit's

Site branding

sync-assets writes _nma/site.css, logo.svg, logo-dark.svg and favicon.png. List them in myst.yml:

site:
  options:
    style: _nma/site.css
    logo: _nma/logo.svg
    logo_dark: _nma/logo-dark.svg
    favicon: _nma/favicon.png

The stylesheet is the kit's (Neuromatch palette, Rubik embedded, so the kit's own CSS makes no font requests, styles for the kit's widgets), then your nma.brand colours, then your nma.style.extra CSS. Brand keys: primary, primary_hover, primary_light, secondary, accent. Setting only primary derives the hover and light variants. _nma/ ignores itself, so don't commit it; run sync-assets again after upgrading the kit.

Values in nma: must be plain strings in one level of sections.

Versions

The kit is on 0.x. A breaking change bumps the minor version, so ==0.1.* only receives compatible fixes. The CLI and the npm plugin always share a version number, and prepare-site pins the plugin URL to the CLI's own version.

Source, docs and release process: https://github.com/neuromatch/course-kit.

BSD-3-Clause.

Metadata

Release files for neuromatch-course-kit 0.2.0

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

Source distribution (sdist)

Source distribution for neuromatch-course-kit 0.2.0
File Size Uploaded Provenance Actions
neuromatch_course_kit-0.2.0.tar.gz 340.4 kB With provenance Details for neuromatch_course_kit-0.2.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for neuromatch-course-kit 0.2.0
File Interpreter ABI Platform Actions
neuromatch_course_kit-0.2.0-py3-none-any.whl Python 3 none any Details for neuromatch_course_kit-0.2.0-py3-none-any.whl

Total release size: 511.7 kB

Release files / neuromatch_course_kit-0.2.0.tar.gz

Download URL neuromatch_course_kit-0.2.0.tar.gz
Size 340.4 kB
Tags Source
SHA-256 checksum
How to use checksums
9340bdad7222bfd4b4a2680f25effdb8d7c79e7a3aec9e83016dd7c70d287ad0
BLAKE2b-256 checksum
How to use checksums
8118452ed481b261af3a661702cd3d2e16c7ed1bf951bc73a4b6d4bd6ebc72d3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 2, 2026.

Transparency log

Release files / neuromatch_course_kit-0.2.0-py3-none-any.whl

Download URL neuromatch_course_kit-0.2.0-py3-none-any.whl
Size 171.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
0fdc50c27738f21ce1a1f4ba038c87ab2053d5197c6de2b0a4bb555ed031aa67
BLAKE2b-256 checksum
How to use checksums
dc4f9dcbb03fd9ffbf17924682e58d1e1614cfebd1fea24eac3612b1085f6f62
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 2, 2026.

Transparency log

Security for neuromatch-course-kit 0.2.0

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.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for neuromatch_course_kit-0.2.0.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 2, 2026.

Transparency log

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