iOS ↔ Android helper
Cross-platform designers hit the same wall: an iOS Action Sheet is not an Android Bottom Sheet. They look similar but behave differently — different dismiss gestures, different acceptable content, different user expectations.
This Labs experiment is a helper that:
- answers questions like "what's the Material 3 equivalent of a Segmented Control"
- explains behavioural differences and when to pick which
- links to primary sources (HIG / M3)
- (next iteration) takes a Figma frame and suggests a port to the other system
Architecture
One knowledge base, three consumers.
Knowledge base in content/ios-android/mappings/*.md. One markdown = one component pair. Frontmatter: names on both platforms, doc links, last-verified date, tags.
Freshness has two layers:
- Vercel Cron hits the refresh route weekly, hashes HIG / M3 pages from
sources.yaml, marks affected mappingsstale: trueon drift. - Runtime fallback — if a question is outside the curated base, the model does a WebFetch to the official docs and answers with a citation.
Consumers of the same base:
- Skill
ios-android-translator— for designers working in Claude Code - Mini-service at
/labs/ios-android-helper— chat UI for everyone - Figma plugin (planned) — review of a selected frame
What works today
- Three seed mappings: Navigation Bar ↔ Top App Bar, Action Sheet ↔ Modal Bottom Sheet, Segmented Control ↔ Segmented Button
/api/ios-android/chatstreaming endpoint via Vercel AI SDK on an OpenAI model/api/ios-android/refreshcron route for staleness checks
Next up
- Grow the base to 30–40 pairs (typography, icons, forms, navigation, modals, feedback)
- Chat UI on the Labs page
- Figma plugin: reads selection, matches components heuristically, proposes replacements
Возьми и попробуй
Спроси про любой компонент
Помощник отвечает по курируемой базе пар iOS ↔ Android. Если пары нет — сходит на HIG / M3 и ответит со ссылкой.
Источники — Apple HIG и Material 3. Сверяется автоматически раз в неделю.