It’s been 4 years since I wrote Dex and began my journey into data visualization. It’s been gratifying and keeps me grounded in many current technologies. As the project has evolved, so has it’s needs. So some of the technology surrounding Dex is shifting around. I would like to talk about a few of them here.
DokuWiki -> Jekyll
I love DokuWiki, however, I find that I need more and less than it offers.
Being dissatisfied with the various site-export utilities offered by DokuWiki, I bit the bullet and started migrating the web-site and the internal Dex documentation to Jekyll.
This gives me much more control over the generated site with less worries about being hacked. There’s nothing worse than opening the main page of your open source project to discover a Viagra ad in it’s place.
Additionally, it will let me to publish the manuals online as well as within the internal Dex documentation.
DexCharts -> DexJS
I have realized that the DexCharts project was really a module within a more general purpose framework which I will publish on GitHub as DexJS. DexJS will absorb the DexCharts project and the various DexCharts will simply be members of the dex.charts module within DexJS.
NodeJS & NPM
I use gulp to generate my distribution. Basically, it’s a task manager which provides capabilities similar to Grunt which is analgous to Ant in the Java tech-stack. So far, I am amazed at the power of Gulp. Gulp and all it’s sub-task are delivered to me via npm of course.
Within my gulpfile.js, I am using task which aggregate the core dex modules into a developer and minified versions with sourcemaps.
The charts are intentionally excluded. The various charts have additional dependencies which are not appropriate for general use.
I will likely distribute dexjs as a npm module once I fully assess the ramfications of that.
DexJS will require JQuery and Underscore because of the general power and capability that they provide. Much of what I have already written could, should, and will be refactored to leverage the capabilities of these two libraries.
Dex -> Github
Over time, I am migrating Dex over to GitHub. This could take awhile, but I’m working towards this.