Description
An entity-relationship diagram generator from a plain text description.
Description
erd transforms a plain text description of a relational database schema to a graphical representation of that schema. It is intended that the graph make use of common conventions when depicting entity-relationship diagrams, including modeling the cardinality of relationships between entities.
A quick example that transforms an er
file to a PDF is just below. The original source file can be found amongst the examples in the repository.
$ cat simple.er
# Entities are declared in '[' ... ']'. All attributes after the
# entity header up until the end of the file (or the next entity
# declaration) correspond to this entity.
#
[Person]
*name
height
weight
+birth_location_id
[Location]
*id
city
state
country
# Each relationship must be between exactly two entities, which
# need not be distinct. Each entity in the relationship has
# exactly one of four possible cardinalities:
#
# Cardinality Syntax
# 0 or 1 0
# exactly 1 1
# 0 or more *
# 1 or more +
Person *--1 Location
$ erd -i simple.er -o simple.pdf
The PDF should now contain a graph that looks like this:
See the README.md file for more examples and instructions on how to write ER files.