virtu
Version, currently 0.1.01 version
- 0.1.0latestJun 16, 2026
gitlab.com/renich/virtu
Virtualization management platform with a GUI and a WUI.
0 stars
0 dependents
License: GPL-3.0-or-later
Installation
# Add this to your shard.yml
dependencies:
virtu:
gitlab: renich/virtu
version: ~> 0.1.0Then run:
shards installshard.yml
- Crystal
>= 1.20.2- License
- GPL-3.0-or-later
- Author
- Rénich Bon Ćirić
- Targets
virtu-guifrom src/virtu_gui.crvirtu-wuifrom src/virtu_wui.cr
Dependencies
Runtime Dependencies
- gtk4*github: hugopl/gtk4.cr
- kemal*github: kemalcr/kemal
- crystal_lib*github: crystal-lang/crystal_lib
Development Dependencies
- flaw*github: kdairatchi/flawdev
- ameba*github: crystal-ameba/amebadev
- spec-kemal*github: kemalcr/spec-kemaldev
README
⚡ Overview
Virtu provides comprehensive management for libvirt-based infrastructure (KVM/QEMU) with absolute focus on concurrency and speed.
It features a unified core driving two first-class interfaces:
- Virtu Web (WUI): A lightning-fast, server-side rendered web dashboard powered by Kemal and HTMX.
- Virtu Desktop (GUI): A fully native, highly responsive desktop client built with GTK4.
✨ Features
- Blazing Fast: Written purely in Crystal with non-blocking, fiber-based C-FFI
libvirtbindings. - Dual Interfaces: Manage your cluster from the browser or natively on the desktop.
- Advanced Hardware Management:
virt-managerstyle hardware configurations, dynamic hot-plugging, and direct XML manipulation. - Zero-Friction State: A centralized background daemon seamlessly syncs VM state to clients without blocking OS threads.
🚀 Getting Started
Prerequisites
- Crystal
1.12+ libvirt-devlibgtk-4-dev(for building the GUI)
Build & Run
# Install dependencies
shards install
# Build the Web UI
crystal build src/virtu_wui.cr -o bin/virtu-wui --release
./bin/virtu-wui
# Build the GTK4 Desktop App
crystal build src/virtu_gui.cr -o bin/virtu-gui --release
./bin/virtu-gui
📚 Technical Documentation
Detailed architecture documentation, technical specs, and the project roadmap can be found in the docs/technical/ directory.
🤝 Contributing
- Fork the project.
- Create your feature branch (
git checkout -b feature/my-feature). - Commit your changes (
git commit -am 'feat(scope): add some feature'). - Push to the branch (
git push origin feature/my-feature). - Open a Merge Request on GitLab.
Documentation
Built from the current release. The first visit to a release nobody has asked for starts its build.
Links
This release
- Version
0.1.0- Tagged
- Jun 16, 2026
- Commit
e4c9d986ddc0- Crystal
>= 1.20.2- Indexed
- yes
Dependents
No indexed shard depends on this one yet.
Repository
gitlab.com/renich/virtu
Metadata
- Created
- Aug 16, 2026
- Updated
- Aug 16, 2026
- Synced
- Aug 16, 2026
- Versions
- 1