Write your database migrations in pure SQL. No ORMs. No query builders. No JavaScript. Just SQL.
Most migration tools make you learn their way of writing SQL. But if you already know SQL, why learn something else? migrix lets you use your SQL knowledge directly:
- Pure SQL files: Write migrations in the language you already know
- Zero magic: What you write is exactly what runs
- Framework agnostic: Works with any Node.js project
Currently supports PostgreSQL, with more SQL databases coming soon.
Install the package globally:
npm install -g migrixOr as a development dependency in your project:
npm install -D migrix-
Create a
.envfile with your database connection:DATABASE_URL=postgresql://username:password@localhost:5432/database_name
-
Create your first migration:
migrate create add_users_table
This will create two files in your migrations directory:
<timestamp>_<migration-name>_up.sql: For the changes you want to apply<timestamp>_<migration-name>_down.sql: For reverting the changes
-
Write your SQL in the generated files:
-- migrations/20240130_add_users_table_up.sql CREATE TABLE users ( id SERIAL PRIMARY KEY, email VARCHAR(255) NOT NULL UNIQUE, created_at TIMESTAMPTZ DEFAULT CURRENT_TIMESTAMP ); -- migrations/20240130_add_users_table_down.sql DROP TABLE users;
-
Run your migrations:
migrate up # Apply pending migrations migrate down # Roll back latest migration
Need help? Run migrate --help for a list of all commands and options.
Contributions are welcome! Please feel free to submit a Pull Request.
MIT