Convert docs to the docset format.


Keywords
converter, documentation, documentation-tool, mkdocs, mkdocstrings, pydoctor, python, sphinx
License
MIT
Install
pip install doc2dash==1.0.0

Documentation

Create Docsets for Dash and Friends

Documentation License: MIT Homebrew Tap Current PyPI release

doc2dash is an extensible Documentation Set (docset) generator that helps you to have documentation for all your favorite APIs in Dash-compatible API browsers.

An API browser is an application that runs locally on your computer and allows you to search various API docs by pressing a key combination and starting to type (I have bound it to ⌥Space bar and can’t write code without it).

The most common ones – Dash (macOS) and Zeal (Windows and Linux) – come with many docsets out of the box, but they can never offer you docsets for every package you’ll ever use. This is where doc2dash comes in: It takes your offline documentation and converts it into an indexed format that API browsers can read and search (very fast!).

Currently it supports all known intersphinx-based documentation systems like Sphinx, pydoctor, or MkDocs (with mkdocstrings). While doc2dash is a Python project, the support is not limited to Python-related formats.

It’s also extendable: you can write your own parser!

doc2dash Session

Quickstart

The fastest way to get started is installing doc2dash from our Homebrew tap:

$ brew install hynek/tap/doc2dash

Note

If you can’t – or won’t – use Homebrew, check out our installation instructions for alternatives.

Then point doc2dash at a directory containing built intersphinx-compatible documentation:

$ doc2dash directory/to/documentation

You should see an output like in the video above and find an appropriately named docset in the current directory. That’s it – you can add it to Dash or Zeal!


doc2dash has many more features and options – make sure to check out the usage for more details. A full how-to is available too.

Project Links

Credits

doc2dash is maintained by Hynek Schlawack and released under the MIT license.

The development is kindly supported by my employer Variomedia AG and all my amazing GitHub Sponsors.