I started a Liquibase XML-editor, using liquibase-core, featuring support for the Language Server Protocol, meaning it can be used in any editor or IDE supporting LSP: Eclipse, VSCode, VIM, IntelliJ, cloud-based IDEs like Theia and more: https://github.com/Treehopper/liquibase-lsp/
Even though I already find it pretty useful for my own use, I would consider this a PoC: The concept that I tried to proof is the viability of applying Liquibase XML change logs to an in-memory database on every key-stroke, resulting in an interactive feedback loop, without needing to save or press a button.
This turned out to work even better than I expected. At least with the change logs that I typically work with.
Because I re-use Liquibase and H2/JDBC features (plus the wonderful LemMinX project) this provides pretty powerful validation features, with a relatively small amount of new code.
I am posting this to “Development” though, because this is still quite fresh, and because I am wondering if any of you ever anticipated Liquibase being used like this.
Also, I encountered a couple of challenges in using Liquibase for an interactive editor. Some of those, I worked around in this sub-module: https…sorry-new-users-can-only-put-2-links-in-a-post.
Those and others, would best be implemented in a clean way in Liquibase itself, though. The ones I know, I have listed here: https://github.com/Treehopper/liquibase-lsp/labels/liquibase
If there is some interest in this, I’d be happy to contribute a few changes. I think those would benefit not only this, but every future interactive editor based on Liquibase.