mdBook is a command-line application for creating online books, tutorials and technical manuals from Markdown documents. Written in Rust, it is particularly popular for programming documentation and other material organised into chapters.
An mdBook project consists of Markdown files and a summary defining the book’s structure. The application converts these files into a navigable publication, complete with a contents sidebar, page navigation and facilities for finding information across the book.
The software is designed to keep the authoring process straightforward. Writers can concentrate on individual chapters rather than manually building navigation and formatting. Although its primary output is a website, mdBook also has an extensible processing architecture that accommodates alternative output formats and additional document transformations.
This is free and open source software.
Key Features
- Creates structured books from individual Markdown chapters.
- Uses a summary file to define chapters, subchapters and navigation order.
- Includes full-text search across the generated book.
- Provides automatic previous and next chapter navigation.
- Syntax highlighting supports code examples in numerous programming languages.
- Built-in themes provide alternative visual presentations, including light and dark styles.
- MathJax support enables mathematical equations within chapters.
- Rust code examples can be tested automatically to detect broken examples.
- Preprocessor extensions can modify or augment the Markdown before rendering.
- Custom renderers provide alternative output formats and presentation methods.
- Handlebars templates allow extensive customisation of the generated HTML.
- Cross-platform support – runs on Linux, macOS, and Windows.
Website: github.com/rust-lang/mdBook
Support:
Developer: mdBook contributors
License: Mozilla Public License v2.0
mdBook is written in Rust. Learn Rust with our recommended free books and free tutorials.
Related Software
| Rust Static Site Generators | |
|---|---|
| Zola | Fast static site generator in a single binary with everything built-in. Uses Tera |
| mdBook | Command line tool and Rust crate to create books using Markdown |
| Zensical | Modern static site generator |
| Marmite | Static site generator for blogs |
| Cobalt | Versatile yet simple to use static site generator |
| Typsite | Processes Typst source files and generates complete static websites |
| Kodama | Designed for creating interconnected Zettelkasten-style note collections |
| Dodeca | Fully incremental static site generator |
| Adduce | Versatile, adaptable, and fast static site generato |
Read our verdict in the software roundup.
| Documentation Generators | |
|---|---|
| JSDoc | API documentation generator for JavaScript |
| Javadoc | Generate API documentation in HTML format |
| Sphinx | Create intelligent and beautiful documentation for Python projects |
| phpDocumentor | Complete documentation solution for PHP |
| Doxygen | Documentation system for C, C++, Java, Python and other languages |
| Docusaurus | Build, deploy and maintain documentation websites |
| mdBook | Create modern online books from Markdown files |
| YARD | Ruby documentation tool |
| Starlight | Documentation website framework |
| Docco | Literate-programming-style documentation generator |
| Natural Docs | Documentation generator that supports 21 different languages |
| Quarto | Scientific and technical publishing system |
| Antora | Modular documentation site generator |
| Crycco | Quick and dirty documentation generator |
| ROBODoc | Documentation tool similar to Javadoc |
Read our verdict in the software roundup.
LinuxLinks helps you discover the best free and open source software for Linux. Explore our extensive collection of recommended applications, including alternatives to popular proprietary software.We also publish software reviews, Linux tutorials, hardware reviews, free programming books and articles covering the wider open source community. Browse our Linux resources to discover more. Know a useful free and open source Linux application we haven't covered? Suggest a program for inclusion. Has your software been featured on LinuxLinks? Display one of our Featured on LinuxLinks badges on your website or GitHub README. |


Please read our Comment Policy before commenting.