ios-chat-and-messaging-designlisted
Design and build best-in-class native iOS chat, messaging, and group chat apps with the polish of iMessage, Telegram, WhatsApp, Snapchat, Instagram DMs, and Discord. Use this skill whenever the user is building, reviewing, or refining a SwiftUI/UIKit app that involves direct messages, group chats, threads, voice messages, video calls, reactions, typing indicators, presence, read receipts, ephemeral messages, end-to-end encryption, push notifications, or anything backed by APNs, PushKit, CallKit, CryptoKit, NotificationServiceExtension, or Live Activities. Triggers on: chat, messaging, message bubble, group chat, DM, conversation, composer, reactions, tapback, reply, thread, typing indicator, presence, read receipt, voice message, waveform, end-to-end encryption, E2EE, ephemeral, disappearing message, sticker, GIF, Genmoji, iMessage app, message effect, Live Activity, Dynamic Island, push notification, notification service extension, CallKit, PushKit, video call, FaceTime, SharePlay, App Intent, CryptoKit.
heyimjames/ios-design-skills · ★ 0 · Web & Frontend · score 75
Install: claude install-skill heyimjames/ios-design-skills
# iOS Chat & Messaging — Design Engineering Skill
A taste guide for building messaging apps that feel like they belong on iOS. Every value below is opinionated and specific — pulled from studying flows on Mobbin and shipping native chat apps.
## Output format — required
When this skill is invoked to review chat/messaging code or recommend changes, **always output recommendations as a markdown table** with three columns:
| Before | After | What this changes |
| --- | --- | --- |
| The current code, value, or approach (quote the user's actual code when possible) | The recommended replacement — **specific**, with exact values | One sentence on what the user will *see, feel, or experience* differently |
Three rules:
1. **Before** quotes the user's actual code where possible.
2. **After** is specific. Exact pt values, exact corner radii, exact haptic styles, exact API calls.
3. **What this changes** is *experiential or visual*, not abstract.
Output ONE table with multiple rows for multi-recommendation reviews — not one table per row. Use `—` for Before if the user hasn't implemented that thing yet.
**Examples drawn from this skill:**
| Before | After | What this changes |
| --- | --- | --- |
| `cornerRadius: 16` applied uniformly to every message bubble | First/last bubbles in a burst get 18pt continuous; middle bubbles get 4pt small radius on inside-edges | Bubble grouping reads as conversation rhythm — same-speaker messages cluster visually, switches between speakers sep