My name is Nate, and I built Migrata, a CLI for database schema migrations. It treats your SQL as the source of truth and uses that to diff against your live database when planning migrations. If you want to add a column, you don't write a separate alter statement, you "add" a column directly to the table's DDL and let the tool generate the SQL. Each change is categorized by type and whether it impacts any downstream dependencies (views, functions, etc.).
What makes this tool unique is its "plain SQL" philosophy. Other migration tools will often resort to HCL or some other DSL, which introduces a level of abstraction no one is asking for. Using regular sql syntax lets me keep things simple. Any feature available in the dialect is also available here and isn’t hidden behind any special syntax. If you know and love SQL, then you'll be right at home.
The tool is free, runs fully local, and doesn't require an account to use it. The biggest limitation is that the tool only supports Postgres, but there are plans to expand the dialect support.
I'm really only scratching the surface of what this tool can do. I highly recommend reading the intro blog to get a better understanding of what it can do and how to use it
Hello HN,
My name is Nate, and I built Migrata, a CLI for database schema migrations. It treats your SQL as the source of truth and uses that to diff against your live database when planning migrations. If you want to add a column, you don't write a separate alter statement, you "add" a column directly to the table's DDL and let the tool generate the SQL. Each change is categorized by type and whether it impacts any downstream dependencies (views, functions, etc.).
What makes this tool unique is its "plain SQL" philosophy. Other migration tools will often resort to HCL or some other DSL, which introduces a level of abstraction no one is asking for. Using regular sql syntax lets me keep things simple. Any feature available in the dialect is also available here and isn’t hidden behind any special syntax. If you know and love SQL, then you'll be right at home.
The tool is free, runs fully local, and doesn't require an account to use it. The biggest limitation is that the tool only supports Postgres, but there are plans to expand the dialect support.
I'm really only scratching the surface of what this tool can do. I highly recommend reading the intro blog to get a better understanding of what it can do and how to use it
Here's the GitHub for the release page + installation scripts: https://github.com/Refactorful/migrata-cli-releases
And here are the direct installation scripts you can run to download and try it out yourself:
Install (macOS/Linux): curl -fsSL https://migrata.io/install.sh | sh · Windows: irm https://migrata.io/install.ps1 | iex