Skip to main content

Manuscript bot for automated scientific publishing

Project description

The manuscript bot for automated scholarly publishing

Travis Linux Build Status AppVeyor Windows Build Status

The Manubot Python package prepares scholarly manuscripts for Pandoc consumption. It automates and scripts several aspects of manuscript creation, including fetching bibliographic metadata for citations.

This program is designed to be used with clones of Manubot Rootstock, which perform Pandoc conversion and continuous deployment. See the Manubot Rootstock usage guide for more information.


Installing the python package creates the manubot command line program. This program is the primary interface to using Manubot. There are two required arguments: --content-directory and --output-directory, which specify the respective paths to the content and output directories. The content directory stores the manuscript source files. Files generated by Manubot are saved to the output directory.

One common setup is to create a directory for a manuscript that contains both the content and output directory. Under this setup, you can run the Manubot using:

manubot \
  --content-directory=content \

See manubot --help for documentation of all command line arguments.


Install the version specified by a git commit hash using:

pip install git+$COMMIT

Use the --upgrade argument to reinstall manubot with a different commit hash.


Create a development environment using:

conda create --name=manubot-dev python=3.6 jinja2 pandas pytest
conda activate manubot-dev  # assumes conda >= 4.4
pip install --editable .

Inside this environment, use pytest to run the test suite. You can also use the manubot CLI to build manuscripts. For example:

manubot \
  --content-directory=tests/manuscripts/example/content \
  --output-directory=tests/manuscripts/example/output \

Release instructions


This section is only relevant for project maintainers. Travis CI deployments are used to upload releases to PyPI. To create a new release, bump the __version__ in manubot/ Then run the following commands:

TAG=v`python --version`
git add manubot/
git commit --message="Upgrade to $TAG"
git push
git tag --annotate $TAG --message="Upgrade to $TAG"
git push --tags

Project details

Download files

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

Files for manubot, version 0.1.0
Filename, size File type Python version Upload date Hashes
Filename, size manubot-0.1.0.tar.gz (13.9 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page