{"id":13659117,"url":"https://github.com/softwaretechnik-berlin/dbml-renderer","last_synced_at":"2025-10-10T16:45:50.444Z","repository":{"id":47550147,"uuid":"321659677","full_name":"softwaretechnik-berlin/dbml-renderer","owner":"softwaretechnik-berlin","description":null,"archived":false,"fork":false,"pushed_at":"2024-07-05T12:36:21.000Z","size":996,"stargazers_count":221,"open_issues_count":11,"forks_count":26,"subscribers_count":6,"default_branch":"master","last_synced_at":"2024-10-02T08:24:37.794Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/softwaretechnik-berlin.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-12-15T12:21:59.000Z","updated_at":"2024-09-25T08:34:06.000Z","dependencies_parsed_at":"2023-12-05T16:40:22.837Z","dependency_job_id":"30e7297a-7734-4f78-b4a1-535de2c8754f","html_url":"https://github.com/softwaretechnik-berlin/dbml-renderer","commit_stats":{"total_commits":150,"total_committers":6,"mean_commits":25.0,"dds":"0.42666666666666664","last_synced_commit":"ca0302a91d26abc9f13b23da523c2d1a312f9c31"},"previous_names":[],"tags_count":29,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/softwaretechnik-berlin%2Fdbml-renderer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/softwaretechnik-berlin%2Fdbml-renderer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/softwaretechnik-berlin%2Fdbml-renderer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/softwaretechnik-berlin%2Fdbml-renderer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/softwaretechnik-berlin","download_url":"https://codeload.github.com/softwaretechnik-berlin/dbml-renderer/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":223952685,"owners_count":17230933,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-08-02T05:01:05.421Z","updated_at":"2025-10-10T16:45:45.070Z","avatar_url":"https://github.com/softwaretechnik-berlin.png","language":"JavaScript","readme":"[![npm version](https://img.shields.io/npm/v/@softwaretechnik/dbml-renderer)](https://www.npmjs.com/package/@softwaretechnik/dbml-renderer) [![.github/workflows/build.yml](https://github.com/softwaretechnik-berlin/dbml-renderer/actions/workflows/build.yml/badge.svg)](https://github.com/softwaretechnik-berlin/dbml-renderer/actions/workflows/build.yml)\n\n`dbml-renderer` renders [DBML](https://www.dbml.org/home/) files to SVG images.\nIt provides a command line interface, so that you can easily use it in your\ndocumentation toolchain.\n\n## Command Line Usage\n\n```bash\nnpm install -g @softwaretechnik/dbml-renderer\n```\n\nIt can then be used to render DBML files like so:\n\n```bash\ndbml-renderer -i example.dbml -o output.svg\n```\n\nFor instance, the following input will produce the image below:\n\n```dbml\nTable users {\n    id integer\n    username varchar\n    role varchar\n    created_at timestamp\n}\n\nTable posts {\n    id integer [primary key]\n    title varchar\n    body text [note: 'Content of the post']\n    user_id integer\n    created_at timestamp\n}\n\nRef: posts.user_id \u003e users.id\n```\n\n![Posts example output](examples/user-posts.dbml.svg)\n\nThe [examples directory](examples/) contains other input and output examples.\n\n## Testing\n\nThe tests can be run with `npm test`. They use the examples available in the\n`examples` directory. Each `.dbml` file is used as input to render each of the\navailable output formats.\n\nThe output of a test run is placed in `.test-output`. In case the renderer has\nbeen modified, the test output can be visually inspected and, confirmed the\noutput is good, the expectations can be updated by copying them with the\nfollowing command:\n\n```bash\ncp .test-output/* examples/\n```\n\nTo aid the visual inspection, you can open `.compare-test-output.html` to\ncompare side-by-side each generated SVG.\n","funding_links":[],"categories":["JavaScript"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsoftwaretechnik-berlin%2Fdbml-renderer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsoftwaretechnik-berlin%2Fdbml-renderer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsoftwaretechnik-berlin%2Fdbml-renderer/lists"}