Description
A documentation generation system that's
beautiful by default, flexible across formats and styles, and
powerful enough to support JSDoc's advanced syntax.
Using babel, we have support for a wide range
of ES6 & ES7 features, as well
as Flow type annotations.
By statically analyzing your JavaScript code, documentation.js can write
many parts of your documentation for you. It can infer parameter names
and types, class membership, return values from Flow types, and lots more.
You can use the --polyglot mode of documentationjs to document native node.js
modules in JSDoc within the C++ code that implements the feature.
Using module-deps, documentation can
crawl require() graphs - pointing it to your app's main file will find all
referenced files and include all of their documentation.
The --github option automatically permalinks documentation to the exact
sections of code it refers to in a GitHub repository.
The gulp-documentation project
lets you run documentation as a Gulp build task.
documentation.js alternatives and similar libraries
Based on the "Documentation" category.
Alternatively, view documentation.js alternatives based on common mentions on social networks and blogs.
-
codecrumbs
Learn, design or document codebase by putting breadcrumbs in source code. Live updates, multi-language support and more. -
dexy
is a free-form literate documentation tool for writing any kind of technical document incorporating code. -
ip-num
A TypeScript/JavaScript library for working with ASN, IPv4, and IPv6 numbers. It provides representations of these internet protocol numbers with the ability to perform various IP related operations like parsing, validating etc. on them -
coddoc
DISCONTINUED. is a jsdoc parsing library. Coddoc is different in that it is easily extensible by allowing users to add tag and code parsers through the use of coddoc.addTagHandler and coddoc.addCodeHandler. coddoc also parses source code to be used in APIs.
CodeRabbit: AI Code Reviews for Developers

* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of documentation.js or a related project?
README
The documentation system for modern JavaScript
:date: Current maintenance status
- Supports modern JavaScript: ES5, ES2017, JSX, Vue and Flow type annotations.
- Infers parameters, types, membership, and more. Write less documentation: let the computer write it for you.
- Integrates with GitHub to link directly from documentation to the code it refers to.
- Customizable output: HTML, JSON, Markdown, and more
Examples
Documentation
- [Getting Started](docs/GETTING_STARTED.md): start here
- [Usage](docs/USAGE.md): how to use documentation.js
- [Recipes](docs/RECIPES.md): tricks for writing effective JSDoc docs
- [Node API](docs/NODE_API.md): documentation.js's self-generated documentation
- [Configuring documentation.js](docs/CONFIG.md)
- [FAQ](docs/FAQ.md)
- [Troubleshooting](docs/TROUBLESHOOTING.md)
- [Theming](docs/THEMING.md): tips for theming documentation output in HTML
- See also: a list of projects similar to documentation.js
User Guide
Globally install documentation
using the npm package manager:
$ npm install -g documentation
This installs a command called documentation
in your path, that you can
point at JSDoc-annotated source code to generate
human-readable documentation. First, run documentation
with the --help
option for help:
Usage:
# generate markdown docs for index.js and files it references
documentation build index.js -f md
# generate html docs for all files in src, and include links to source files in github
documentation build src/** -f html --github -o docs
# document index.js, ignoring any files it requires or imports
documentation build index.js -f md --shallow
# validate JSDoc syntax in util.js
documentation lint util.js
# update the API section of README.md with docs from index.js
documentation readme index.js --section=API
# build docs for all values exported by index.js
documentation build --document-exported index.js
# build html docs for a TypeScript project
documentation build index.ts --parse-extension ts -f html -o docs
Commands:
build [input..] build documentation
lint [input..] check for common style and uniformity mistakes
readme [input..] inject documentation into your README.md
Options:
--version Show version number [boolean]
--help Show help [boolean]
[Contributing](CONTRIBUTING.md)
We have plenty of issues that we'd love help with.
- Robust and complete
JSDoc
support, including typedefs. - Strong support for HTML and Markdown output
- Documentation coverage, statistics, and validation
documentation is an OPEN Open Source Project. This means that:
Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project.