Version control for your art, not your code.
A free, local-only version-control app for Krita painters. No cloud, no accounts, and none of the git jargon.
Made for painters, not programmers.
Version control has always been built for code. Krita VCS is built for paintings, and for the way you actually work.
Nothing ever leaves your computer.
All history lives in a hidden folder inside your own project. No account, no sync, no server. Ever.
It reads your painting, not just your file.
Krita VCS understands .kra files down to the tile, so a single brush stroke only stores what actually changed, not a fresh copy every time you save.
See what changed, visually.
No line numbers, no diffs full of symbols. Just your layers, before and after, side by side or on a swipe slider.
Explore without fear.
Try a new color direction or a redesign on a branch, switch back to your original whenever you like, and bring the two together when you're ready.
Built for real paintings.
Tuned to stay fast on large, layer-heavy files, so saves, comparisons, and restores don't crawl on anything but toy test cases.
See exactly what changed, layer by layer.
Compare any two versions of a painting one layer at a time. Toggle side-by-side or drag a swipe slider across the canvas; zoom and pan to inspect the details, perfectly in sync between both views. What changed shows as a dashed outline tracing the silhouette of the edited pixels, and focusing a single layer narrows that outline to just that layer's changes. The flattened image loads first, so you're never staring at a blank panel; individual layers stream in right behind it. Click any layer for its details: type, visibility, opacity, blend mode, and the area it actually paints on. Click the canvas itself for the painting's size, resolution, and color space.
Working with .gpl color palettes too? Krita VCS lays them out swatch by swatch, hex values and all, so a palette tweak is as easy to review as a repaint.
Every save is a place you can go back to.
Each save is a full version you can return to at any time. Branch off to try something risky, switch back in an instant, and merge the two when you're happy. Overlapping edits are flagged, never quietly overwritten. A color-coded graph shows exactly how your branches connect.
Made a save you regret? Undo it. Want to jump back three versions? Do that instead. Krita VCS never deletes your history behind your back; old versions stay recoverable until you decide otherwise.
Yours, in plain language, on your machine.
Artist Mode turns off the technical talk entirely. Commit hashes become “Version 12,” file paths become asset names, and change codes become plain words like “Updated.” It's on by default, but if you'd rather see the technical view, it's one toggle away.
Because nothing is ever thrown away automatically, a project's history can grow over time. One button shows you how much space old, unreachable versions are using and clears it, only when you say so. Nothing syncs, nothing uploads; it all stays on your computer.
Artist Mode reads version control in plain language:
Sign your work, tune it to your machine.
Put your name on every version you save, so on a shared project it's obvious who did what. That's set once in the Settings panel, right alongside how much disk space preview thumbnails are allowed to use.
Working on a painting with a long, heavy revision history? Turn on compact storage and Krita VCS shrinks it down. Everything here is optional, and you can change any of it whenever you like.
Prefer a different look for the app itself? Krita VCS ships with eight color themes, six dark and two light, from the moody default Charcoal to Krita Blue, Tokyo Night, and True Black. Pick one in Settings and it applies right away, no restart, saved right there on your machine.
Preview budget
Compact storage
Themes
What I'm building next.
Krita VCS is actively developed. A few things I'm still improving:
Tracking more color palette formats
.gpl swatch diffs work today; support for .kpl, .aco, and .ase palettes is planned so the same color-by-color comparison works no matter where your palette comes from.
Diff stashing
Set aside an in-progress comparison and come back to it later without losing your place, so you can hop between reviews without re-picking the same two versions.
A guided first-launch tour
A dynamic walkthrough of the app on first open, pointing out the repository switcher, Changes, History, and Settings so new users aren't left guessing.
The Krita plugin
An optional in-Krita "Version Control" panel — commit, quick-checkpoint, branch switching, no window-switching — built on the same history as the main app. Available today as a manual build; see the plugin guide in the docs.
Questions, answered.
What does it do?
It keeps every version of your painting as you save, like a save file for each stage of your art. You can look back at any earlier version, compare two side by side, or go back to one if you change your mind, all without leaving a mess of duplicate files on your computer.
Is my art uploaded anywhere?
No. Krita VCS is local-only by design: there's no server, no account, and no sync. Every version lives in a folder on your own machine.
Is it free?
Yes, Krita VCS is free and open source. The license is still being finalised, so check the repository for current terms.
What platforms does it support?
It's a desktop app built with Tauri, currently targeting Windows, with macOS and Linux following on the same cross-platform base.
Does it work with any file, or just .kra?
It tracks your whole project folder, but its deep visual diffing, layer by layer, is built for Krita's .kra format and .gpl palettes. Other files are still tracked and versioned, with a simpler diff view.
Will my history get huge over time?
It only stores what changed between saves, not a full copy each time, so history stays compact. And if you ever want the space back from old, unreachable versions, the built-in “Clean up storage” tool does it, with your confirmation.