Template · AI
AI Assistant SwiftUI Template
Nimbus, an AI assistant: a complete Xcode project with streaming chat, a conversation library, voice mode, widgets and three brand presets. 15 screens and 4 flows in Nimbus, as a SwiftUI app template.
An AI assistant on a four-tab shell: Chat, Library, Voice and Settings. First run shows three pages, asks for the microphone, offers Sign in with Apple, answers a first question live, then shows the Nimbus Pro paywall. A voice call opens over the app from the chat toolbar, and its transcript is saved to the Library.
- SwiftUI
- iOS 17.0+
- Xcode project 1.1.0
- ai-app
$199 once, every piece included. See how installing works · Sign in
01
Flows
Complete journeys through Nimbus, from first launch to sign out, screen by screen. Open one to play it, or choose any screen to start there.
The first 3 steps of every flow are open. Pro opens every screen of every template, live in each style, and the SwiftUI to build them.
01 · Onboarding
First Run
Three welcome pages, the microphone, an account and a first question answered live, then Nimbus Pro and the Chat tab.
8 Screens14 Steps02 · Core Journey
Ask And Talk It Through
A suggestion becomes a streamed reply, a dropped connection recovers with Retry, and a voice call from the toolbar returns to the same chat.
2 Screens11 Steps03 · Core Journey
Pick Up A Saved Chat
Browse and search the Library, open a past conversation and its menu, then delete a chat with a long press.
2 Screens8 Steps04 · Profile And Settings
Profile And Settings
The model, response style, memory, voice, Theme and an export of your chats, then the subscription and signing out.
5 Screens13 Steps02
Screens
Every screen in Nimbus, 15 in all, each a SwiftUI view in the Xcode project. In Neon, Editorial and Prism, light and dark.
First run
Welcome, permissions and the questions that set the app up.
- Think Out Loud
The first welcome page: plans, emails, recipes and explanations, written with you and saved to your Library.
Built onWelcomeOnboarding
- Talk It Through
The second welcome page introduces voice mode and its live captions.
Built onWelcomeOnboarding
- Answers That Know You
The last welcome page explains memory and moves on with Get started.
Built onWelcomeOnboarding
- Microphone
Why voice mode needs the microphone, and what it never does, before iOS asks.
Built onOnboarding
- Ask Your First Question
Pick a real question and watch the answer stream in, before the paywall.
Account and subscription
Sign in, verification and the paywall.
- Sign In
Sign in with Apple to keep chats and memories across devices, or continue without an account.
- Nimbus Pro
Nimbus 3, unlimited messages, voice and longer memory, yearly with a free week or monthly.
Built onPaywall
Tabs
Where the app opens, one screen per tab.
- Chat
Ask from a suggestion or the composer and watch the reply stream in, with Stop, Copy and Retry.
- Library
Every conversation, pinned or grouped by when it was last active, with search across titles and messages.
- Voice
Voice mode around the orb: the voices at rest, and live captions and controls during a call.
Built onVoice ModeApp ShellLessons
Details and sheets
What the tabs push and present.
- Conversation
A saved chat pushed from the Library, ready to continue, with pin, rename, share and delete under More.
Built onChat
Profile and settings
The account, preferences, the subscription and sign out.
- Settings
The profile, Nimbus Pro, the assistant, voice, appearance, data controls and sign out.
- Pick An Option
A pushed list of choices for the model, the response style or the voice, with a check on the current one.
Built onSettings
- Memory
What Nimbus remembers about you, with switches, add and delete, and Forget all.
- Theme
Pick Neon, Editorial or Prism and the appearance, previewed on a sample card.
03
Built from the library
The library screens this template wires together, in the order someone meets them. Each one installs on its own too.
Tabs
Chat, Library, Voice and Settings on the App Shell, with model, response style, voice and memory settings.
Voice
A full-screen call with the orb and live captions, opened from the chat toolbar or Settings.
04
What's included
SwiftUI source you own, built on Apple frameworks only.
- Streaming chat with suggestions, and error and retry states
- A full-screen voice call with the orb and live captions
- Settings for model, response style, voice and captions, plus a Memory page
- One place to plug in your model client and realtime voice session
Includes
App Shell, Lessons, Chat, Voice Mode, Settings. Installed together, automatically.
In the Build Kit
AI Assistant (brief). Your agent builds around this template in the same design.
05
Implementation notes
How it behaves, what it handles, and the decisions behind it.
AIAssistantApp is a two-tab app on the App Shell: Chat and Settings. The chat streams replies, offers suggestions on an empty thread and shows error and retry states. A waveform button in the chat toolbar, or Start a voice call in Settings, presents the voice call full screen. A call covers the whole app, tab bar included, and Leave call returns to the thread.
Adapting it
- Model client: the chat streams from a stand-in client. Give
AIChatScreenyour own(String) async throws -> AsyncStream<String>. - Voice: the call is scripted. Drive its status and captions from your realtime session;
VoiceOrbstays on thinking and takes a size and a palette for who holds the turn. - Settings: model, response style, voice, captions and the Memory page live in the Settings section of
AssistantHome. - Theme: set
.environment(\.spTheme, …)onAIAssistantAppto re-skin every themed screen.
Notes
- Not
@main: putAIAssistantApp()in your ownWindowGroup. - The Ask, Research and Agent Task screens pair well with this template when you build your own thread view.
06
Keep building
Pieces that work well next to this one.