DO YOU WANT TO BUILD AND WRITE GLORIOUS TECHNICAL DOCUMENTATION FULL TIME? EMAIL mark@helium.com. WE NEED YOU.
I love documentation. If you work with/are writing code intended for usage and consumption by more than one person, you should love it, too. Documentation and other resources will make or break the success of your project. And the more open and collaborative you want development to be, the more crucial docs become.
With that in mind, here's a list of docs and other developer resources that myself and others find particularly useful, well-written, and otherwise "beautiful." May they serve to inspire you when writing and designing yours. Thanks to various contributors, we now also have sections dedicated to Writing about Documentation and Tools for Generating Docs.
This should be updated fairly regularly. As usual, pull requests are encouraged.
- If you're contributing a link, be sure to include a few words on why you're adding it and some sort of self-attribution so that people can know from whom it came.
- All docs are listed in the order they were added. Keep this order when submitting your PR.
- Redis Commands - Most of the Redis docs are exceptional, but this section really epitomizes the combination of good design and usability. And all the individual command pages give you the ability to test things out without leaving the page. Pretty close to perfect.
- GitHub Developer Docs - I don't always get excited about accordion-based navigation, but when I do...
- Dropwizard - Beautiful and concise; another Bootstrap joint. (contributed by mrtazz).)
- Riak Pipe README - The simplicity of READMEs means that you can't obscure shitty content with flashy design. This one is written by my Basho colleague Bryan Fink and should be committed to memory as an excellent example of how to write READMEs.
- Learn You Some Erlang (contributed by @lenary) (It should also be noted that LYSE was inspired by Miran Lipovača's Learn You A Haskell.)
- CoreOS - Primary-colored goodness and a distributed system to boot (contributed by @lucperkins)
- Django Documentation - (contributed by @bretthoerner)
- Clojuredocs.org (contributed by @mrb_bk)
- FreeBSD Handbook - Clean and direct documentation of an OS. (contributed by @mrtazz)
- Ruby on Rails Guides - (contributed by @seancribbs)
- Pow Annotated Source - Built with docco. (contributed by @BonzoESC)
- Stripe Documentation and Full API Documentation - Multiple languages, example code, good detail on the API; especially love how the API docs show examples for curl and their supported client libraries. (contributed simultaneously by @tnm and @technoweenie)
- Librato Developer Docs - Librato's RESTful API documentation. (contributed by @josephruscio)
- CoffeeScript - (contributed by @joedevivo)
- Why's (Poignant) Guide to Ruby - (contributed by @joedevivo)
- Twitter Bootstrap - Documented the project using the project. (contributed by @kylewest)
- hogan.js - Simple and Beautiful. (contributed by @kylewest)
- Scala Documentation - Beautifully-styled Scala documentation site. (Contributed by David M. Lee)
- Linode Guides and Tutorials (contributed by @davidmatas)
- Brighter Planet API (contributed by Derek Kastner)
- Symfony2 Docs (contributed by Rodney Keeling)
- Number Laundry API - Fun design, simple examples. (contributed by @jmhobbs)
- Underscore.js - Simple, clean, single page. (contributed by @twe4ked)
- Qt - Very comprehensive documentation with tutorials and guides and great examples. (contributed by @nikhilcutshort)
- CasperJS - CasperJS is a navigation scripting & testing utility for PhantomJS, written in Javascript. (contributed by @n1k0)
- rubyamqp.info - A number of in-depth guides that cover Ruby
amqp
gem but also try to explain AMQP 0.9.1 features, why they exist, and how they are supposed to be used. (contributed by Michael Klishin) - Savon.rb - (contributed by Mathias Meyer)
- Android Developer Documentation (contributed by Rajeev N B @rBharshetty)
- ØMQ - The Guide - Exciting documentation for an exciting lib. Concise working code examples available in multiple languages. Concepts are explained clearly. (contributed by kindkid)
- Postmark Developer Docs - Simple, easy to navigate, informative.
- Twitter Developers Docs - In-depth and very well organized. (contributed by @tsantero)
- GitHub Styleguide - Pragmatic styleguide with sections on Ruby, JavaScript and CSS. (https://twitter.com/github) (contributed by @lenary)
- Moment.js - Thorough, well-designed, and excellent use of top-nav. (contributed by @joshuapoehls)
- Solarized - Beautiful documentation about a color scheme, using the color scheme from Ethan Schoonover. (contributed by @seancribbs)
- Ember.js - The overall navigation could be done a bit better but the presentation and readability is quite nice. (contributed by @cmeik)
- Basho Docs - Well-designed, excellent use of versioning, integrated search, and much more.
- Go By Example - Clean, simple, and extensive. These docs that make you want to learn Go just because they make it so straightforward.
- gevent API Docs - Clean, polished docs for gevent. (contributed by rubik)
- CodernityDB - Clean, extensive, useful. I also love the fact that the day the software was released the documentation was this extensive.
- Riemann - Great design, easy to read, and very thorough with introductory and advanced topics.
- Pretty RFC - Reworked IETF documents for easier viewing.
- Vagrant - Well organized, easy to read, attractive design. (@clstokes)
- Wolfram Language - Nice top-level navigation in a grid layout. Topics grouped by color, each with a relevant graphic and on-click menu of sub-topics. (contributed by troytop)
- Lisp Flavored Erlang: Quick Start - Attractive presentation, nice jumpstart for the language. (contributed by @macintux)
- Thinking Forth - Forth is now largely eclipsed by Factor, but the book remains an inspiring look at the ideas behind this stack-based language. (contributed by @macintux)
- Packer Documentation - These are just lovely.
- Abjad: Modeling Music in Python - Clean styling, and impressive integration of figures and diagrams. (contributed by @adorsk)
- SqlAlchemy - One of the most comprehensive pieces of documentation I've ever seen, with excellent linking and layout. (contributed by @adorsk)
- Sonata Project - All the Sonata Project bundles for Symfony2 on a single page. These have a nice, clear layout. (contributed by @NoScopie)
- Laravel - Easily-readable and well-organized docs. Navigation is well formatted and articles are easy to consume. (contributed by @ToddSmithSalter)
- FullCalendar – Concise overview of all APIs on a single page, and in-depth descriptions for each. (contributed by @gr2m)
- Rust Guides - Rust is a pre-1.0 language with a constantly-changing API, but the docs (written by Steve Klabnik) are clearly a high priority. The guides in particular illustrate core concepts of the standard library in a conversational, accessible style. (contributed by Nick Cox
- MongoDB Manual - Easy to navigate, clean, carefully and well designed manual. (contributed by ericbn)
- Mailgun Documentation - Email service for developers. Language selector, API code samples, editable in the browser, created with Sphinx. (contributed by @leemunroe)
- Grav Documentation - Documentation for Grav, a modern open source flat-file CMS. Tightly integrated with GitHub in markdown format, with quick search and highlight. (contributed by @rhuk)
- Mailjet API guides - Great documentation with generated code samples using Slate from Tripit
- Atlassian GIT Tutorials - Documentation and tutorials on Git. I like their layout. It is simple and foucssed on explaining the concepts with good diagrams, tutorials and glossary. (contributed by @vaseehh)
- Digital Ocean API Docs - These docs are stellar. Examples are abundant and the organization makes each component of the API easy to reason about. (contributed by @jasonaibrahim)
- Vue.js 2.x Docs - Awesome guide on the Vue.js framework, one of the best docs of any javascript frameworks in my opinion. If you had read them you don't need other manuals on the net to start coding with Vue. (contributed by @flppv)
- Designing Great API Docs - Blog post by @jamesyu about what he/Parse finds essential in API Docs. (contributed by @hobbyist)
- TomDoc - A specification for Ruby library API docs by @mojombo (contributed by @lenary)
- Write the Docs - A conference for authors of technical documentation. (contributed by @macintux)
- Writing Great Documentation - Covers a variety of topics relating to writing good documentation such as content, style, formatting and so on. (contributed by Paul A. Wilson
- docco - Pretty docs from source code comments with ports for many languages. (contributed by @kylewest)
- DocumentUp - Instantly beautify your Github repositories'
README.md
. (contributed by @kylewest) - Sphinx - Comprehensive documentation tool using restructuredText with beautiful HTML and PDF output. (contributed by @nikhilcutshort)
- MkDocs - Documentation with Markdown, written in Python. (contributed by ericbn)
- Read the Docs - Hosted docs using Sphinx or MkDocs, supports translations and finding docs for specific software versions. Used by the Django Docs. (contributed by Stephen Paulger)
- dr.js - Tiny JavaScript documentation generator from the author of RaphaëlJS. (contributed by @nikhilcutshort)
- Markdoc - Lightweight documentation/wiki generator in Python, released in the public domain. (contributed by Neelfyn)
- ApiGen - Creates clean API documentation from PHP source code (contributed by bryceadams)
- docgenerator - Organize your documentation in Markdown files. (contributed by Florian Margaine)
- dexy - Extensible documentation/report generator supporting multiple programming languages and serveral input and output formats. (contributed by troytop)
- Slate - Static API documentation creation tool from the team at Tripit.
- MireDot - REST API documentation generator for Java. Plugs into your build process and generates a searchable html page. (contributed by bertvh)
- codo - CoffeeScript API documentation generator, similar to YARD. (contributed by Logan Koester)
- Flatdoc - Create well designed open source documentation from Github repository README files or simple Markdown files. (contributed by @moore)
- GitBook - Utility for generating documentation, books and exercises using GitHub/Git and Markdown. (contributed by Samy Pessé)
- Daux - A documentation generator that uses a simple folder structure and Markdown files to create custom documentation on the fly. It helps you create great looking documentation in a developer friendly way. (contributed by veshinak)
- comment.js - Simple API documentation generator. (contributed by @dciccale)
- phpDocumentor - phpDocumentor enables you to generate documentation from your PHP source code. (contributed by shivamdixit)
- Hologram - Hologram is a Ruby gem that parses comments in your CSS and helps you turn them into a beautiful style guide. (contributed by @jchild3rs)
- Middleman - Static site generator using all the shortcuts and tools in modern web development. (contributed by Sota Yamashtia)
- documentation.js - Generates documentation from JavaScript source code. (contributed by tmcw)
- SassDoc - A Sass documentation generator that utilizes inline comments to make pretty and powerful docs. (contributed by Hugo Giraudel)
- Pickles - Pickles is an open source living documentation generator that works on feature files written in the Gherkin language.
- ApiDoc RESTful web API Documentation Generator that creates documentation from API descriptions in your source code. (contributed by Trenton Broughton)
- Documentation theme for Jekyll - Documentation theme built on Jekyll. Includes detailed notes on how to tackle nearly every technical documentation scenario, from single sourcing to conditional filtering, PDF output, relative links, and more.
- JSDoc - Generate JavaScript API documentation directly from source code comments. Also useful as a style guide for JS commenting, in general. Google uses a version of JSDoc tags for its Closure compiler.
- Asciidoctor - Asciidoctor is a fast text processor and publishing toolchain for converting AsciiDoc content to HTML5, DocBook 5 (or 4.5) and other formats. (contributed by ThomasG77)
- Bookdown - A open-source (GPL-3) R package to facilitate writing books and long-form articles/reports with R Markdown. Support for languages other than R, including C/C++, Python, and SQL, etc. (contributed by ThomasG77)
- Pandoc If you need to convert files from one markup format into another, pandoc is your swiss-army knife. Can generate documentation from most common markup languages. (contributed by ThomasG77)