If you are developing open source library one of most important things is documentation and it's great if it has good design. But anyway, it's better to have a badly designed documentation than none at all.
So here i'll describe of some tectonics (jsdoc, unittests, grunt) to apply documentation for your opensource project.