- Home
- Skills
- Rshankras
- Claude Code Apple Skills
- Settings Screen
settings-screen_skill
- Swift
56
GitHub Stars
2
Bundled Files
2 months ago
Catalog Refreshed
4 months ago
First Indexed
Readme & install
Copy the install command, review bundled files from the catalogue, and read any extended description pulled from the listing source.
Installation
Preview and clipboard use veilstrat where the catalogue uses aiagentskills.
npx veilstrat add skill rshankras/claude-code-apple-skills --skill settings-screen- settings-patterns.md10.2 KB
- SKILL.md5.9 KB
Overview
This skill generates a production-ready settings (preferences) screen for iOS and macOS apps with modular, reusable sections. It scaffolds platform-appropriate SwiftUI files, AppStorage wrappers, and small UI components so you can plug the settings into your app quickly. Use it to add account, appearance, notifications, legal, and about sections with optional extras like app icon and language selectors.
How this skill works
The generator inspects your project for existing settings implementations and platform targets, then asks which sections and features you need. It creates a SettingsView container, an AppSettings @AppStorage wrapper, reusable SettingsRow components, and per-section views (Appearance, Account, Notifications, About, Legal). Templates are adapted to your architecture and platform using conditional compilation where needed.
When to use it
- You want to add a central settings or preferences screen to an app.
- You need toggles for dark mode, notification links, or app icon selection.
- You want a macOS preferences window or an iOS Settings view integrated into NavigationStack.
- You need a consistent AppStorage-backed settings store across views.
- You are shipping localized legal links, version info, or account actions.
Best practices
- Run the pre-generation checks to detect existing settings and avoid naming conflicts.
- Select only the sections you need so generated files match your app structure.
- Keep AppSettings as the single source of truth and access it via dependency injection or EnvironmentObject.
- Use platform-specific UI patterns: Settings scene / TabView on macOS and NavigationStack/List/Form on iOS.
- Add accessibility labels and test VoiceOver navigation for every row and action.
Example use cases
- Add a Settings entry to a tab bar that pushes SettingsView on NavigationStack.
- Provide a macOS Settings scene with tabs for Appearance, Notifications, and Legal.
- Add an About section showing app version, website link, and developer contact.
- Include account actions: Sign out and Delete Account flows wired to your auth layer.
- Add debug-only sections (via #if DEBUG) for feature toggles and telemetry controls.
FAQ
The generator first detects existing implementations and will prompt whether to extend, replace, or create a separate settings module to avoid accidental overwrites.
How are settings persisted?
Settings use an AppSettings wrapper backed by @AppStorage so values persist across launches and can be shared via UserDefaults.