Simple entity relation (ER) diagrams generation
Project description
# Entity relation diagrams generator
[![Join the chat at https://gitter.im/Alexis-benoist/eralchemy](https://badges.gitter.im/Alexis-benoist/eralchemy.svg)](https://gitter.im/Alexis-benoist/eralchemy?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
ERAlchemy generates Entity Relation (ER) diagram (like the one below) from databases or from SQLAlchemy models.
## Example
![Example for a graph](https://raw.githubusercontent.com/Alexis-benoist/eralchemy/master/newsmeme.png?raw=true "Example for NewsMeme")
[Example for NewsMeme](https://bitbucket.org/danjac/newsmeme)
## Quick Start
### Install on a mac
The simplest way to install eralchemy on OSX is by using [Homebrew](http://brew.sh)
$ brew install eralchemy
### Install
To install ERAlchemy, just do:
$ pip install eralchemy
`ERAlchemy` requires [GraphViz](http://www.graphviz.org/Download.php) to generate the graphs and Python. Both are available for Windows, Mac and Linux.
### Use from the command line and a database
$ eralchemy -i sqlite:///relative/path/to/db.db -o erd_from_sqlite.pdf
The database is specified as a [SQLAlchemy](http://docs.sqlalchemy.org/en/rel_1_0/core/engines.html#database-urls)
database url.
### Use from the command line and a markdown file.
$ curl 'https://raw.githubusercontent.com/Alexis-benoist/eralchemy/master/example/newsmeme.er' > markdown_file.er
$ eralchemy -i 'markdown_file.er' -o erd_from_markdown_file.pdf
### Use from python
```python
from eralchemy import render_er
## Draw from SQLAlchemy base
render_er(Base, 'erd_from_sqlalchemy.png')
## Draw from database
render_er("sqlite:///relative/path/to/db.db", 'erd_from_sqlite.png')
```
### Use from the command line with a Postgresql database to a markdown file excluding tables named `temp` and `audit`
$ eralchemy -i 'postgresql+psycopg2://username:password@hostname:5432/databasename' -o filtered.er -x temp audit
### Use from the command line with a Postgresql database to a markdown file for the schema `schema`
$ eralchemy -i 'postgresql+psycopg2://username:password@hostname:5432/databasename' -s schema
## Architecture
![Architecture schema](https://raw.githubusercontent.com/Alexis-benoist/eralchemy/master/eralchemy_architecture.png?raw=true "Architecture schema")
Thanks to it's modular architecture, it can be connected to other ORMs/ODMs/OGMs/O*Ms.
## Contribute
Every feedback is welcome on the [GitHub issues](https://github.com/Alexis-benoist/eralchemy/issues).
To run the tests, use : `$ py.test`.
All tested PR are welcome.
## Notes
ERAlchemy was inspired by [erd](https://github.com/BurntSushi/erd), though it is able to render the ER diagram directly
from the database and not just only from the `ER` markup language.
Released under an Apache License 2.0
Creator: Alexis Benoist [@Alexis_Benoist](https://twitter.com/Alexis_Benoist)
[![Join the chat at https://gitter.im/Alexis-benoist/eralchemy](https://badges.gitter.im/Alexis-benoist/eralchemy.svg)](https://gitter.im/Alexis-benoist/eralchemy?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
ERAlchemy generates Entity Relation (ER) diagram (like the one below) from databases or from SQLAlchemy models.
## Example
![Example for a graph](https://raw.githubusercontent.com/Alexis-benoist/eralchemy/master/newsmeme.png?raw=true "Example for NewsMeme")
[Example for NewsMeme](https://bitbucket.org/danjac/newsmeme)
## Quick Start
### Install on a mac
The simplest way to install eralchemy on OSX is by using [Homebrew](http://brew.sh)
$ brew install eralchemy
### Install
To install ERAlchemy, just do:
$ pip install eralchemy
`ERAlchemy` requires [GraphViz](http://www.graphviz.org/Download.php) to generate the graphs and Python. Both are available for Windows, Mac and Linux.
### Use from the command line and a database
$ eralchemy -i sqlite:///relative/path/to/db.db -o erd_from_sqlite.pdf
The database is specified as a [SQLAlchemy](http://docs.sqlalchemy.org/en/rel_1_0/core/engines.html#database-urls)
database url.
### Use from the command line and a markdown file.
$ curl 'https://raw.githubusercontent.com/Alexis-benoist/eralchemy/master/example/newsmeme.er' > markdown_file.er
$ eralchemy -i 'markdown_file.er' -o erd_from_markdown_file.pdf
### Use from python
```python
from eralchemy import render_er
## Draw from SQLAlchemy base
render_er(Base, 'erd_from_sqlalchemy.png')
## Draw from database
render_er("sqlite:///relative/path/to/db.db", 'erd_from_sqlite.png')
```
### Use from the command line with a Postgresql database to a markdown file excluding tables named `temp` and `audit`
$ eralchemy -i 'postgresql+psycopg2://username:password@hostname:5432/databasename' -o filtered.er -x temp audit
### Use from the command line with a Postgresql database to a markdown file for the schema `schema`
$ eralchemy -i 'postgresql+psycopg2://username:password@hostname:5432/databasename' -s schema
## Architecture
![Architecture schema](https://raw.githubusercontent.com/Alexis-benoist/eralchemy/master/eralchemy_architecture.png?raw=true "Architecture schema")
Thanks to it's modular architecture, it can be connected to other ORMs/ODMs/OGMs/O*Ms.
## Contribute
Every feedback is welcome on the [GitHub issues](https://github.com/Alexis-benoist/eralchemy/issues).
To run the tests, use : `$ py.test`.
All tested PR are welcome.
## Notes
ERAlchemy was inspired by [erd](https://github.com/BurntSushi/erd), though it is able to render the ER diagram directly
from the database and not just only from the `ER` markup language.
Released under an Apache License 2.0
Creator: Alexis Benoist [@Alexis_Benoist](https://twitter.com/Alexis_Benoist)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
ERAlchemy-1.0.11.tar.gz
(9.0 kB
view details)
Built Distribution
File details
Details for the file ERAlchemy-1.0.11.tar.gz
.
File metadata
- Download URL: ERAlchemy-1.0.11.tar.gz
- Upload date:
- Size: 9.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8827fb303bc8ec2dbe719b106d2b7c6f41d89657c992736d8b2089b59d5c4b8a |
|
MD5 | 69b11f7d333304477f33513fae3bb277 |
|
BLAKE2b-256 | 204e828d9f2d55e3ed71817a7200fecffe77c21c4892f6cba6953cac42bf4568 |
File details
Details for the file ERAlchemy-1.0.11-py2.py3-none-any.whl
.
File metadata
- Download URL: ERAlchemy-1.0.11-py2.py3-none-any.whl
- Upload date:
- Size: 12.9 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5c048f3ff024010fdc70ed73dd466047937f85da4b188e3c73d34ed415ec13f1 |
|
MD5 | 5ef24767eb2d5e30f445c6bd20deebc2 |
|
BLAKE2b-256 | 9eeedd16f95c939626009cf8101a391779d5cab44f8a9711da837fc8b1691685 |