Replies: 1 comment 1 reply
-
|
The logic makes sense to me 💯 Maybe worth also adding here that there are THREE meanings of "Jupyter Book":
These are both documented in @choldgraf's post above 👆🌟 👉 The project and community are also called Jupyter Book 😄 And the MyST engine sits within that project. So you can have a "jupyter book" built with "MyST" made by the "Jupyter Book" team ❤️ |
Beta Was this translation helpful? Give feedback.
1 reply
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
We've had a bunch of people ask about the differences between Jupyter Book and the MyST Document Engine. This write-up provides my understanding of the difference between the two. My goal is to clarify the relationship between Jupyter Book and the MyST Engine, and provide guidelines for how to decide where to focus your time and effort! I tried to consolidate content from places where this has been discussed (see the bottom for that list).
A note on terminology
"Jupyter Book" has three meanings that can cause confusion:
This means you can have "a jupyter book built with MyST made by the Jupyter Book team." In this document, "Jupyter Book" refers to Jupyter Book 2 unless otherwise specified.
Who should use Jupyter Book vs. MyST?
Use Jupyter Book if you're creating books, documentation sites, or community websites with standard needs. Use MyST Engine if you need heavy customization, are building your own publishing tools and applications, or want fine-grained control over the pipeline.
Jupyter Book is designed for typical users with an opinionated, accessible tool focused on multi-page documents and the "book theme" aesthetic. Think: educational materials, research documentation, community websites where sensible defaults "just work."
The MyST Engine is a power-user tool emphasizing flexibility, modularity, and control. It's agnostic about output formats and features an extensive plugin ecosystem for custom publishing workflows or building tools on top of MyST.
Technical relationship
MyST is the engine, Jupyter Book is an opinionated distribution built on top of it. This mirrors how Jupyter Book 1 related to Sphinx: Sphinx was the engine, JB1 provided a configurable theme, workflows, and configurations for books.
Currently (early 2025), Jupyter Book 2 and MyST are very similar in practice. The vision is for them to diverge over time: MyST remains the flexible foundation, while Jupyter Book adds features particularly useful for books and websites (specialized directives, book-specific themes, workflow tooling).
Why documentation is intermixed
Jupyter Book 2 launched with new architecture, but documentation is still catching up. MyST is reaching feature parity with JB1's Sphinx-based capabilities (see known limitations of JB2), and some content documented in MyST first needs proper integration or cross-references in JB docs.
This creates confusion about where to find information and where to report issues. The team is actively working to clarify this as both projects mature!
Documentation guidelines for contributors
Document in Jupyter Book if it's about using JB's curated workflow with standard configurations. Document in MyST Engine if it's about core engine features, plugins, or heavy customization. When in doubt, write in one location and cross-link from the other.
The guidance follows the Diátaxis framework: Jupyter Book focuses on tutorials and how-to guides for typical workflows (creating books, configuring themes, exporting with default settings), while MyST provides reference documentation, engine explanations, and customization guides (re-use MyST components in applications, plugin APIs, build your own themes).
Examples: "How to create your first book" goes in Jupyter Book. "MyST directive syntax reference" goes in MyST Engine. "Enabling a plugin in your book" and "Write a basic plugin" goes in Jupyter Book with a link to the plugin docs in MyST for full customizability.
Long-term vision
This split is a "best-effort description" that continues to evolve. The team will reassess as Jupyter Book 2.0 matures and user patterns become clearer. The goal: make Jupyter Book highly accessible for typical workflows, keep MyST flexible for advanced users, minimize confusion through clear cross-references, and avoid content duplication while ensuring each tool has standalone documentation.
References where this has been discussed before
Beta Was this translation helpful? Give feedback.
All reactions