https://github.com/yarden-zamir/dotfiles
https://github.com/yarden-zamir/dotfiles
dot-files dotfiles gh-source git scripts zsh
Last synced: 4 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/yarden-zamir/dotfiles
- Owner: Yarden-zamir
- License: mit
- Created: 2022-10-25T14:24:45.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2025-04-07T08:17:47.000Z (about 1 year ago)
- Last Synced: 2025-10-08T00:35:45.215Z (9 months ago)
- Topics: dot-files, dotfiles, gh-source, git, scripts, zsh
- Language: Shell
- Homepage:
- Size: 89.8 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
# personal-toolchain
Personal Zsh-first dotfiles for daily terminal work on macOS and Linux.
## Phase system
Phase-based loader for shell startup.
The `_dotfiles_source_dir` helper sources `*.zsh` files from phase directories in order.
Startup flow:
- `.zshenv` (always): `zshenv/pre-init` -> `zshenv/init` -> `zshenv/post-init`
- `.zprofile` (login shells): `zprofile/pre-init` -> `zprofile/init` -> `zprofile/post-init`
- `.zshrc` (interactive shells): `zshrc/pre-init` -> `zshrc/init` -> `zshrc/post-init`
Phase intent:
- `pre-init`: environment/bootstrap (`PATH`, `FPATH`, completion prerequisites)
- `init`: aliases, functions, plugin setup, core behavior
- `post-init`: widgets, keybindings, terminal/UI hooks
Placement rule: add new behavior as a focused file in the correct phase directory instead of expanding entrypoint files.
## Tooling assumptions
- `zsh`
- `git`
- `stow`
- `shellcheck`
- `gh_source` (for plugin management)
Frequently used optional tools in this setup include `gh`, `fzf`, `bat`, `rg`, `fd`, `atuin`, `starship`, and `cargo`.
## Editing guidelines
- Keep changes modular: add/update a focused file in the proper phase directory.
- Avoid broad inline `source` blocks in `.zshenv` or `.zshrc`.
- Follow existing `gh_source` usage for plugin sourcing.
- Use `gh_source --require` only for hard dependencies.