hey guys. the other day i was migrating hosting providers and i just needed something not too heavy and convenient to spin up my backups for awhile and realised there is almost nothing out there. kimchi hasn't been updated for years and cockpit is heavy. so here's something i came up with in a couple hours because of a sudden urge, nothing fancy just basic creation with cloud init, lifecycle management and image/storage, but it's modern-ish and it compiles to a 8.4mb binary inclusive of the embedded web UI, CLI and API, and only dep is libvirt.
imiric|5 months ago
Unfortunately, I'm reluctant to trust a 26KLOC vibe-coded app[1] for something like this, so I'll pass.
But if a polished React/Next.js app, with a CLI, HTTP/WebSocket API, authentication, and libvirt integration, truly took you a couple of hours to produce, and it solves your problem, that's a commendable achievement. I'm not sure if I should be praising you or the LLM, but it's notable nonetheless.
[1]: https://github.com/ccheshirecat/flint/commit/eb90847db9da56c...
dangus|5 months ago
This project advertises a small single binary but that’s really a feature of Go, and the small size is a feature of the fact that this is a rushed vibecoded app.
A typical HomeLab user (mentioned in this project as one of the primary audiences) is probably using something like Proxmox because it’s exactly it’s been around for years and years, it’s developed by a professional team, it’s relatively easy to use, and it’s feature-rich.
And oh, by the way, Proxmox is free as in beer.
paul_h|5 months ago
Nullence|5 months ago
Most notably, if you just set the auth cookie to "authenticated" you will have access to spin up as many VMs you like on any flint instance in the wild (08-09-2025).
As such this is an incredibly unsafe project to use. Probably because of the vibe coding :(
flessner|5 months ago
The problem is vibe coding AND negligence. Good software practices like testing, code review, documentation are bound to catch the LLM-isms.
No offense on the author, the project specifically calls out that it's a "young" project in the footer, so I personally wouldn't expect it to be quite up to spec yet.
lioeters|5 months ago
What is KVM? - https://www.redhat.com/en/topics/virtualization/what-is-KVM
Can this tool `flint` replace some uses of Docker? I'm curious if I can use it for local development purpose, or for running stuff in production like isolating applications.
Is there a registry of images, like OS versions? Or maybe it's more decentralized than that. It also sounds related to OCI (Open Container Initiative) format that Podman supports, and qcow2 images for QEMU.Could you give a brief summary of what this tool enables, for a potential user who doesn't know much about KVM?
ironhaven|5 months ago
First is the hypervisor that uses the hardware virtualization features of your cpu to emulate hardware interrupts and virtual memory paging. This part is usually buint into the operating system kernel and one will be prefered per operating system. Common ones are Hyper-V on Windows, Virtualization.Framework on Mac and KVM on Linux
With the kernel handling the low level virtualization you need a Virtual Machine Monitor to handle the higher level details. The VMM will manage what vm image mounted and how the packets in and out of the vm are routed. Some example of VMMs are QEMU, VirtualBox and libVirt.
Flint, the app being shown is a vibe coded web app wrapper around libVirt. On the bright side this app should be safe to use but it also does not do much beyond launching pre made virtual machines. As a developer the work you need to do is provide an Linux distribution (Ubuntu, etc), a container manager (Kubernetes, Docker) and launch your own containers or pre made ones from the internet (Dev Containers).
jurgenkesker|5 months ago
_1tem|5 months ago
hamdouni|5 months ago
# List your VMs
flint vm list --all
# Launch a new Ubuntu VM named 'web-01'
flint launch ubuntu-24.04 --name web-01
# SSH directly into your new VM
flint ssh web-01
# Create a template from your configured VM
flint snapshot create web-01 --tag baseline-setup
# Launch a clone from your new template
flint launch --from web-01 --name web-02
jauntywundrkind|5 months ago
This recent guide covers a ton of nitty gritty, down to baking your own vm images & doing everything by hand. But by half way through, it builda to using the nice machinectl cli that is the real meat of the experience. https://quantum5.ca/2025/03/22/whirlwind-tour-of-systemd-nsp...
paul_h|5 months ago
k_bx|5 months ago
So I have to ssh into machine, start cockpit service, use it, and then stop the cockpit.socket once I finish.
Would be great to have something which has its own users/passwords (to have strong password in bitwarden) and doesn't listen to 0.0.0.0 by default. If it's also lightweight – even better!
sergsoares|5 months ago
> Configure Cockpit to listen only loopback/127.0.0.1[1]:
[Socket]
ListenStream= #This remove 0.0.0.0:9090 bind based on the docs
ListenStream=127.0.0.1:9090
> Execute in your machine a port forward with SSH[2]:
ssh -N -L 9090:127.0.0.1:9090 host@ip
> Then you can open localhost:9090 in your browser securely only using SSH (that is already part of your actual workflow).
[1]: https://cockpit-project.org/guide/latest/listen
[2]: https://coder.com/docs/code-server/guide#port-forwarding-via...
skydhash|5 months ago
0x073|5 months ago
_el1s7|5 months ago
NoiseBert69|5 months ago
ccheshirecat|5 months ago
Infuze was ours but has since been shut down so we can focus fully on our own architecture. There has never been any scam, nor anything remotely related to one.
The Show HN post about the lightweight VM manager is unrelated to any cloud business. It started as a quick personal tool and unexpectedly resonated with people, so I iterated on it the same day. It’s just a minimal Go wrapper around libvirt, not connected to our core work.
athrowaway3z|5 months ago
There is something to be said for it because LLM's having been trained on its structure, but I'm having decent success stripping out all dependencies except tsc.
todotask2|5 months ago
Tart VM is interesting but still have the same issue.
xk3|5 months ago
If you use Ubuntu or Debian, multipass is pretty easy to use.
Otherwise QuickGet / QuickEmu
nodesocket|5 months ago