oficina / estilo Public
Oficina icon set
Calma's marks, chosen by Paul on 2026-09-29 (AGENTS.md, decisions table, row 8). This directory is the source for the suite's brand artwork.
- Oficina is the Fanned mark: a sweep through every app's colour from one corner, behind two white windows.
- Each app is its own colour on Calma's ring, a vertical gradient of that one hue with a soft glow of lighter shades behind its glyph. The glow is seeded by the app's id, so no two are the same shape.
The colours are the theme's: icons.json carries each app's hue, and brand_test fails unless they equal the ring in theme/apps.go. The glyphs are drawn on a 100-unit grid in icons.json, with {strong} where the app's deep tone goes. They are original drawings, not Lucide.
Every icon comes in three shapes:
| Directory | Shape | Used for | | --- | --- | --- | | svg/ | Calma's squircle, transparent corners | the web icon, the app switcher, the launcher | | square/ | full bleed, opaque | the Apple touch icon; the iPhone app icon (iOS masks it) | | mac/ | the squircle on Apple's grid (824 of 1024), with its shadow | the Mac app icon |
png/ holds 16, 32, 48, 192, 512 and 1024-pixel exports of the web icon and a 180-pixel Apple touch icon. For each app with a native client (NATIVE in generate.mjs), native/<id>/ holds ios-1024.png (no alpha channel), macos-1024.png and the Finder's AppIcon.icns. preview.png shows the family on light and dark at 120, 48, 32 and 16px.
Regenerate from the Estilo repository root:
node brand/generate.mjs --renderRendering uses Playwright and Chromium, and macOS's iconutil for the .icns. Set OFICINA_PLAYWRIGHT to an installed Playwright module's absolute entry-point path when it is not installed here; optionally set OFICINA_CHROMIUM to a Chromium executable. Omit --render to regenerate the SVGs only, without a browser. No network is needed.
Copy or verify a consumer from any directory:
python3 brand/distribute.py home /path/to/home
python3 brand/distribute.py calls /path/to/meet --checkThe app argument is one of home, docs, sheets, slides, calendar, calls, memoria or fichas. Home receives every app's listing icon, Mail and Files included. Calls, Docs, Sheets, Calendar and Memoria also receive their native icons: the iPhone PNG, and the Mac's PNG (Calls) or .icns. Docs keeps its web assets outside the editor build directory. Run --check for every consumer after changing artwork, and rebuild and sign the native apps: replacing repository files does not update an installed app.
LICENSE.lucide is still distributed: the shared chrome's interface icons are Lucide's, and each app's credits page names it.