A desktop image editor written in C++, powered by Vulkan.
C++
9
7 commits
updated Sep 29, 2026
A Linux-first image editor for painting, retouching and layered composition, with a Qt workspace and Vulkan-accelerated canvas.

.vulkana projects and PNG/JPEG/WebP export.Actively developed beta. Please keep backups of important projects.
Requires Linux, a C++20 compiler, Ninja, pkg-config, and these development libraries:
glslc.minizip pkg-config module, not legacy minizip).Install Qt's platform plugins for your desktop, SVG support and image-format
plugins. Point CMAKE_PREFIX_PATH at your Qt installation if it is outside the
system search path.
Qt PDF is a separate development package on many distributions (for example,
qt6-qtpdf-devel on Fedora, qt6-pdf-dev on Ubuntu). It does not require a
WebEngine browser in Vulkana's runtime.
From the repository root:
cmake --preset release -DIMAGEEDITOR_BUILD_TESTS=OFF
cmake --build --preset release --parallel
./build/release/src/app/imageeditor
Projects and images can also be passed as arguments:
./build/release/src/app/imageeditor "project.vulkana" "photo.webp"
Qt selects Wayland or X11 from the session. Preferences and custom presets live in per-user storage. Online services are optional; without service configuration, updates and feedback stay disabled.
For development and tests:
cmake --preset debug
cmake --build --preset debug --parallel
ctest --preset debug
Debug/native rendering checks need Vulkan validation layers. Some interaction tests require a running Wayland/X11 desktop.
src/core — platform-neutral documents, layers, geometry, image algorithms
and undoable transactions.src/render — shared Vulkan canvas, composition, overlays and bounded GPU caches.src/ui — Qt panels, tools, document tabs, text/shape preparation and file I/O.src/platform — resource lookup, desktop integration and optional services.src/app — application entry point; shaders — Vulkan shader sources.Each document owns its content and history; tabs share one workspace and Vulkan renderer. Editable source data stays separate from render caches. Canvas, Pixel Preview and export share the same composition rules.
See the developer docs and architecture guide.
Vulkana-owned code, documentation and assets are MIT licensed. Third-party material retains its own licenses; see third-party notices.
C++
97.7%
CMake
1.7%
A desktop image editor written in C++, powered by Vulkan.
C++
9
7 commits
updated Sep 29, 2026
A Linux-first image editor for painting, retouching and layered composition, with a Qt workspace and Vulkan-accelerated canvas.

.vulkana projects and PNG/JPEG/WebP export.Actively developed beta. Please keep backups of important projects.
Requires Linux, a C++20 compiler, Ninja, pkg-config, and these development libraries:
glslc.minizip pkg-config module, not legacy minizip).Install Qt's platform plugins for your desktop, SVG support and image-format
plugins. Point CMAKE_PREFIX_PATH at your Qt installation if it is outside the
system search path.
Qt PDF is a separate development package on many distributions (for example,
qt6-qtpdf-devel on Fedora, qt6-pdf-dev on Ubuntu). It does not require a
WebEngine browser in Vulkana's runtime.
From the repository root:
cmake --preset release -DIMAGEEDITOR_BUILD_TESTS=OFF
cmake --build --preset release --parallel
./build/release/src/app/imageeditor
Projects and images can also be passed as arguments:
./build/release/src/app/imageeditor "project.vulkana" "photo.webp"
Qt selects Wayland or X11 from the session. Preferences and custom presets live in per-user storage. Online services are optional; without service configuration, updates and feedback stay disabled.
For development and tests:
cmake --preset debug
cmake --build --preset debug --parallel
ctest --preset debug
Debug/native rendering checks need Vulkan validation layers. Some interaction tests require a running Wayland/X11 desktop.
src/core — platform-neutral documents, layers, geometry, image algorithms
and undoable transactions.src/render — shared Vulkan canvas, composition, overlays and bounded GPU caches.src/ui — Qt panels, tools, document tabs, text/shape preparation and file I/O.src/platform — resource lookup, desktop integration and optional services.src/app — application entry point; shaders — Vulkan shader sources.Each document owns its content and history; tabs share one workspace and Vulkan renderer. Editable source data stays separate from render caches. Canvas, Pixel Preview and export share the same composition rules.
See the developer docs and architecture guide.
Vulkana-owned code, documentation and assets are MIT licensed. Third-party material retains its own licenses; see third-party notices.
C++
97.7%
CMake
1.7%