As a developer using open source I also try to contribute to open source communities every now and then
A NPM module that can be used for migrating NodeJs data sources like MongoDb, ElasticSearch, Postgresql and MySql
After using a lot of different NPM modules at my work I wanted to create my own module to share with other users. At my pervious job one of the issues was how migrate data sources along with the version of the application and share the changes with colleagues. In NPM there are many command-line tools that can be used to do this, but none of them covers all the needs. So I decided to build my own data migration module called the data elevator.
The project resulted in six NPM packages. One base package called 'data-elevator' containing all the basic functionality for elevating data up and down by the command-line. And five extensions of the data elevator, each specialized in a different kind of data source.
'data-elevator' is the base packages that contains all the basic functionality to keep track of migrations. The module stores the current migration in a file.
'data-elevator-elasticsearch' is used to migrate an ElasticSearch data source. The module stores the current migration status the ElasticSearch database.
'data-elevator-mongodb' is used to migrate a MongoDb data source. The module stores the current migration status the MongoDb database.
'data-elevator-mysql' is used to migrate a MySql data source. The module stores the current migration status the MySql database.
'data-elevator-postgres' is used to migrate a Postgres data source. The module stores the current migration status the Postgres database.
'data-elevator-sqlite3' is used to migrate a Sqlite3 data source. The module stores the current migration status the Sqlite3 database.
'command-line-director' is used to give direction to your command line arguments.