JavaScript documentation generator tools JSDoc, YUIDoc, Docco. Which is the best ?

JavaScript documentation generator tools JSDoc, YUIDoc, Docco

JavaScript Document Generator in short is an API which process the JavaScript file and generates documentation from comments in source using a syntax.

Last week I implemented some of the JavaScript Document Generators [JSDoc, YUIDoc, Docco], here are some of my findings :


 JSDoc
– Syntax is easy to understand and implement with lot of choices
– Generated document is simple with all the tags listed on right side of the page.
– Default template of document is not user friendly.
  – Tags [methods, properties, modules] are grouped in same structure
– Interlinking between the pages and tags is not that perfect, like on index page if I click a tag then it will navigate me to the JS file where it belong (which is right) but when I click the tag on that page then it will take me back to the index page.
– No search feature

Docco
– Very easy to implement
– It generates very simple document, comments on left side and JS file on right side.
– Use no syntax just write comment using “//” and it will pick it up and show on left side of the document.
– No interlinking
– No Search Feature

YUIDoc
– Syntax is easy to understand but I found that it was not that easy in implementation as in JSDoc. However I got used to it after couple of trials
– Generated document is very user friendly, great use of the page space.
– Search feature on the template is great.
– Interlinking is prefect.
– Title, logo, version etc of the Index page are configurable through options.

After implementing them and reviewing the generated document I can conclude that YUIDoc is the best of them however need some practice to get used to it 😉


References : 
https://github.com/jsdoc3/jsdoc
http://jashkenas.github.com/docco/
http://developer.yahoo.com/yui/yuidoc/

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.