1. Dynamic, lightweight markup

  2. Semi-structured “small data” in flat files

  3. Distributed source control

  4. Version control

  5. Single sourcing

  6. Iterative, “lean” product development

  7. Review-driven workflows

  8. Mature development tools & environments

  9. Continuous build/delivery integration

  10. Modularity

Dynamic, lightweight markup

Writing docs directly in source using a simple coding language specially designed for tech writing

Semi-structured “small data” in flat files

Basic data about a product and its use stored in elegant, human-readable, Git-manageable text files

Distributed source control

The power of Git and all the platforms arising in its ecosystem

Version control

Docs and product code all tagged consistently, paired in perpetuity

Single sourcing

Obeying the dev’s DRY directive (Don’t Repeat Yourself), a lone, accessible source of truth for every piece of data or content

Iterative, “lean” product development

Working docs into feature development at earlier stages in agile environments

Review-driven workflows

Docs contributions as Git commits, submitted, approved, and merged under processes similar to product source.

Mature development tools & environments

Integrated code editors, Regex engines, testing suites, and open source platforms

Continuous build/delivery integration

Compile and package docs along with code, deploy immediately to remote platforms

Modularity

Mix and match content items and topics to generate customized aggregate documents