This node covers the Tuist companion app under app/. The app provides a menu bar interface for macOS and an iOS app for managing Tuist projects and previews.
Sources/TuistApp- Main app target (macOS and iOS)Sources/TuistMenuBar- macOS menu bar functionalitySources/TuistPreviews- iOS preview managementSources/TuistOnboarding- iOS onboarding flowSources/TuistProfile- iOS user profileSources/TuistNoora- iOS design system componentsSources/TuistErrorHandling- Shared error handlingSources/TuistAppStorage- Shared storage utilitiesSources/TuistAuthentication- Shared authentication
- Generate the project:
tuist generate --no-open(fromapp/directory) - Build:
xcodebuild build -workspace TuistApp.xcworkspace -scheme TuistApp - Test:
xcodebuild test -workspace TuistApp.xcworkspace -scheme TuistApp
The app depends on several CLI modules:
TuistServer- Server API clientTuistSupport- Shared utilitiesTuistCore- Core domain modelsTuistHTTP- HTTP clientTuistAutomation- Automation utilitiesTuistSimulator- Simulator management
- Follow Swift conventions used in the CLI.
- Use SwiftUI for new UI components.
- Do not add one-line comments unless truly useful.
The app supports multiple environments via TUIST_ENV:
development- Local server at localhost:8080staging- Staging servercanary- Canary server- Default - Production