Apple app playbook
How Akila Studio builds native Apple apps in SwiftUI, so every app starts from the same standard: the pieces every app has, devices, RevenueCat, localization into 12 languages, permissions and App Store Connect. Use when starting a new Apple app or bringing an existing one up to the standard.
akilastudio.com/skills/apple-app-playbook.mdThe standard every Akila Studio app is built to, so apps are easy to develop and consistent with each other. Native Apple apps only, in SwiftUI. Always apply anti-ai-swift-patterns (https://akilastudio.com/skills/anti-ai-swift-patterns.md) alongside it.
Two ways to use it
- New project: start with the kickoff brief, then build the app to the standard from the first screen.
- Existing project: review the app against this playbook and add whatever is missing.
Kickoff brief
Before building, run a short brief. At least ask:
- Does it need a welcome tour?
- Does it need an Apple Watch app?
- Does it need a macOS app?
- Which permissions will it ask for?
Pieces every app has
- Onboarding: always.
- Welcome tour: only when the brief asks for it. It comes after onboarding, highlights parts of the interface (coach marks) and explains how to use them.
- Paywall: always designed, connected to RevenueCat.
- What's new: after an update, the app shows what changed in that version.
- Settings: always, with plenty of configuration and personalization.
- Support: the contact is hello@akilastudio.com.
Devices
- Every app is designed for different devices: every iPhone size, the foldable iPhone, and landscape.
- iPad is supported, laid out properly as the window grows.
- Apple Watch and macOS only when the app needs them and the brief says so.
Monetization
- Always connected to RevenueCat.
Localization
Always localized into these 12 languages, with these String Catalog codes:
- English
en(base language) - Spanish
es(one Spanish, no split between Spain and Latin America) - Simplified Chinese
zh-Hans - Japanese
ja - Korean
ko - Russian
ru - Italian
it - German
de - Polish
pl - Turkish
tr - French
fr - Brazilian Portuguese
pt-BR
Localize everything: the app (Localizable.xcstrings), the permission texts (InfoPlist.xcstrings) and the shortcuts (AppShortcuts.xcstrings), in the Watch, widget and extension targets too.
Feel
- Apps feel fast and responsive, never clunky.
Permissions
- Comply with everything Apple requires, and handle every permission well: Health, Reminders, camera, notifications and the rest.
App Store
- Connect to App Store Connect through its API, with the API key the user has configured. Use it to build the App Store listings and the App Store screenshots.
- Never commit the key or copy it into a repository.
- Confirm with the user before any change to the live store: copy, versions, submitting for review.