zdot Documentation

June 23, 2026 · View on GitHub

The docs are organized as a journey: each stage builds on the one before. Start where your needs are.

1. Get set up

DocumentWhat it covers
Project README → Quick StartStandalone install: clone, source, first module list
Quickstart: dotfiler + zdotThe recommended full setup: dotfiles repo, symlink tree, self-updates, new-machine bootstrap

2. Use plugins and configure what ships

DocumentWhat it covers
Using PluginsDeclaring plugins (GitHub, OMZ, Prezto), deferred loading, configuring shipped modules, plugin updates
Module catalogEvery built-in module: what it does, provides, requires, and its zstyle keys

3. Write your own modules

DocumentWhat it covers
Module Writer's GuideFrom a 3-line module to multi-phase plugin lifecycles: zdot_simple_hook, zdot_define_module, manual hooks, groups, extension points

4. Get more complex

DocumentWhat it covers
Advanced UsageShell contexts, the .zshenv-as-.zshrc pattern, per-machine variants, controlling deferred execution, writing a bundle handler

5. Reference

DocumentWhat it covers
API ReferenceEvery public function with full flag tables
Dependency typesWhich edge to declare (--requires, --requires-optional, --after, --optional, groups) and when
zstyle ReferenceEvery configuration option, grouped by subsystem
CLI ReferenceThe zdot command: every noun and verb
compinitCompletion-system controls: compaudit, cached dumps, forced refresh

6. Internals

For developers working on zdot itself:

DocumentWhat it covers
Implementation GuideArchitecture, data structures, dependency resolution, force-deferral, caching system
Plugin ImplementationPlugin manager internals, bundle registry, compdef queue, compinit flow
design/Working design notes and historical decision records