Don’t get me wrong , I do enjoy digging into the source and etc, but sometimes you just need to get some things done quickly, and last thing you would like to do in this case would be looking at the source. Besides we all realize that, there is always a chance to get passion that usually is reason for loosing a focus. Few day’s ago I had to work on some java code where you usually have nice javadocs, which do helps a lot and saves your time. There are bunch of tools out there but each uses it own different approach and there is no standard of course :). I have decided to use jsdoc-toolkit to document bespin’s jack backend and maybe improve it as well. I was surprised to find out that it was implemented in javascript and was using rhino for runtime. I tried to be strong and wanted to protect myself from all the ideas that where coming to my mind, but apparently not strong enough as I ended up stripping out rhino from it and replacing it with narwhal. I never liked template engine of jdocs so I have replaced it with seethrough_js. Apart from that I have modified almost everything and currently working on switching from jsdoc-toolkit’s parser to rhino’s parser and AST API, which will of course open a door for all kinds of crazyness !!! One more cool thing about it, is that it’s packaged as standard javascript package and there for can be used by any server implementing ServerJS without any dependency on anything. Once I will finish with the rhino parser tool will get cool additional features if it will be runnig on top of rhino otherwise it will use standard [jsdocs-toolkit] parser, unless I will be crazy enough and will start porting of rhino parser to js, oh god I’m already thinking about it!! So feel free to try jsdocs out!! Contributions is also more then welcome!!
In case if you wonder how the end result looks like here is some links:
BTW it’s all css no js for sake of being able to read the docs from any tool you would’ve think of… For IE most of the css magic is ignored so the index menu and line highlighting won’t work!!