Evolve
Database migration tool for .NET and .NET Core projects. Inspired by Flyway.
Install / Use
/learn @lecaillon/EvolveREADME
Evolve

<img align="right" width="173px" height="173px" src="https://raw.githubusercontent.com/lecaillon/Evolve/master/images/logo.png">
Evolve is a personal, free-time project with no funding. If you use Evolve in your daily work and feel that it makes your life easier, consider supporting its development via GitHub Sponsors :heart: and by adding a star to this repository :star:
I’m very passionate about doing personal projects and very grateful that other people find them useful, too. I want to share as much as possible, but it doesn’t pay the bills. With your help, I can focus on open-source work more and make it sustainable. If your company uses any of my libraries, consider donating too as a sign of gratitude and for priority support!
Beloved sponsors
<table> <tbody> <tr> <td align="center" valign="middle"> <a href="https://www.veepee.com"> <img src="https://raw.githubusercontent.com/lecaillon/Evolve.Doc/master/static/images/Veepee.png" style="margin: 0rem auto"> </a> </td> <td align="center" valign="middle"> <a href="https://megaslice.uk"> <img src="https://raw.githubusercontent.com/lecaillon/Evolve.Doc/master/static/images/Megaslice.png" style="margin: 0rem auto"> </a> </td> </tr> </tbody> </table>Introduction
Evolve is a cross platform database migration tool inspired by Flyway, that uses plain SQL scripts.
Its purpose is to automate your database changes, and help keep those changes synchronized through all your environments and development teams. This makes it an ideal tool for continuous integration / delivery.
Overall Evolve embraces simplicity. Every time you run your project, it will automatically ensure that your database is up-to-date. Install it and forget it!
Installation
Evolve is available as a .NET library, a .NET tool and a standalone CLI.
| | Evolve | Evolve Tool | Evolve CLI |
|-|-|-|-|
| Repository | |
|
|
Supported databases
<table> <tbody> <tr> <td align="center" valign="middle"> <a href="https://evolve-db.netlify.app/requirements/sqlserver" target="_blank"> <img src="https://raw.githubusercontent.com/lecaillon/Evolve/master/images/sqlserver.png"> </a> </td> <td align="center" valign="middle"> <a href="https://evolve-db.netlify.app/requirements/postgresql" target="_blank"> <img src="https://raw.githubusercontent.com/lecaillon/Evolve/master/images/postgresql.png"> </a> </td> <td align="center" valign="middle"> <a href="https://evolve-db.netlify.app/requirements/mysql" target="_blank"> <img src="https://raw.githubusercontent.com/lecaillon/Evolve/master/images/mysql.png"> </a> </td> <td align="center" valign="middle"> <a href="https://evolve-db.netlify.app/requirements/mariadb" target="_blank"> <img src="https://raw.githubusercontent.com/lecaillon/Evolve/master/images/mariadb.png"> </a> </td> <td align="center" valign="middle"> <a href="https://evolve-db.netlify.app/requirements/sqlite" target="_blank"> <img src="https://raw.githubusercontent.com/lecaillon/Evolve/master/images/sqlite.png"> </a> </td> <td align="center" valign="middle"> <a href="https://evolve-db.netlify.app/requirements/cassandra" target="_blank"> <img src="https://raw.githubusercontent.com/lecaillon/Evolve/master/images/cassandra.png"> </a> </td> <td align="center" valign="middle"> <a href="https://evolve-db.netlify.app/requirements/cockroachdb" target="_blank"> <img src="https://raw.githubusercontent.com/lecaillon/Evolve/master/images/cockroachdb.png"> </a> </td> </tr> </tbody> </table>Documentation
You can read the latest documentation at https://evolve-db.netlify.app and find samples here.
Changelog
Detailed changes for each release are documented in the release notes.
Related Skills
oracle
351.2kBest practices for using the oracle CLI (prompt + file bundling, engines, sessions, and file attachment patterns).
prose
351.2kOpenProse VM skill pack. Activate on any `prose` command, .prose files, or OpenProse mentions; orchestrates multi-agent workflows.
Command Development
110.6kThis skill should be used when the user asks to "create a slash command", "add a command", "write a custom command", "define command arguments", "use command frontmatter", "organize commands", "create command with file references", "interactive command", "use AskUserQuestion in command", or needs guidance on slash command structure, YAML frontmatter fields, dynamic arguments, bash execution in commands, user interaction patterns, or command development best practices for Claude Code.
Plugin Structure
110.6kThis skill should be used when the user asks to "create a plugin", "scaffold a plugin", "understand plugin structure", "organize plugin components", "set up plugin.json", "use ${CLAUDE_PLUGIN_ROOT}", "add commands/agents/skills/hooks", "configure auto-discovery", or needs guidance on plugin directory layout, manifest configuration, component organization, file naming conventions, or Claude Code plugin architecture best practices.
