MyST is an ecosystem of open-source, community-driven tools designed to revolutionize scientific communication. Our powerful authoring framework supports blogs, online books, scientific papers, reports and journals articles.

Install MyST πŸ‘©β€πŸ’»

Start here to get up and running with the myst command-line tools.

Cool MyST Features πŸͺ„ΒΆ

We think MyST is really cool, some of the features that we think stand out are highlighted below with links to places in the documentation where you can reproduce them!


πŸͺ„πŸ° Rabbit-hole links allow you to get information to your reader as fast as possible, and they can deep-dive all the way to computations, code and interactive figures. You can play with this demo yourself in Working with MyST Markdown.

πŸͺ„πŸ“Š Live graphs can be embedded directly in your documentation or articles with computation backed by Jupyter or JupyterLite – running locally, on Binder, or directly in your browser. Get up and running with Thebe in Integrating Jupyter based Computation

πŸͺ„πŸͺ JupyterLab support for MyST comes with inline computations, support for ipywidgets, matplotlib sparklines, editable task-lists, rich frontmatter, and beautiful typography and other elements like dropdowns, grids and cards. Install jupyterlab-myst today!

πŸͺ„πŸ“œ Export to PDF is easy with MyST, and we support hundreds of different journals out of the box, see myst-templates! You can also export to Microsoft Word or even JATS, which is used in scientific publishing. See the Working with MyST Documents!


Quickstart TutorialsΒΆ

Get up and running with MyST with the following quickstart tutorials:

Publish a Website 🌎

Learn the basics of customizing a MyST Website, including sharing frontmatter between pages.

Create Scientific Publications πŸ“‘

Learn the basics of MyST Markdown, and export to a Word document, PDF, and LaTeX\LaTeX!

MyST Markdown Guide πŸ“–

See an overview of MyST Markdown syntax with inline demos and examples.

Coming from JupyterBook or Sphinx?

πŸ‘‹ We are glad you are here! πŸ’š

There are many ways that mystmd can be used with JupyterBook and Sphinx. We recommend that you read background on mystmd, which goes over how these projects overlap and work together!

TL;DR
Yes, you can use mystmd with your JupyterBook! mystmd can create scientific PDFs and can natively read the _toc.yml as well as all of your existing MyST Markdown content and Jupyter Notebooks.
Yes, mystmd is compatible with intersphinx even though it is written in Javascript not Python!
JupyterBook and mystmd have overlap in the ability to create online books like this one. mystmd has some extra capabilities for cross-references, interactivity and performance.

Project GoalsΒΆ

MyST is part of the Executable Books organization, and is an open-source, community-driven project to improve scientific communication, including integrations into Jupyter Notebooks and computational results.

Technical Goals

Architecture

The mystmd command line tool can be used to parse MyST Markdown and Jupyter Notebooks into an AST. This data can be saved as JSON, or rendered to a website (like this one!) or any number of formats including PDF & LaTeX\LaTeX, Word, React, or JATS.

Using Sphinx or Python?

For integration with Sphinx, use the Python implementation for MyST or JupyterBook, which can be found at:

Although many tools in the MyST Ecosystem follow the same conventions and specification, the following documentation refers only to the Javascript MyST Markdown CLI.

MyST MarkdownMyST Markdown
Community-driven tools for the future of technical communication and publication