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, updated on May 12, 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).
  • Parallel Registry Sync: Concurrently sync multiple package registries for significantly faster updates.
  • Zoi Mini: A lightweight, zero-sync version for quick, one-off installations.

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",
  repo = "zillowe",
  version = "3.0.0",
  license = "Apache-2.0",
  bins = { "hello" },
  types = { "source", "pre-compiled" }
})

function prepare()
  if BUILD_TYPE == "pre-compiled" then
    local ext = (SYSTEM.OS == "windows") and "zip" or "tar.xz"
    local file_name = "hello-" .. SYSTEM.OS .. "-" .. SYSTEM.ARCH .. "." .. ext
    local url = "https://example.com/hello/releases/download/v" .. PKG.version .. "/" .. file_name
    UTILS.EXTRACT(url, "precompiled")
  elseif BUILD_TYPE == "source" then
    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.


Zoi Mini: Zero-Sync Installation

Zoi Mini is a specialized version of the Zoi engine that operates without a local database. It resolves package metadata and vulnerabilities on the fly from the Zoidberg registry. This makes it perfect for "as-a-service" scenarios and one-liner installations.

Quick Start (Zero-Install)

You can install any package from the Zoidberg registry using a single command without even having Zoi installed:

Linux / macOS:

curl -fsSL https://zillowe.pages.dev/zm.sh | sh -s -- i @zillowe/hello

Windows (amd64):

powershell -c "irm zillowe.pages.dev/zm.ps1 | iex" -args "i @zillowe/hello"

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 dev).
  • Ensure every team member has the exact same tools via zoi.lock.

Getting Started

To install the full Zoi suite:

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!


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.