Problem
White-labeling exists (branding.json is great), but it's config-file-only: rebranding means hand-editing JSON in %APPDATA%\Taurus\ and knowing the field names. The README documents it, but a Settings section would make rebrand — app name, logo, terminal look — a two-minute in-app job.
Intended fix
A White-label group in ⚙ Settings that reads and writes branding.json:
- app name, subtitle, window title (text fields);
- logo (file picker via the existing
pick_file dialog — any png/jpg/svg);
- accent color + terminal background/text colors (color inputs, written as
theme variable overrides --accent, --term-bg, --term-fg);
- Save merges into the existing
branding.json (unknown fields like skin, font, garble preserved) and re-applies branding live; terminal colors apply to new sessions, noted in the UI.
Rust side: two small commands — read_branding_config (raw file text, {} if absent) and save_branding_config (write text to the per-user config path). The existing branding command stays the single source for applying.
Empty fields = stock Taurus, exactly like deleting the file today.
Problem
White-labeling exists (branding.json is great), but it's config-file-only: rebranding means hand-editing JSON in
%APPDATA%\Taurus\and knowing the field names. The README documents it, but a Settings section would make rebrand — app name, logo, terminal look — a two-minute in-app job.Intended fix
A White-label group in ⚙ Settings that reads and writes
branding.json:pick_filedialog — any png/jpg/svg);themevariable overrides--accent,--term-bg,--term-fg);branding.json(unknown fields likeskin,font,garblepreserved) and re-applies branding live; terminal colors apply to new sessions, noted in the UI.Rust side: two small commands —
read_branding_config(raw file text,{}if absent) andsave_branding_config(write text to the per-user config path). The existingbrandingcommand stays the single source for applying.Empty fields = stock Taurus, exactly like deleting the file today.