This will be the first in an ongoing series of posts sharing the tools, workflows and IDE setup I use in my daily development.
Today I would like to introduce you to offline documentation tools I use on macOS and Windows.
TLDR: Try Dash on macOS and Zeal on Window/Linux
In a recent situation, I couldn't remember how you would perform a
find on an
Array in Ruby. I knew it was just called
Normally you would do the following:
- Goto the browser
- Type in the search bar
ruby array find
- Then wait for the results to come back and click on the website of your choice where you might find some documentation
But with an offline documentation tool:
- Load app
- Pull Ruby docs for Array
- Look at available Array methods or search for anything mentioning find
No need to load any webpages, parse through results, just go straight to the source.
Let me introduce you to the tools I used when developing on macOS and Windows 10
Dash - Free (with paid upgrade) - https://kapeli.com/dash
Dash is an API Documentation Browser and Code Snippet Manager. Dash stores snippets of code and instantly searches offline documentation sets for 200+ APIs, 100+ cheat sheets and more. You can even generate your own docsets or request docsets to be included.
Dash is such an awesome tool to use and recommend it to everyone I work with. It has access to documentation for almost all major languages/frameworks/libraries you might work with. The extra bonus is that it also has a good library of cheat sheets to quickly lookup how to do something. Dash is free to use but comes with nag modal asking to you purchase it but the paid version comes with awesome integration features for Alfred and most code editors/IDEs.
This is what my Dash looks like. You can see a lot of different documentation downloaded on the left margin and my downloaded cheatsheets are hidden under the fold.
Pulling up documentation is fairly simple, in the top left you can either do a generic search that will scan all the documentation you have downloaded.
You can see in the left top margin results for
Array find across all the different language/frameworks/cheatsheets. But this is super noisy and we know we just want to search Ruby for a find method on the
Array class. That is easy to do if you know docset keyword. In the search just type
ruby: Array find
We now scoped our results to only search Ruby and then look for class and/or method we are looking for. If you look a little closer on the bottom left margin it will also display all the methods on the class, cool.
Most docsets already come with a defined keyword, typically the name of the language/library/framework. You can find and edit them in
Preferences > Docsets
Zeal - free - https://zealdocs.org/
Zeal is an offline documentation browser for software developers.
I would best describe Zeal as a stripped-down version of Dash. It only offers offline documentation for most of the popular language/libraries/frameworks, no cheatsheets or code snippet support.
Just like with Dash you can search and download documentation in a simple and easy manner.
Searching documentation functions very similar to Dash but its fuzzy search capabilities can sometimes be an annoyance.
Using an offline documentation tool can be super convenient. In fact, I was using the Markdown cheatsheet on Dash while writing this very post.
Give them a try and if you know of another tool share it in the comments. Happy Coding!