plaited 🪢
plaited is a Pandoc filter that uses Jupyter kernels to generate code notebooks. It's a flexible tool for publishing documents that include code execution in a variety of languages and formats. It is a fork of Knitty, which is a fork of Stitch, which used code from knitpy and nbconvert.
Installation
plaited is available on TestPyPI:
pip install -i https://test.pypi.org/simple/ plaited
I will publish it to PyPI once it is more mature.
Getting Started
plaited is plug-and-play with Pandoc:
pandoc --filter plaited -o out.html input.md
Motivation
Why another code notebook generator?
Ultimately, plaited is a personal project that I work on for my own benefit. After reading about Codebraid, Stitch, and Knitty, I wanted a similar tool that meets the following criteria:
Pandoc filter
- embrace Pandoc AST, allowing other filters, templates, or Pandoc itself to make any formatting decisions
- use Panflute to manage document elements
Jupyter client
- embrace Jupyter kernels as the means of code execution
- use Jupyter Client to interface with the kernels
modern Python package
- aim to write hackable, maintainable code
- use modern setuptools configuration
Contributing
You are more than welcome to submit a pull request to this repository, or open an issue, or send me an email…I'd love to hear from you!
Thanks
plaited builds upon the work of hundreds of people! Here are a handful of them:
- John MacFarlane and other contributors to Pandoc
- Sergio Correia and other contributors to Panflute
- Tom Augspurger, who wrote Stitch
- Peter Zagubisalo, who created Knitty
- Jan Katins, who wrote knitpy
Similar tools that influenced this project:
- Knitr by Yihui Xie
- Codebraid by Geoffrey M. Poore
- pandoc-plot by Laurent P. René de Cotret
- Jupyter Book
License
There seems to have been a misunderstanding by previous developers of this project regarding license compatibility. Stitch and Knitty, by Tom Augspurger and Peter Zagubisalo respectively, were released using the MIT License. Their code is adapted from the knitpy and IPython projects, both released under BSD licenses. I am not a lawyer, but I do not believe that BSD licenses are compatible with the MIT license. I hope that by relicensing this project under the Modified (3-Clause) BSD License, work by all prior contributors is being used according to their original licenses. This is not legal advice, and I welcome any feedback regarding the licensure of this repository.
Metadata
Release files for plaited 0.0.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| plaited-0.0.1.tar.gz | 13.7 kB | Without provenance | Details for plaited-0.0.1.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| plaited-0.0.1-py3-none-any.whl | Python 3 | none | any | Details for plaited-0.0.1-py3-none-any.whl |
Total release size: 25.2 kB
Release files / plaited-0.0.1.tar.gz
| Download URL | plaited-0.0.1.tar.gz |
|---|---|
| Size | 13.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
a2ea2da84ae99497a88ce763ef5e2e8ba78638645a987d1b4f984656f11e5d05
|
|
BLAKE2b-256 checksum How to use checksums |
def6506da0bcbe0f2050e5e0941d42e840e0b9ac0839d2116538e67c23e10eb5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.9.16
|
Release files / plaited-0.0.1-py3-none-any.whl
| Download URL | plaited-0.0.1-py3-none-any.whl |
|---|---|
| Size | 11.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
d23413e23cd7b05022b29a0880ee8c9e7c130230986d1780240a9ce7200690bf
|
|
BLAKE2b-256 checksum How to use checksums |
9662c4a2d0d1509010e6ea937e54b3e2a80322d8b8ea18eb7687a3f21fd4dc68
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.9.16
|
Security for plaited 0.0.1
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.