Hello guys I would like to introduce you to my new project which I had a personal need for managing zig installations, with minimal system mutation. I ended up creating ziggy which is a CLI + TUI that helps you manage multiple zig versions (as available on ziglang.org/download) and also comes with it's own init command that gives you a barebones zig project that just compiles and is mostly empty. Why? Because when I bootstrapped using zig init, it was too much code for my taste, so ziggy init actually gives you two template options. The standard one and the bare-bones one.
Here's the app itself (https://github.com/weezy20/ziggy). You can use bun to install it from npm as well (https://www.npmjs.com/package/@weezy20/ziggy)
It requires bun to run and the reason I chose bun is because it's a widely used tool that many non-zig systems can easily be bootstrapped with.
You can run it without installation as well using bunx.
Overall it works much like zvm (written in go). It has a directory that houses your zig installations and it provides you with an env file that you can add to your shell profile so that ziggy bins are available on your system path.
Here's the barebones template repository used in ziggy init (https://github.com/weezy20/zig-app-template)
A fast, easy to use, Zig programming language installer and version manager powered by Bun. Latest version: 1.1.0, last published: a few seconds ago. Start using @weezy20/ziggy in your project by running npm i @weezy20/ziggy. There are no other projects in the npm registry using @weezy20/ziggy.