Interactive, Iterative Schema Documentation
davila.js will be a complete reimplementation of DAVILA, an interactive schema annotation tool, built in Processing and released in 2010. The new version will be a browser-based tool with interactive customization features.
This repo uses git-flow conventions; master contains the most recent release, and work in progress will be on the develop branch. Pull requests should be made against develop.
-
Find or generate your schema (currently only supports MySQL). To export a schema from an existing database:
mysqldump -u root -p --no-data dbname > schema.sql
-
Navigate to https://princeton-cdh.github.io/davilajs/ (current in-progress prototype), and drag your schema onto the drop zone on the page.
-
View and interact with a visualization of the entities and relationships in your schema.
-
Make sure you are starting on the development branch
git checkout develop
-
Install jekyll using bundler, which is currently used for running davila.js and unit tests in the browser:
gem install jekyll bundler
-
Download nodejs pkg and install
-
Install local npm dependencies for unit testing:
npm install
-
Make sure your jekyll
_config.yml
file has a an emptybaseurl
configured for development. -
Run jekyll:
bundle exec jekyll serve
-
Navigate to http://localhost:4000/test/ or run tests via
mocha
on the command line. -
If all tests run, then navigate to http://localhost:4000/ to use davilajs
Tests are written with mocha, chai, and sinon and can be run in the browser or on the command line.
To run them in the browser, start jekyll and navigate to http://localhost:4000/test/
To run them on the command line, use mocha
.