⬢ Zsh with it's own package ecosystem ⬢
Published: 2022-02-07 00:00:00

---
description: ❮ ZI ❯ ecosystem - packages
published: true
date: 2022-02-07 00:00:00 UTC
canonical_url: https://z.digitalclouds.dev/docs/ecosystem/packages
keywords: [zsh-packages, zsh-plugin, zsh, zinit, zi]
---

<h2 align="center">
<a href="https://github.com/z-shell/zi">
<img src="https://raw.githubusercontent.com/z-shell/zi/main/docs/images/logo.png" alt="Logo" width="60" height="60" /></a></h2>

---

<div align="center"><h3>

❮ [ZI](https://z-shell.pages.dev/) ❯ **is a fast and feature-rich plugin manager for [Zsh](https://zsh.sourceforge.io/) / [Unix shell](https://en.wikipedia.org/wiki/Unix_shell).** 

</div></h3>

❮ [ZI](https://z-shell.pages.dev/) ❯ has almost [100 repositories](https://github.com/orgs/z-shell/repositories) and part of it are ZI packages which can be installed any time with a simple command. Also creating your own packages for ZI is just filling up `.json` with instructions.

> Repository: [ZI](https://github.com/z-shell/zi/), 
> Issues reports: [z-shell/zui](https://github.com/z-shell/zui/issue)
> Open-Search Wiki: https://z.digitalclouds.dev/search

![ZI open search wiki](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/xsa26k4ggw90kvrug95c.png)

---

## The `Z-Shell` Organization

The home for the packages is [Z-Shell](https://github.com/z-shell) GitHub organization. You can find the available packages [here](https://github.com/search?q=topic%3Az-packages+org%3Az-shell&type=Repositories), which as of `2021-11-11` include:

- **[any-node](https://github.com/z-shell/any-node)** - Special package – it is designed for easy installing of any Node modules inside the plugin directory.
- **[any-gem](https://github.com/z-shell/any-gem)** – Special package – it is designed for easy installing of any Ruby Gems locally inside the plugin directory.
- **[apr](https://github.com/z-shell/apr)** – Provides [apache/apr](https://github.com/apache/apr) library by compiling and installing it to the `$ZPFX/bin`.
- **[fzf](https://github.com/z-shell/fzf)** - Fuzzy finder via Makefile installation of the [junegunn/fzf](https://github.com/junegunn/fzf) binary under `$ZPFX/bin`.
- **[fzy](https://github.com/z-shell/fzy)** – Fuzzy finder via Makefile-installation of the [jhawthorn/fzy](https://github.com/jhawthorn/fzy) binary under `$ZPFX/bin`.
- **[pyenv](https://github.com/z-shell/pyenv)** – Provides [pyenv/pyenv](https://github.com/pyenv/pyenv)\*\* version manager command by extending `$PATH` to make it point into the bin subdirectory of the plugin.
- **[remark](https://github.com/z-shell/remark)** - Provides the CLI command for [remarkjs/remark](https://github.com/remarkjs/remark) with two plugins:
  - Man,
  - HTML
- **[doctoc](https://github.com/z-shell/doctoc)** – Provides the [thlorenz/doctoc](https://github.com/thlorenz/doctoc) CLI command.
- **[ls_colors](https://github.com/z-shell/ls_colors)** – Provides the [trapd00r/LS_COLORS](https://github.com/trapd00r/LS_COLORS) and setups a zsh-completion system to use the definitions with:
  - GNU 'ls',
  - [ogham/exa](https://github.com/ogham/exa)'
- **[dircolors-material](https://github.com/z-shell/dircolors-material)** – The package provides the [zpm-zsh/dircolors-material](https://github.com/zpm-zsh/dircolors-material) definitions and also setups zsh-completion system to use the definitions with:
  - GNU 'ls',
  - '[ogham/exa](https://github.com/ogham/exa)'
- **[asciidoctor](https://github.com/z-shell/asciidoctor)** – Provides the CLI command for [asciidoctor](https://github.com/asciidoctor/asciidoctor)\*\*.
- **[zsh-system-completions](https://github.com/z-shell/zsh-system-completions)** – A package that brings stock Zsh completions under the control of ZI.
- **[ecs-cli](https://github.com/z-shell/ecs-cli)** – Provides the command for Amazon [ecs-cli](https://github.com/aws/amazon-ecs-cli)\*\* by copying it to `$ZPFX/bin`.
- **[subversion](https://github.com/z-shell/subversion)** – Provides the [apache/subversion](https://github.com/apache/subversion)\*\* revision control system by compiling and installing it to the `$ZPFX/bin`.
- **[github-issues](https://github.com/z-shell/github-issues)** – ZI invocations that'll install z-shell/zsh-github-issues.
- **[github-issues-srv](https://github.com/z-shell/github-issues-srv)** - The package is the puller-thread service for the z-shell/zsh-github-issues plugin. It runs the background service that downloads the new issues from GitHub.
- **[firefox-dev](https://github.com/z-shell/firefox-dev)** - Provides the CLI commands firefox-bin and [firefox](https://www.mozilla.org/en-GB/firefox/developer) by extending the `$PATH/bin`.
- **[zsh](https://github.com/z-shell/zsh)** - Builds and installs the newest [zsh-users/zsh](https://github.com/zsh-users/zsh).

## Adding Your Own Package.

1. Contact the author to have the repository at the [Z-Shell](https://github.com/z-shell) organization.

2. Populate the `package.json` – I suggest grabbing the one for `fzf` or `doctoc` and doing a few substitutions like `doctoc` → `your-project` and then simply filling the `default` profile in the `zi-ices` object – it's obvious how to do this.

3. The project name in the `package.json` should start with `zsh-`. The prefix will be skipped when specifying it with ZI.

4. Commit and push.