Skip to main content

zflash

A super blazing fast, staged zsh plugin manager

A new shell, prompt and all, in about 7 ms.

zsh -c "$(curl -fsSL https://raw.githubusercontent.com/arastu/zflash/main/install.sh)" zflash-install --zshrc

Staged loading

Every plugin, tool integration and rc file is placed before or after the first prompt. zflash defer pushes work past the prompt so your shell is usable in milliseconds.

One compiled file

A short declarative spec is compiled into a single byte-compiled init file. At startup nothing is resolved, searched or forked by the manager.

Build-time eval

starship init zsh, zoxide init zsh, fzf --zsh: run once at build time with zflash eval and inlined, instead of forking on every start.

Cached compinit

Completion directories are hoisted automatically and compinit runs from a signed, cached dump after the first prompt. Early compdef calls are queued and replayed.

Startup time

Six popular plugins loaded through each manager's documented minimal setup, measured with hyperfine on an Apple M4 (zsh 5.9).

Startup time by plugin managerStartup time by plugin manager

Your whole shell in one spec

~/.config/zflash/plugins.zsh
# before the first prompt
zflash load ~/.zsh/exports
zflash eval 'starship init zsh'

# completions only
zflash fpath zsh-users/zsh-completions src

# after the first prompt
zflash defer ohmyzsh/ohmyzsh plugins/git
zflash defer zsh-users/zsh-syntax-highlighting
zflash defer zsh-users/zsh-autosuggestions
zflash defer ~/.zsh/aliases
Learn the spec file →