| 1 | # Oficina icon set |
| 2 | |
| 3 | Approved 2026-09-12. The maintained source and distributor now live in |
| 4 | Oficina Estilo's `brand/` directory (branch `codex/oficina-icons`). This |
| 5 | folder preserves the original review sheet and exports. Make subsequent |
| 6 | artwork changes in Estilo, then run its `brand/distribute.py` for each app. |
| 7 | |
| 8 | Open `preview.png` or `preview.svg` to compare the family and small sizes. |
| 9 | |
| 10 | | Product | Lucide symbol | Background | |
| 11 | | --- | --- | --- | |
| 12 | | Oficina | panels-top-left | `#303642` | |
| 13 | | Docs | file-text | `#2563EB` | |
| 14 | | Sheets | table | `#168049` | |
| 15 | | Slides | presentation | `#C45B16` | |
| 16 | | Calendar | calendar-days | `#CB3F50` | |
| 17 | | Calls | video | `#087F8C` | |
| 18 | | Memoria | book-search | `#7C3FC8` | |
| 19 | |
| 20 | `svg/` contains opaque square 1024-unit masters. `png/` contains 16, 32, |
| 21 | 48, 180, 192, 512 and 1024-pixel exports for each. Platform masks should |
| 22 | provide rounded corners; the rounded tiles in the preview are illustrative. |
| 23 | The Lucide canvas occupies 70% of each tile, with the original 2-unit white |
| 24 | stroke. Use visible product names alongside launcher icons. |
| 25 | |
| 26 | Edit `icons.json`, then from the Calls repository root run: |
| 27 | |
| 28 | ```sh |
| 29 | node design/oficina-icons/generate.mjs --render |
| 30 | ``` |
| 31 | |
| 32 | Rendering uses the repository's installed Playwright and Chromium. Omit |
| 33 | `--render` to regenerate SVGs without a browser. No network is needed. |
| 34 | |
| 35 | The original SVGs in `upstream/` come from Lucide commit |
| 36 | `a79b2d131dab2bf20cb224bd0937b439a9c4fa99`: |
| 37 | https://github.com/lucide-icons/lucide/tree/a79b2d131dab2bf20cb224bd0937b439a9c4fa99/icons |
| 38 | |
| 39 | The complete upstream license is included as `LICENSE.lucide`, copied from |
| 40 | Estilo's existing notice for that same commit. Retain it when distributing |
| 41 | the icons. Upstream paths are unchanged; the generated artwork adds white |
| 42 | stroke colour, scaling and a background. |
| 43 | |
| 44 | Validation: preview rendered in Chromium and visually inspected at 48, 32 |
| 45 | and 16 px; all 49 PNG dimensions and full opacity checked. White/background |
| 46 | contrast ranges from 4.33:1 (Slides) to 12.12:1 (Oficina). Fine details soften |
| 47 | at 16 px; these are provisional marks, not bespoke favicon drawings. |
| 48 | |