Skip to main content
Every database change becomes a reviewable, dated script you can read before it runs, instead of a framework silently altering your schema on the next restart. A change moves from development to test to live in either direction, on demand.

What ports as-is

  • Existing generated migrations frozen as history, not deleted
  • A per-service script tree with a per-slot applied-status ledger
  • Current-database check first, existence-guarded changes, natural-key inserts
  • A whole-environment copy, or only the scripts a slot has not seen
  • A restore overwriting a live database without stopping applications

What we build for you

  • The service and database names and their test/live pairs
  • The database server, login and where its password lives
  • Which existing migrations and seeders are frozen versus never existed