Skip to content

inukshuk/sqleton

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

80 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

sqleton ['skelɪtən]

Visualizes your SQLite database schema.

Installation

$ npm install -g sqleton

You need to install graphviz separately:

$ [pacman -Sy | apt-get install | brew install] graphviz

Example

$ sqleton -o db.svg db.sqlite

The format will be inferred from the name of the output file; you can use any format supported by graphviz (png, pdf, svg, and many more).

Usage

Usage: sqleton [options] <database>

Options:
  -L, --layout      The layout command
       [choices: "neato", "dot", "circo", "fdp", "osage", "sfdp", "twopi"]
                                                          [default: "fdp"]
  -e, --edge-labels  Label foreign key edges                     [boolean]
  -t, --title        Optional title string
  -f, --font         The font to use                [default: "Helvetica"]
  -d, --direction    Graph direction [choices: "TB", "LR"] [default: "LR"]
  -o, --out          Output file (determines output format)     [required]
      --skip-index   Skip writing table indexes                  [boolean]

Fine-Tuning

To fine-tune your graph, the best option is to use .dot as your output format and adjust the parameters in the file.

Node.js

const sqleton = require('sqleton')

// Open your database and writable stream
// ....

sqleton(db, stream, options)
  .then(() => { db.close() })
  .then(() => { stream.end() })

What about PostgreSQL or other databases?

sqleton was written to visualize SQLite schemata. Having said that, you can try to dump your schema and create a new SQLite database for visualisation from it.

License

GPL-3.0