add-new-screen

Add SwiftUI screens to VivaDicta with NavigationStack and AppState.

103|6|Updated Aug 2, 2025
One-click install
npx skills add https://github.com/n0an/VivaDicta --skill add-new-screen
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: add-new-screen
Source: https://github.com/n0an/VivaDicta/tree/main/.claude/skills/add-new-screen
Command: npx skills add https://github.com/n0an/VivaDicta --skill add-new-screen

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This skill guides iOS developers to add a new screen to the VivaDicta app with correct navigation patterns and architecture.

Core Features & Use Cases

  • Scaffold a new SwiftUI view in VivaDicta/Views following the project's conventions, including environment access to AppState and Router where needed.
  • Support three common screen types: Settings sub-screen, detail screen from the transcription list, and modal/sheet screens, with appropriate navigation integration.
  • Real-world use: create a user profile screen under Settings or a TranscriptionDetailView to display item details, then wire into MainView navigation.

Quick Start

Create a new screen by following the provided pattern and reference in SettingsView for navigation and architecture.

Frequently Asked Questions about add-new-screen

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I add a new SwiftUI screen with proper navigation in an MVVM project?

To add a new SwiftUI screen with proper navigation, scaffold a view under your project's Views directory, integrate Environment(AppState) for state management, and use NavigationStack to wire the screen into the main navigation flow.

What's the best way to implement navigation for different screen types in SwiftUI?

Implementing navigation for different SwiftUI screen types requires a multi-path flow strategy. You can route users through Settings sub-screens, push detail screens from a list, or present modal sheets using NavigationStack and project-specific router conventions.

How does Environment(AppState) work when creating a new screen in SwiftUI?

Environment(AppState) provides shared state access when creating a new SwiftUI screen. Injecting AppState into your view environment ensures the new screen observes and reacts to global state changes following the project's MVVM architecture.

Can I use NavigationStack to wire both modal and detail screens in SwiftUI?

Yes, you can use NavigationStack to wire both modal and detail screens in SwiftUI. NavigationStack manages hierarchical navigation for detail screens, while modal flows can be presented independently within the same architectural pattern.

When do I need to create a separate view file under the Views directory in a SwiftUI app?

You need to create a separate view file under the Views directory in a SwiftUI app whenever adding a distinct screen like a Settings sub-screen or a detail view. This maintains project organization and adheres to MVVM file structure conventions.

Why does my new SwiftUI screen not follow the project's existing file organization?

A new SwiftUI screen might not follow file organization if it is placed outside the designated Views directory. Adhering to project conventions by placing files under VivaDicta/Views ensures proper navigation integration and architectural consistency.