mirror of
https://github.com/VibedByKaKi/t3-code-android-nightly.git
synced 2026-10-09 20:01:15 +02:00
67 lines
3.8 KiB
Markdown
67 lines
3.8 KiB
Markdown
# Brand icons
|
||
|
||
The three Icon Composer projects are the source of truth for full application icons:
|
||
|
||
- `dev/app-icon.icon`
|
||
- `nightly/app-icon.icon`
|
||
- `prod/app-icon.icon`
|
||
|
||
Each project uses `text.svg` for the T3 mark and `background.svg` when the background is a vector layer. Additional layers use semantic names that describe their role and placement.
|
||
|
||
Run `vp run icons:export` from the repository root to regenerate the tracked iOS, Linux, Windows, and web assets. The development web exports are also copied to `apps/web/public` for the browser favicon and splash screen. Run `vp run icons:check` to verify that the generated assets and public copies match their sources without changing files.
|
||
|
||
Exporting requires Icon Composer 2 or newer on macOS. The script selects the newest compatible exporter from Xcode or a standalone Icon Composer installation and pins design generation 26. Set `ICON_COMPOSER_TOOL` to the full path of `Icon Composer.app/Contents/Executables/ictool` to override automatic discovery.
|
||
|
||
## macOS exports
|
||
|
||
Icon Composer's command-line exporter does not expose the `macOS pre-Tahoe` preset. A plain command-line `macOS` export is full bleed and is not suitable for the desktop app, so the export script intentionally leaves the tracked macOS PNGs unchanged and prints a reminder after every run.
|
||
|
||
After changing an Icon Composer project, open it in Icon Composer and export the macOS PNG with exactly these settings:
|
||
|
||
- Platform: `macOS pre-Tahoe`
|
||
- Appearance: `Default`
|
||
- Size: `1024pt`
|
||
- Scale: `1×`
|
||
|
||
Save the three exports to:
|
||
|
||
- `dev/app-icon.icon` -> `dev/blueprint-macos-1024.png`
|
||
- `nightly/app-icon.icon` -> `nightly/nightly-macos-1024.png`
|
||
- `prod/app-icon.icon` -> `prod/black-macos-1024.png`
|
||
|
||
The result must be a 1024×1024 PNG with the classic macOS safe area: the opaque icon body is 824×824, inset 100 pixels on every side, with only the native Icon Composer shadow extending into the surrounding transparent canvas.
|
||
|
||
To have Codex perform the native exports, paste this prompt into a task opened at the repository root:
|
||
|
||
```text
|
||
Use [@Computer](plugin://computer-use@openai-bundled) and the Icon Composer app to export the three macOS app icons in this repository.
|
||
|
||
For each project below, use Platform: macOS pre-Tahoe, Appearance: Default, Size: 1024pt, and Scale: 1×, then save the PNG to the exact destination:
|
||
|
||
- assets/dev/app-icon.icon -> assets/dev/blueprint-macos-1024.png
|
||
- assets/nightly/app-icon.icon -> assets/nightly/nightly-macos-1024.png
|
||
- assets/prod/app-icon.icon -> assets/prod/black-macos-1024.png
|
||
|
||
Do not resize, composite, or otherwise post-process the exported PNGs.
|
||
|
||
Verify every result is 1024×1024 and has the classic macOS safe area: an 824×824 opaque body inset 100px on every side, with only Icon Composer's native shadow extending beyond it.
|
||
```
|
||
|
||
Do not edit the generated PNG or ICO files directly.
|
||
|
||
## Android launcher and splash artwork
|
||
|
||
Android masks the central 72dp of a 108dp adaptive canvas, and the Android 12+ splash screen masks
|
||
the central two thirds of a 288dp canvas, so the Icon Composer exports cannot be used directly:
|
||
their rounded-square silhouette gets framed again and the wordmark is cropped. The Android artwork
|
||
is instead rendered from the same Icon Composer SVG sources by `vp run icons:export:android`:
|
||
|
||
- `apps/mobile/assets/android-icon-foreground.png`: the shared transparent wordmark, sized to stay
|
||
inside the safe zone
|
||
- `apps/mobile/assets/android-icon-background-dev.png` and `-nightly.png`: full-bleed variant
|
||
artwork (blueprint grid and annotations; night sky and clouds). Production uses a solid color.
|
||
- `apps/mobile/assets/android-splash-icon-*.png`: the two layers composed into one 288dp image, so
|
||
the splash mask reproduces the launcher icon's framing.
|
||
|
||
Rerun the export after changing a layer SVG. `android-icon-mark.png` remains a flat silhouette for
|
||
Android's monochrome themed icon.
|