{"id":49775013,"url":"https://github.com/egorlem/veil.zsh","last_synced_at":"2026-05-11T14:34:22.799Z","repository":{"id":325433738,"uuid":"1100467024","full_name":"egorlem/veil.zsh","owner":"egorlem","description":"Modular Zsh (Z Shell) Configuration System. No magic, just clarity.","archived":false,"fork":false,"pushed_at":"2026-04-10T08:31:04.000Z","size":161,"stargazers_count":5,"open_issues_count":1,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-04-10T10:33:51.741Z","etag":null,"topics":["shell","zsh","zsh-configuration","zsh-plugins","zshell","zshrc"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"wtfpl","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/egorlem.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-11-20T10:14:18.000Z","updated_at":"2026-04-10T08:31:10.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/egorlem/veil.zsh","commit_stats":null,"previous_names":["egorlem/veil","egorlem/veil.zsh"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/egorlem/veil.zsh","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/egorlem%2Fveil.zsh","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/egorlem%2Fveil.zsh/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/egorlem%2Fveil.zsh/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/egorlem%2Fveil.zsh/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/egorlem","download_url":"https://codeload.github.com/egorlem/veil.zsh/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/egorlem%2Fveil.zsh/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32899184,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-10T13:40:02.631Z","status":"online","status_checked_at":"2026-05-11T02:00:05.975Z","response_time":120,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["shell","zsh","zsh-configuration","zsh-plugins","zshell","zshrc"],"created_at":"2026-05-11T14:34:21.682Z","updated_at":"2026-05-11T14:34:22.743Z","avatar_url":"https://github.com/egorlem.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Veil [veɪl] — Modular Zsh Configuration System\n\n**Full control. No magic. Just clarity.**\n\nVeil is **not** a plugin manager. It does not pull external tools or hide behavior behind layers of magic. Everything it does is explicit, local, and under your control.\n\n\n---\n\n## What’s Inside?\n\nVeil breaks your `.zshrc` into **independent modules**, each a plain `.zsh` file that can be **read, modified, or disabled independently**.\n\nOut of the box, it provides a ready-to-use Zsh environment for **everyday terminal work**, with sensible defaults for history, completion, navigation, aliases, keybindings, and common tools. The included **Ultima** theme shows VCS state, SSH connections, and command status in a clean, unobtrusive prompt.\n\n---\n\n## Quick Start\n\n```shell\n# Clone Veil repository\ngit clone https://github.com/egorlem/veil.zsh \"$HOME/.zsh/veil\"\n\n# Source Veil in your .zshrc (includes Ultima theme)\necho 'source \"$HOME/.zsh/veil/veil.zsh\"' \u003e\u003e \"${ZDOTDIR:-$HOME}/.zshrc\"\n```\n\nIncluded by default:\n\n* Core module loader\n* Modules: `less`, `ls`, `completion`, `history`, `navigation`\n* [Ultima](https://github.com/egorlem/ultima.zsh-theme) minimalist theme\n\n\u003e For detailed module configuration, see [Tier 2 Documentation](./components/README.md) \n\n---\n\n## Why Veil?\n\nTraditional `.zshrc` files often grow into tangled, hard-to-manage scripts. Changing one part can break another, and debugging becomes slow and frustrating.\n\nVeil’s modular design solves this problem: each module is **self-contained**, with its own functions and rules. This makes your shell **predictable, transparent, and fully under your control**.\n\nModules and themes are organized in simple folders for clarity:\n\n```\n~/.veil/components/modules\n├── completion.module.zsh\n├── history.module.zsh\n└── ...\n\n~/.veil/components/themes\n├── ultima.zsh-theme\n└── ...\n```\n\nIf you prefer plugins that just work without showing how they work, Veil may not be the right fit — it’s meant for users who value **visibility and control** over magic.\n\n---\n\n## Performance\n\nPerformance was measured with **all 9 modules + Ultima theme**, including **`zsh-users/zsh-autosuggestions`** and **`zsh-users/zsh-syntax-highlighting`**, using [**zimfw/zsh-framework-benchmark**](https://github.com/zimfw/zsh-framework-benchmark) as the test tool.\n\n\n| Framework / Config             | Real  | User  | Sys   | Max      |\n| ------------------------------ | ----- | ----- | ----- | -------- |\n| ZimFW (all included)           | 0.075 | 0.003 | 0.071 | 0.107    |\n| **Veil (9 modules + Ultima)**  | 0.083 | 0.003 | 0.079 | 0.107    |\n| zplug                          | 0.230 | 0.008 | 0.218 | 0.274    |\n| Oh My Zsh                      | 0.351 | 0.005 | 0.344 | 0.378    |\n\nVeil remains efficient and responsive, even with multiple modules loaded, and adding more modules may slow it down slightly — but performance stays within reasonable bounds.\n\n---\n\n## Documentation Tiers\n\nVeil documentation follows **progressive disclosure**.\n\n- **Tier 1 (You are here)** — Quick start, core concepts, essentials. \n- [**Tier 2** — Advanced configuration and integration.](./components/README.md)\n- [**Tier 3** — Core modules and system internals.](./components/modules/README.md)\n\nStart here to learn the basics of Veil. Understand core concepts and essential workflows. Move to Tier 2 only when you are ready to configure and personalize your setup.\n\n---\n\n## Philosophy\n\n### Script as Application\n\nVeil treats each configuration module as a **small standalone program**, solving the issues that come with large, tangled `.zshrc` files. Each module handles one part of your shell clearly and predictably, with a **single responsibility**, a **clear entry point**, and its **own functions and internal rules**.  \n\nThis design allows every module to be **read, reasoned about, and maintained in isolation**, and explains why **all of Veil, including its theme,** is structured like **self-contained programs** instead of typical shell scripts.\n\n---\n\n## License\n\n**Do What The F*ck You Want To Public License, Version 2**\nSee [LICENSE](https://github.com/egorlem/veil.zsh/blob/main/LICENSE) for details.\n\nMaintained by [Egor Lem](https://egorlem.com/)\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fegorlem%2Fveil.zsh","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fegorlem%2Fveil.zsh","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fegorlem%2Fveil.zsh/lists"}