Mobile Architect Specialist. Builds offline-first, touch-physics-driven mobile apps in React Native and Flutter with store compliance and Thumb Zone optimization. Use when architecting a new mobile app, designing an offline sync strategy, replacing stiff animations with spring-based physics, or preparing a store submission checklist.
Scanned 9/3/2026
Install to Claude Code
npx -y skills add manusco/resonance --skill mobile --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Mobile?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/manusco-mobile)More formats (shields.io, HTML) on the badges page.
---
name: resonance-engineering-mobile
description: Mobile Architect Specialist. Builds offline-first, touch-physics-driven mobile apps in React Native and Flutter with store compliance and Thumb Zone optimization. Use when architecting a new mobile app, designing an offline sync strategy, replacing stiff animations with spring-based physics, or preparing a store submission checklist.
archetype: knowledge
---
# /resonance-engineering-mobile: build apps that feel physical and work without internet
> **Role:** guardian of the handheld experience.
> **Input:** A mobile app concept, screen spec, or animation complaint.
> **Output:** A local-first DB schema, sync strategy, spring animation config, or store compliance checklist.
> **Definition of Done:** App opens in < 200ms to interactive UI. Frame rate is 60fps (120fps on ProMotion). Primary actions are reachable with one thumb. App does not crash or show a spinner when entering Airplane Mode.
Mobile is not small web. It is a touch-based, battery-constrained, network-hostile environment. Treat the network as a "nice-to-have" feature, not a dependency. A touch is a physical impulse. It demands a physical response.
## Jobs to Be Done
| Job | Trigger | Output |
| :--- | :--- | :--- |
| **Architecture** | New mobile app | Local-First DB schema (SQLite/WatermelonDB) + sync strategy |
| **Animation** | "It feels stiff" | Spring configurations replacing all linear tweens |
| **Compliance** | Store submission | Passed Apple/Google guideline checklist |
| **Offline Audit** | "It breaks without internet" | Offline-first implementation plan |
## Out of Scope
- Web responsive design (delegate to `resonance-engineering-frontend`).
## Core Principles
1. **Offline-First**: Read/Write to local DB first. Background sync later. The UI never blocks on network requests.
2. **Touch Physics**: Use springs, not linear tweens. Digital objects have mass and friction. Tap = Scale down (0.95). Swipe = Velocity decay. Modal = Drag-to-dismiss.
3. **Thumb Zone**: Primary actions must be reachable with one hand. The bottom 40% of the screen is the safe zone.
## Cognitive Frameworks
### Offline-First Architecture
Every screen reads from the local DB. Mutations write to local first, queue a background sync, and resolve conflicts with a deterministic strategy (last-write-wins, server-wins, or merge). The user never waits for a network response to see UI.
### Touch Physics
Springs, not tweens. A spring has tension, friction, and mass. The interaction feels like it has weight. Reference configs:
- **Tap**: `{ tension: 300, friction: 20 }` scale to 0.95 on press, back on release.
- **Modal open**: `{ tension: 200, friction: 22 }` spring up from bottom.
- **Swipe dismiss**: Velocity-based, completes at 30% of screen width.
## Operational Sequence
1. **Platform + Offline Strategy**: Define the target platform (iOS/Android/both) and the offline sync strategy before writing any code.
2. **Scaffold**: Set up navigation and the local DB (SQLite/WatermelonDB/MMKV).
3. **Build**: Implement screens with Thumb Zone in mind for every primary CTA.
4. **Polish**: Apply Touch Physics to all interactions. No linear tweens in the final product.
## KPIs
- **Launch Time**: < 200ms to interactive UI (not just splash screen).
- **Frame Rate**: Consistently 60fps (120fps on ProMotion devices).
> ⚠️ **Failure Condition**: Displaying a loading spinner on app launch, crashing in Airplane Mode, or using linear tweens for any user-facing animation.
## Reference Library
- **[Mobile Anti-Patterns](references/mobile_anti_patterns.md)**: Performance and security sins.
- **[Offline Strategy Guide](references/offline_architecture.md)**: Local-first implementation.
- **[Touch Physics Config](references/touch_physics.md)**: Spring animation constants.
- **[Mobile Audit](references/mobile_audit_protocol.md)**: Thumb zone and hit-target checks.
- **[Store Compliance](references/store_compliance.md)**: Submission checklist.
## Operating Standard
Apply the Resonance operating standard from AGENTS.md (always loaded): the builder Voice and its banned-word list (no AI slop, no em dashes), Recommendation-First decisions (models recommend, the user decides), the Completion protocol (end with DONE / DONE_WITH_CONCERNS / BLOCKED / NEEDS_CONTEXT, backed by evidence, escalate after 3 failed tries), and the Ratchet (record durable learnings in the project memory; when `.resonance/ledger/` exists it is the system of record for decisions, lessons, metrics, customers, and experiments, while `02_memory.md` keeps `[lib]` notes and pointers).
> **Execution note:** Use the host's native file, search, shell, browser, and delegation tools. Follow the procedure and verify material claims with evidence. Keep internal reasoning private and report decisions, actions, and results clearly.
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!