Coder Social home page Coder Social logo

sys-differ's Introduction

CHRISDIFFER

alt text

Compare PostgreSQL Schemas and Generate Migration Scripts.

Chrisdiffer is a cross-platform desktop application to aid software engineers in schema migrations. With Chrisdiffer you can visually compare your source and target Postgres databases, easily identify changes and generate the necessary scripts to update the target from the source. View and select changes using an intuitive GUI and copy the scripts to run in psql.

Installation

Clone or Download the repo.

Run npm install to download the required libraries.

npm install

Run npm start to initiate the app.

npm start

OR

Download the app for Mac or Windows from http://www.chrisdiffer.com/.

Usage

Simply provide the URLs or connection parameters to connect to your source and target databases (URLs to two test databases are provided as a demo).

Tab between 'Source' and 'Target' to see representations of each database's schema.

Select the 'DB Diff' tab to highlight all the differences between the two schemas:

GREEN for additions

RED/PURPLE for deletions

YELLOW for modifications

Click on differences to generate the SQL scripts necessary to update your source database's schema to match that of your target's.

Features

Compatible with any Postgres database (hosted on ElephantSQL, AWS, etc).

Lines are drawn to depict any foreign key relationships between data.

'Add All' allows you to generate all SQL scripts at once.

The Refresh button queries your databases to update the visual representations. After making changes to your source database, for example, you can refresh to ensure that its schema is now identical to that of the target's.

Built With

  • React Javascript library for building responsive web apps
  • Electron Create cross platfrom desktop applications using HTML and JS
  • pg-promise Library for interacting with Postgres database
  • D3 Visualize and create animations from data

Known Issues

Not compatible with Postgres 10.2+ hosted on AWS due to known bug with accessing the information_schema tables.

Issues

Please let us know about any issues you're having here or visit our website for more info.

Future Updates

  • Support for other relational databases such as MySQL
  • Support for composite primary keys
  • Support for default values, checks, stored procedures

Authors

License

The MIT License (MIT)
Copyright © 2018 TEAM-OSTRICH

sys-differ's People

Contributors

eleerogers avatar g-es avatar kmui18 avatar sql-migrate avatar

Stargazers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.