Zoi: The Universal Package Manager and Environment Setup Tool

An introduction to Zoi, the ultimate cross-platform package manager designed to unify development environments across Linux, macOS, and Windows.

ZZaidon February 25, 2026

Setting up a consistent development environment across different machines and operating systems has historically been a fragmented and frustrating process. Developers often find themselves wrestling with disparate package managers, apt on Ubuntu, brew on macOS, scoop on Windows, alongside language-specific tools like npm, cargo, and pip.

Zoi (part of the Zillowe Development Suite) was created to solve this fragmentation. It is a universal, cross-platform package manager that provides a unified interface for managing software, project dependencies, and development environments.

Why Zoi?

Traditional package managers are usually tied to a specific operating system or ecosystem. Zoi takes a different approach by acting as a high-level orchestration layer. It doesn't just install its own packages; it integrates with over 40 external package managers, allowing you to define a single environment that works everywhere.

Key Features

  • Cross-Platform: Native support for Linux, macOS, and Windows (supporting both amd64 and arm64).
  • Lua-Powered Flexibility: Package definitions are written in Lua (.pkg.lua), allowing for dynamic logic, complex build steps, and platform-specific adaptations that static configuration files can't handle.
  • Universal Dependencies: Declare dependencies from apt, pacman, brew, npm, cargo, pip, go, bun, and many more in one place.
  • Secure & Verifiable: Built-in support for SHA-512/256 checksums and PGP signature verification for every package.
  • Versatile Package Types: Beyond standard software, Zoi supports Collections (metapackages), Apps (project templates), and Extensions (Zoi configuration modifiers).
  • Advanced CLI Tools: Features like zoi why (dependency inspection), zoi rollback (transactional reverts), zoi pin (version locking), and zoi exec (run without installing).

The Power of .pkg.lua

Most package managers use static formats like YAML or JSON. Zoi uses Lua, giving package maintainers the full power of a scripting language.

-- A snippet from a Zoi package definition
metadata({
  name = "hello",
  version = "3.0.0",
  license = "Apache-2.0",
  bins = { "hello" }
})

function prepare()
  if SYSTEM.OS == "windows" then
    UTILS.EXTRACT("https://example.com/hello-win.zip", "bin")
  else
    cmd("git clone " .. PKG.git .. " source")
    cmd("cd source && make build")
  end
end

This flexibility ensures that complex software can be packaged correctly for any target system without maintaining separate scripts for every OS.


Project Environments with zoi.yaml

Zoi isn't just for global software; it shines in project-local management. By placing a zoi.yaml in your repository, you can:

  • Define project-specific packages.
  • Create custom aliases for common tasks (zoi run dev).
  • Set up isolated development environments (zoi env).
  • Ensure every team member has the exact same tools via zoi.lock.

Getting Started

You can install Zoi with a simple one-liner:

Linux / macOS:

curl -fsSL https://zillowe.pages.dev/scripts/zoi/install.sh | bash

Windows:

powershell -c "irm zillowe.pages.dev/scripts/zoi/install.ps1|iex"

After installation, run zoi sync to fetch the official Zoidberg registry and you're ready to start installing!


Learn More

Zoi is a deep tool with many advanced features for power users and package maintainers. Explore the links below to dive deeper:

A software organization

2026 © All Rights Reserved.

  • All the content is available under CC BY-SA 4.0, expect where otherwise stated.