Build Status Gem Version Code Climate GitHub license Downloads

Rails-ERD-D3

Create entity–relationship diagram with D3.js for your Rails application.

Demo

https://romankrasavtsev.github.io/rails-erd-d3/

Features

Rails-ERD-D3 contains the following functionality:

View models and their associations

Models

Preferences where you could hide any models

Preferences

View associations

Associations

View table structure

Table structure

Installation

Add these lines to your application's Gemfile:

group :development do
  gem "rails-erd-d3"
end

Install gem:

$ bundle install

And then execute for creating file erd.html:

$ bundle exec rails-erd-d3

Todo

function zoomed() { svg.attr("transform", "translate(" + d3.event.transform.x + "," + d3.event.transform.y + ")" + " scale(" + d3.event.transform.k + ")" );

- Freeze
  - On
    ```
    node.call(d3.drag()
          .on('start', dragstarted)
          .on('drag', dragged)
          .on('end', dragended));
    ```
  - Off
    ```
    node.call(d3.drag().on('drag', null))
    ```  
- Add link to another model in model window
- Add tests
  - ActiveRecord::Base.establish_connection adapter: "sqlite3", database: ":memory:"
- Sort by:
  - number of connections
  - number of entries in the table
- Show table structure on the diagram
- Safe as jpg, png
- Dependent destroy

## Contributing

Bug reports and pull requests are welcome on GitHub at https://github.com/RomanKrasavtsev/rails-erd-d3.

## License

The gem is available as open source under the terms of the [MIT License](http://opensource.org/licenses/MIT).

## Author

[Roman Krasavtsev](https://github.com/RomanKrasavtsev), [@romankrasavtsev](https://twitter.com/romankrasavtsev)