While nobody was looking I've been working on providing HTML documentation in babel packages as exemplified by the docindex.rst file I've been adding to some of them. It works really well, rather than keep using markdown for github you can change this to rst, and use nimrod rst2html to provide local hyperlinked versions of the docs. And through the use of nakefiles you can even turn those .rst links into html clickable links.
And then I thought that maybe babel packages could provide a docs parameter with a comma separated list of html, txt, pdf files provided by the package. How to display these docs to the user then? Similar to the babel path command the docs command could be made to display the contents of this variable resolved to full paths for the user, but I thought it might be cooler to merge jester and make babel docs generate dynamic locally browsable documentation of installed packages.
The idea is then to have babel docs scan all the .babel files looking for the docs parameter. If it is found, babel will generate an index of installed packages with a description for each and a link to the file(s) mentioned in the docs parameter. If the parameter is not available, at least babel could make the effort of providing a browsable directory listing… with the additional advantage that files ended in .nim could have some buttons like show | docstrings to either display the source code with highlighted colors for inspection or run nimrod doc on the .nim file to display the public API. So even without the explicit docs parameter some documentation could be generated automatically.
But the problem would be making babel depend on jester. Maybe this would be accepted in a split fashion, having babel the basic information (doc tag in .babel) and then providing a babeldocs package with all the implementation of what I've just suggested? For convenience then babel itself would have to provide an importable module so as to not having to rewrite all the parsing/package logic.
Don't worry about exposing the API, I'll start a babel browser package and make pull requests as I progress. Also, I had on my todo to make a set of scripts to generate static pages for babel-packages, but then you quickly realise nobody wants to read manually through the list and everybody is just used to googling stuff, so no matter how good/pretty you make a static page people will long for a search and that requires a server.
With this babel browser, a search would just piggyback on babel's search command and display the results in html, with the browser allowing to sort/filter by name, license, etc.
So 2013 was the year of Nimrod. 2014 will be the year of Babel.