a native ios client for gitbay

client ios swift

https://gitbay.org

v1.0.0: design polish pass #1

closed cmc opened this on 2026-08-27 06:40 · assigned to cmc

cmc 2026-08-27 06:40

Gap to close before the App Store submission: the app ships on stock SwiftUI defaults.

  • App icon (currently the template placeholder) and AccentColor
  • A deliberate color scheme: state colors (open/merged/closed, build states, signature verdicts) are ad-hoc per view — pull them into one palette checked for contrast in light and dark
  • Typography pass on dense rows (diff view, log, thread cards)
  • Launch screen, empty-state illustrations, App Store screenshots/metadata
  • Screenshot checkpoint on smallest and largest supported devices, both appearances, per the working agreement

Blocks v1.0.0.

cmc 2026-08-27 06:40

Palette note: state colors are currently ad-hoc per view — SignatureBadge, MRStateBadge, check and build rows each pick their own.

cmc 2026-08-28 00:46

Status after the design pass and the checkpoint run.

Done:

  • App icon rendered from the web's favicon mark (black ground, orange sail, white hull bars) at 1024pt, and AccentColor set to the web's --accent pair (#0000f0 / #6272ff).
  • One palette instead of per-view guesses: Theme.swift carries the stylesheet's tokens as light/dark pairs (ok/bad/done/warn/mark, diff grounds, code background, fill-subtle). Every state color now resolves through it — signature badges, MR and issue states, check and build rows, diff gutters. Two mappings were wrong before and are fixed: a closed issue was purple (it is --bad on the web; purple is merged), and diff rows used generic green/red tints rather than the web's --diff-add/--diff-del.
  • Chips use the web's recipe: state color, 7% tint ground, 35% tint border, 2px radius — not Capsules.
  • Typography: Atkinson Hyperlegible Next and Mono, the same faces the web serves, converted to static cuts and registered at launch, scaling with Dynamic Type. Falls back to the system face if registration fails. OFL license bundled.
  • Screenshot checkpoint automated as testScreenshotCheckpoint and green across iPhone 17e, 17 Pro, and 17 Pro Max in both appearances. It attaches captures to the xcresult, so it doubles as the store-screenshot generator.
  • Launch screen: generated and adaptive, so no light/dark flash.

Deliberately not matched: list and chrome backgrounds stay the system's. The web's --bg is #0a0a0a in dark where iOS grouped backgrounds are pure black; overriding that everywhere would fight the platform for a difference nobody reads as identity. Seamlessness here is color, type, terminology and iconography — not pixel-identical chrome.

Remaining, and all product decisions rather than code: App Store screenshots chosen from the checkpoint captures, listing metadata (description, keywords, support URL), and optional empty-state illustrations.

cmc 2026-08-30 01:04

app has been submitted to apple & will be reflected on the site when the listing has been approved