Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ


Choose your language

InfoQ Homepage News DevDocs, a One Stop Shop for Reference Documentation

DevDocs, a One Stop Shop for Reference Documentation

This item in japanese

DevDocs combines multiple reference documentation sets, commonly used by software developers, in a single web site. DevDocs takes advantage of this centralization to offer crosscutting features to all the APIs such as a searchable interface, keyboard shortcuts, common layouts or a common table of contents.

According to DevDoc's vision statement:

DevDocs aims to make reading and searching reference documentation fast, easy and enjoyable. The app's main goals are to: keep booting and loading times as short as possible; improve the quality, speed, and order of search results; maximize the use of caching and other performance optimizations; maintain a clean, readable user interface; support full keyboard navigation; reduce "context switch" by using a consistent typography and design across all documentation sets; reduce clutter by focusing on a specific category of content (API/reference) and by indexing only the minimum useful to most developers.

DevDocs currently offers documentation mainly targeted for web development including: standards (e.g.: HTML, HTTP, CSS); languages (e.g.: Ruby, Python, JavaScript); libraries (e.g.: jQuery, Ember) and products (e.g.: Ruby on Rails, PostgreSQL, Redis, Git).

Thibaut Courouble, DevDocs' creator, told InfoQ that additional documentation sets are on the pipeline: "I recently started working on the Linux man pages, with Bash, C, C++, D3.js and Knockout.js also on my short-term todo list".

The DevDoc's HTML home page is an illustrative example of what DevDocs looks like:

Since all the documentation published on DevDocs is scrapped, the update process is not instantaneous. Thibaut asserts "the existing documentations are updated often, usually within a few days of a new version being released. If I miss a release, DevDocs's users are welcome to request an update on our Trello board".

DevDocs has been open sourced and welcomes contributors. There is also a voting system in place to request new documentation sets, although anyone can contribute, as explained by Thibaut:

Anyone is welcome to contribute new documentations. Much work went into creating a flexible scraper/toolchain that helps with adding new docs and maintaining the existing ones. The only requirements are a few "quality guidelines" and that the doc's license allows redistribution of modified versions (which Microsoft, Apple and Oracle prohibit).

As for choosing which documentations to work on myself, votes are definitely a major factor, personal preference another (though I've now added most of the ones I want), and also how organized the original docs are (i.e. how long it'll take to add it). 

The future plans for the site can usually be tracked on GitHub, says Thibaut:

Part of my plans can be tracked on GitHub. Speed and ease of use are my top priorities, so I have many ideas about optimizations and UI tweaks.

I'd like to create an offline-enabled version that works out-of-the-box (currently you have to download the code to use DevDocs offline) as well as smartphone/PhoneGap apps (the current app is already optimized for mobile but native apps would bundle the docs for offline reading).

Further down the road we could imagine deep integrations with IDEs. People have already created plugins for Sublime Text and Brackets.

Rate this Article