# Recommended icons — Kindergarten Icons render through the CMS sprite pipeline: `` (or the `::pack:name:size::` shorthand). The theme's overrides reference two bundled packs. ## Required packs Declared in `plugin.mod` as `required_icon_packs = ["lucide", "simple-icons"]` (forward-declared — the loader does not yet auto-install; install manually until it does). | Pack | Used for | Install | |---|---|---| | **lucide** | UI glyphs the builtin/override templates use: `arrow-right`, `check`, `chevron-down`, `chevron-left`, `chevron-right`, `x`, `star`, `flag`, `navigation`, `map-pin`, `download`, `play`, `sun`, `book-open`, `palette`, `user`, `globe` | Ships bundled with the CMS — no action needed. | | **simple-icons** | Author/social brand glyphs: `x` (Twitter), `linkedin`, `github`, `facebook`, `instagram`, `youtube` | Ships bundled with the CMS — no action needed. | Both packs ship bundled with the CMS, so a fresh instance renders every override icon with no manual step. If you author blocks that reference other packs (e.g. `tabler`, `phosphor`), install them from `/admin/icons` (Browse -> install -> enable) before activation. ## Note Icon values in block content are stored as `"pack:name"` strings and split with `|split:":"|first` / `|last`. Never inline raw SVG path data for content icons — that bypasses the sprite system and the admin pack manager. (The theme's decorative mascot, schedule glyphs, and social marks in persona blocks are intrinsic illustrations, not content-icon fields.)