Peewee orm has built-in migration but it is not full-featured as of peewee 3.16.0.
It's missing:
- state tracking table that can track what's been applied
- auto-generate migrations
- the migrator doesn't have create table I think
These are my future-reference notes to myself documenting the minimal thing I built to solve the first problem above.
There are third-party libraries for generating + running peewee migrations; I have not checked them out, but if you are shopping, you should.
This isn't designed to be comprehensive or even reliable / safe, it's a minimal implementation to get a low-risk project into production.