Hi all,

I've written a command-line documentation & dependency tool for jQuery
plugins:

http://code.diffle.com/jqdoc/

I did it mostly to solve a few pressing problems I had.  Among the
things this is useful for:

* Getting a full transitive dependency list of a plugin
* Packaging together plugins with their dependencies, so you have only
a single file to download (in combination with UNIX "cat" command)
* Building full documentation for a set of plugins from the command
line.
* Parsing doc comments from plugins and making them available in JSON
format to other programs.

Dependency information is specified through the JSDoc - it looks for
@dependency tags and builds a dependency graph of them, then does a
topological sort of that to find the full list of dependencies.  It
specifies dependencies by filename, which is non-ideal, but seems the
best option until there's some sort of canonical identifier for
plugins.

I tried to stick closely to the existing documentation format for the
bassistance.de documentation generator - the tags accepted by this
tool are essentially a superset of the tags available for that one.
The added tags are metadata-related - @license, @organization, etc.
I'm open to other suggestions - I know there was talk of a generic
metadata framework for plugins a while back, and using the
documentation seems simpler and less of a hassle than specifying a
separate META.json file for each plugin, particularly when the JSON
can be generated automatically.  (Also, unrecognized tags are passed
through unchanged by the JSON output, so this is already somewhat
useful for that.)

Regards,
Jonathan

Reply via email to