oficina / estilo Public

Clone
git clone https://amadan.net/oficina/estilo

Plain git — no account needed to clone.

Download

Download this file

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