Files
create/kindred-icons
forbes-0023 224feda4ad
Some checks failed
Build and Test / build (push) Has been cancelled
feat(icons): add Catppuccin Mocha icon override infrastructure
Set up the foundation for custom Kindred Create icons:

- Add kindred-icons/ directory with Catppuccin Mocha themed SVG icons
- Modify BitmapFactory to prioritize kindred-icons/ in search path
- Add CMake install rules to package icons with application
- Include documentation (README.md) with design guidelines
- Add 12 initial icons as proof of concept:
  - File: document-new, document-open, document-save
  - Edit: edit-undo, edit-redo, edit-copy, edit-cut, edit-paste, delete
  - View: zoom-in, zoom-out, view-refresh
  - System: preferences-system

All icons follow the standard template:
- 32x32 viewBox
- Rounded rectangle background (rx=4, surface0 #313244)
- Catppuccin Mocha color palette

Closes #3
2026-02-05 11:17:27 -06:00
..

Kindred Create Icons

This directory contains custom Catppuccin Mocha themed SVG icons that override the default FreeCAD icons.

How It Works

Icons placed in this directory are loaded before the default FreeCAD icons. To override an icon, simply create an SVG file with the same name as the original icon.

For example, to override document-save.svg, create kindred-icons/document-save.svg.

Icon Design Standards

All Kindred Create icons follow these guidelines:

Template

<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32">
  <rect x="2" y="2" width="28" height="28" rx="4" fill="#313244"/>
  <!-- Icon content using Catppuccin Mocha colors -->
</svg>

Specifications

Property Value
ViewBox 32x32
Background Rounded rect, rx=4, fill=#313244 (surface0)
Stroke width 1.5-2.5 for main elements
Style Flat, minimal, geometric

Catppuccin Mocha Palette

Color Hex Usage
Base #1e1e2e Deep backgrounds
Mantle #181825 Darker backgrounds
Crust #11111b Darkest backgrounds
Surface0 #313244 Icon backgrounds
Surface1 #45475a Elevated surfaces
Surface2 #585b70 Higher surfaces
Overlay0 #6c7086 Subtle elements
Overlay1 #7f849c More visible overlays
Overlay2 #9399b2 Prominent overlays
Subtext0 #a6adc8 Tertiary text
Subtext1 #bac2de Secondary text
Text #cdd6f4 Primary text/strokes
Lavender #b4befe Soft purple accent
Blue #89b4fa File operations
Sapphire #74c7ec Links, info
Sky #89dceb Light blue accent
Teal #94e2d5 Success secondary
Green #a6e3a1 Creation/Success
Yellow #f9e2af Sketcher, warnings
Peach #fab387 Settings, caution
Maroon #eba0ac Soft red
Red #f38ba8 Deletion/Error
Mauve #cba6f7 Primary accent
Pink #f5c2e7 Decorative
Flamingo #f2cdcd Soft accents
Rosewater #f5e0dc Lightest accent

Workbench Color Coding

Each workbench uses a distinct accent color:

Workbench Primary Accent
Part Design Blue #89b4fa Sapphire #74c7ec
Sketcher Yellow #f9e2af Peach #fab387
Assembly Green #a6e3a1 Teal #94e2d5
TechDraw Mauve #cba6f7 Lavender #b4befe
Spreadsheet Sky #89dceb Sapphire #74c7ec
Mesh Pink #f5c2e7 Flamingo #f2cdcd
Draft Peach #fab387 Yellow #f9e2af

Adding New Icons

  1. Identify the original icon name (e.g., document-save.svg)
  2. Create your SVG using the template above
  3. Save it in this directory with the exact same filename
  4. The new icon will be used on next application start

Finding Original Icon Names

Original icons are located in:

  • src/Gui/Icons/ - Core GUI icons
  • src/Mod/*/Gui/Resources/icons/ - Module-specific icons

Use the same filename to override.

  • Epic: #7
  • Phase 1 (Core): #4
  • Phase 2 (Workbench): #5
  • Phase 3 (Complete): #6