Developers can easily document large JavaScript projects with sphinx-js, Mozilla’s newly introduced solution. According to the company, there hasn’t been a tool able to handle large JavaScript documentation projects up until today.
The markup language JSDoc provides tags to describe common structures and tooling to hook into those tags, but Mozilla says all it ends up doing is providing an alphabetical list of projects.
“JSDoc scrambles up and flattens out your functions, leaving new users to infer their relationships and mentally sort them into comprehensible groups,” Erik Rose, senior staff software architect at Mozilla, wrote in a post.
sphinx-js is based off the Sphinx mature documentation tool. The Python world has become accustomed to using Sphinx because it supports a variety of language and output formats. With sphinx-js, Mozilla brings JavaScript support to the tool
“When you write a JavaScript library, how do you explain it to people? If it’s a small project in a domain your users are familiar with, JSDoc’s alphabetical list of routines might suffice. But in a larger project, it is useful to intersperse prose with your API docs without having to copy and paste things,” according to sphinx-js’ website. “sphinx-js lets you use the industry-leading Sphinx documentation tool with JS projects. It provides a handful of directives, patterned after the Python-centric autodoc ones, for pulling JSDoc-formatted documentation into reStructuredText pages. And, because you can keep using JSDoc in your code, you remain compatible with the rest of your JS tooling, like Google’s Closure Compiler.”
More information on how to get started is available here.