@egomobile/dbml-renderer
TypeScript icon, indicating that this package has built-in type declarations

3.0.1 • Public • Published

npm version .github/workflows/publish.yml

@egomobile/dbml-renderer

dbml-renderer renders DBML files to SVG images.

The tool was orginally implemented as CLI tool by softwaretechnik.berlin .

Install

npm install @egomobile/dbml-renderer

For instance, the following code will produce the image below:

import { parseDMBL } from "@egomobile/dbml-renderer";

const dbml = `Table users {
    id integer
    username varchar
    role varchar
    created_at timestamp
}

Table posts {
    id integer [primary key]
    title varchar
    body text [note: 'Content of the post']
    user_id integer
    created_at timestamp
}

Ref: posts.user_id > users.id`

console.log(
    parseDMBL(dbml, "svg")
);

Posts example output

The examples directory contains other input and output examples.

Testing

The tests can be run with npm test. They use the examples available in the examples directory. Each .dbml file is used as input to render each of the available output formats.

The output of a test run is placed in .test-output. In case the renderer has been modified, the test output can be visually inspected and, confirmed the output is good, the expectations can be updated by copying them with the following command:

cp .test-output/* examples/

To aid the visual inspection, you can open .compare-test-output.html to compare side-by-side each generated SVG.

Readme

Keywords

none

Package Sidebar

Install

npm i @egomobile/dbml-renderer

Weekly Downloads

2

Version

3.0.1

License

ISC

Unpacked Size

171 kB

Total Files

20

Last publish

Collaborators

  • ekmobile
  • egodux
  • mkloubertego
  • mkloubert
  • ekegodigital