WARM STARTUP OVERHEAD < 0.5 MS

Ultra-Fast, Zero-Friction
Zsh Plugin Management

Instant warm startup with memory-mapped bytecode wordcode, zero subprocess forks, automatic canonical ordering, and native Oh-My-Zsh & Powerlevel10k support.

Add to top of your ~/.zshrc (Self-Bootstrapping)
if [ ! -d "${HOME}/.zload" ]; then
  git clone --depth 1 https://github.com/casonadams/zload.git "${HOME}/.zload"
fi
source "${HOME}/.zload/zload.zsh"
Shell Startup Latency Benchmark (10 Plugins) macOS Apple Silicon
0.45 ms
zload (.zwc bundle)
12 ms
Antidote
28 ms
Zinit (Turbo)
340 ms
Oh-My-Zsh

Engineered for Raw Speed

Designed from first principles to eliminate the physical bottlenecks of shell startup.

โšก๏ธ
Memory-Mapped Wordcode
Concatenates and byte-compiles all plugins into a single bundle.zsh.zwc. Sourcing one memory-mapped file replaces dozens of individual disk reads.
๐Ÿšซ
Zero Subprocess Forks
100% pure Zsh builtins and parameter expansion in the critical interactive path. Zero calls to git, sed, grep, or subshell forks $(...).
๐Ÿช„
Automatic Canonical Ordering
Completions before compinit, themes before plugins, syntax-highlighting before autosuggestions. No matter what order you declare, zload sorts safely.
โณ
Automatic Lazy Tab Compinit
Automatically armed out of the box. Defers compinit until your first <Tab> press. Early compdef calls are buffered and replayed, saving 40โ€“100ms at startup.
๐ŸŽฏ
Command Proxy Stubs
Stub heavy CLI tools like nvm, pyenv, or kubectl via --on. Startup latency is 0ms until the command is invoked.
๐Ÿ“ฆ
Seamless OMZ & Prezto
Load omz:git or prezto:utility without 100MB framework clones. Automatically injects missing lib/git.zsh and theme colors.
๐Ÿ—‚
Smart PATH & FPATH
Deduplicates $PATH and $fpath, expands ~, verifies directory existence, and auto-links ~/.zfunc for custom completions.
๐Ÿ”’
Reproducible Lockfiles
Freeze exact Git commit hashes with zload lock and sync across machines with zload sync for 100% deterministic dotfiles.

Human-First Configuration

Choose a tab below to see how easy your ~/.zshrc looks with zload.

~/.zshrc (Standard Setup)
# 1. Bootstrap zload (auto-clones on fresh machines)
if [ ! -d "${HOME}/.zload" ]; then
  git clone --depth 1 https://github.com/casonadams/zload.git "${HOME}/.zload"
fi
source "${HOME}/.zload/zload.zsh"

# 2. Deduplicating path management in clean array syntax
user_paths=(
  ~/bin
  ~/.local/bin
  /opt/homebrew/bin
)
zload path "${user_paths[@]}"

# 3. Declare plugins
plugins=(
  casonadams/zline
  omz:lib/completion.zsh
  zsh-users/zsh-completions
  omz:git
  omz:extract
  casonadams/walh-shell
  lukechilds/zsh-nvm --on nvm,node,npm
  zsh-users/zsh-syntax-highlighting --defer
  zsh-users/zsh-autosuggestions
)
zload "${plugins[@]}"
bindkey '^ ' autosuggest-accept

๐Ÿ’ก Prompt Recommendation: Pair with a high-performance prompt like zline (zload casonadams/zline), Powerlevel10k (zload romkatv/powerlevel10k), or Starship (zload eval starship "starship init zsh") to complement zload's sub-millisecond shell startup.

Smart PATH & FPATH Helpers
# Prepend to PATH: native array syntax with existence check and deduplication
user_paths=(
  ~/.opencode/bin
  ~/.cargo/bin
  ~/.local/bin
  /opt/homebrew/bin
  /opt/homebrew/sbin
  /opt/homebrew/opt/openjdk/bin
  /usr/local/bin
)
zload path "${user_paths[@]}"

