No description
Find a file
Natalie a75e135dd7
Some checks failed
Publish Swift Package / build-test-publish (push) Failing after 36s
fix(api): 🐛 update forge endpoint url
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-06-10 03:14:41 -07:00
.forgejo/workflows fix(api): 🐛 update forge endpoint url 2026-06-10 03:14:41 -07:00
palettes style(palettes): 🎨 Refine color schemes in default and lilith palettes by updating color values in default.json and lilith.json for improved visual consistency 2026-03-08 18:51:32 -07:00
scripts scripts(scripts): 🔨 Optimize and extend icon generation script to support new formats and improve performance 2026-03-08 18:51:32 -07:00
Sources/LilithTrayResources feat(@tray): add claire-mark icon set 2026-05-31 13:14:22 -06:00
templates feat(@tray): add claire-mark icon set 2026-05-31 13:14:22 -06:00
.gitignore chore(gitignore): 🔧 Add patterns to exclude build artifacts, logs, and environment files from version control 2026-03-08 18:51:31 -07:00
Package.swift feat(@tray): add claire-mark icon set 2026-05-31 13:14:22 -06:00
README.md deps-add(core): Add core dependencies and update README with new setup instructions 2026-03-08 18:51:31 -07:00

@lilith/tray-resources

Shared tray icon resources: SVG templates, color palettes, and a generation script. Also provides a Swift package for macOS apps to consume bundled icons.

Structure

tray-resources/
  palettes/         Color palette JSON files
  templates/        SVG templates using #PLACEHOLDER for color substitution
  scripts/          Icon generation tooling
  generated/        Output PNGs (git-ignored)
  Sources/          Swift package for macOS icon loading
  Package.swift     Swift package manifest

Generating Icons

pip install cairosvg
python scripts/generate-icons.py \
  --palette palettes/default.json \
  --sizes 16,18,24,32,48 \
  --templates templates/

This produces generated/<template>/<color>-<size>.png and <color>-<size>@2x.png for each combination.

Swift Usage

import LilithTrayResources

let icon = TrayResources.image(template: .chatBubble, color: .green, pointSize: 18)

Templates

  • hexagon-hub -- Hexagonal hub-and-spoke icon (life-manager)
  • circle-dot -- Filled circle
  • chat-bubble -- Chat bubble outline (messenger)

Palettes

  • default -- green/red/yellow status colors
  • lilith -- purple theme variants