Skip to main content

Conventions for writing code in the notebook.

Project description

pidgy literate notebook programming

Binder Documentation Status

pidgy is literate programming kernel and shell for IPython. When pidgy is enabled:

  • Write code in markdown, indented and fenced are executed.
  • doctests in markdown are tested.
  • Include objects in markdown with jinja2 template syntax.
  • notebooks can be woven and tangled as documentation and code.
  • notebooks can be reproduced as tests.
  • ".md.ipynb" is a composite extension that indicates pidgy notebooks primarly written in markdown

The pidgy programming paper.

pidgy is written as literate programming in notebooks; the narrative develop together into a cohesive program that serves dually as literature and reusable source code.

import pidgy

pidgy command line application

Install the IPython kernels

Install the pidgy kernel so you can use whenever you want.

pidgy kernel install

Load the IPython extension

Otherwise, using the pidgy IPython extension any jupyter notebook.

%load_ext pidgy

Likely, the only other paper of the api you made need is the pidgy.pidgyLoader that allows pidgy documents to be imported as normal source code. The loader searches for notebooks with the ".md.ipynb" extension and adds them to the python import system.

reuse pidgy documents as modules

with pidgy.pidgyLoader():
    import readme
assert readme.__file__.endswith('.md.ipynb')

The plurality of pidgy

Above we've highlight a few outcomes of pidgy programming. pidgy is written as both documentation and source code therefore it can be viewed by the following tools.

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

pidgy-0.2.1.tar.gz (27.4 kB view hashes)

Uploaded Source

Built Distribution

pidgy-0.2.1-py3-none-any.whl (40.3 kB view hashes)

Uploaded Python 3

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