# Prepend to fpath with deduplication
zload fpath ~/.my-completions /opt/homebrew/share/zsh/site-functions

# Automatic ~/.zfunc discovery:
# If ~/.zfunc exists (uv, bwc, pipx completions), zload automatically
# links it into $fpath and bytecode bundles. Zero config required!

# Inspect active entries anytime:
# $ zload path
# $ zload fpath

Feature Comparison

How zload compares to existing alternatives in the Zsh ecosystem.

Feature Oh-My-Zsh Zinit Antidote zload
Warm Startup Overhead 200โ€“500 ms 15โ€“40 ms 8โ€“15 ms < 0.5 ms
Interactive Warm Subprocesses Many Several Few Zero (0)
Memory-Mapped Wordcode (.zwc) โœ• Partial โœ• โœ“ Full Native
Pure Zsh Builtins (0 Dependencies) โœ“ Pure Zsh โœ• Complex Annexes โœ“ Pure Zsh โœ“ 100% Pure Zsh
Automatic Canonical Ordering โœ• โœ• โœ• โœ“ Automatic
Built-in Lazy <Tab> Compinit โœ• Manual โœ• โœ“ Automatic
Zero-Subprocess Eval Caching โœ• โœ• โœ• โœ“ Native
OMZ Library Auto-Shims Native Manual โœ• โœ“ Automatic
GitHub Releases Binaries (gh-r) โœ• โœ“ Complex โœ• โœ“ Clean
Reproducible Lockfiles (sync) โœ• โœ• โœ• โœ“ Built-in
โšก Warm Startup Overhead
๐Ÿš€ zload < 0.5 ms (Fastest)
Antidote8โ€“15 ms
Zinit (Turbo)15โ€“40 ms
Oh-My-Zsh200โ€“500 ms
๐Ÿšซ Interactive Warm Subprocesses
๐Ÿš€ zload 0 (Zero Forks)
AntidoteFew
ZinitSeveral
Oh-My-ZshMany (10+)
๐Ÿ“ฆ Memory-Mapped Bytecode (.zwc)
๐Ÿš€ zload โœ“ Full Native Bundle
ZinitPartial
Antidoteโœ• None
Oh-My-Zshโœ• None
๐Ÿš Pure Zsh Builtins (0 Dependencies)
๐Ÿš€ zload โœ“ 100% Pure Zsh
Antidoteโœ“ Pure Zsh
Oh-My-Zshโœ“ Pure Zsh
Zinitโœ• Complex Annexes
๐Ÿช„ Automatic Canonical Ordering
๐Ÿš€ zload โœ“ Automatic Sorting
Antidoteโœ• Manual order
Zinitโœ• Manual order
Oh-My-Zshโœ• Manual order
โณ Built-in Lazy Tab Compinit
๐Ÿš€ zload โœ“ Automatic <Tab>
ZinitManual ice syntax
Antidoteโœ• None
Oh-My-Zshโœ• Synchronous (slow)
โšก Zero-Subprocess Eval Caching
๐Ÿš€ zload โœ“ Built-in (0.2ms)
Antidoteโœ• None
Zinitโœ• None
Oh-My-Zshโœ• None
๐Ÿš Oh-My-Zsh Library Auto-Shims
๐Ÿš€ zload โœ“ Auto-injected
Oh-My-ZshNative (100MB framework)
ZinitManual pick/as snippets
Antidoteโœ• Manual handling
๐Ÿ“ฅ GitHub Release Binaries (gh-r)
๐Ÿš€ zload โœ“ Clean --from gh-r
Zinitโœ“ Complex DSL
Antidoteโœ• None
Oh-My-Zshโœ• None
๐Ÿ”’ Reproducible Lockfiles
๐Ÿš€ zload โœ“ zload lock & sync
Antidoteโœ• None
Zinitโœ• Annexes needed
Oh-My-Zshโœ• None