mirror of
https://github.com/multica-ai/multica.git
synced 2026-07-06 22:09:44 +02:00
SwiftUI app (iOS 17+) with zero third-party dependencies: - Passwordless email authentication with Keychain token storage - Workspace selection and multi-workspace support - Issue list grouped by status with search and filtering - Issue detail with inline status/priority/assignee editing - Comments with threaded display and compose - Agent task runs history and real-time execution log streaming - WebSocket integration for live updates
Multica iOS App
MVP iOS client for the Multica platform — issue management with AI agent execution log viewing.
Requirements
- Xcode 16+
- iOS 17.0+
- XcodeGen (for generating the Xcode project)
Setup
# Install XcodeGen if you don't have it
brew install xcodegen
# Generate Xcode project
cd apps/ios
xcodegen generate
# Open in Xcode
open Multica.xcodeproj
Configuration
By default, the app connects to http://localhost:8080 in debug builds. To change the API URL, edit Multica/Services/APIClient.swift.
Features
- Authentication — Passwordless email login (send code → verify)
- Workspace selection — Pick from your workspaces
- Issue list — Grouped by status, searchable, with status filtering
- Issue detail — View/edit title, status, priority, and assignee
- Comments — View and add comments with threaded display
- Agent task runs — View all historical agent executions for an issue
- Execution logs — Real-time streaming of agent tool use, thinking, and output
- Real-time sync — WebSocket connection for live updates
Architecture
- SwiftUI with
@Observable(iOS 17+) - MVVM — ViewModels use
@Observablemacro - URLSession for HTTP networking
- URLSessionWebSocketTask for real-time
- Keychain for secure token storage
- No third-party dependencies
Structure
Multica/
├── MulticaApp.swift # App entry point
├── Models/ # Codable data models
├── Services/ # API client, WebSocket, Keychain
├── ViewModels/ # @Observable view models
└── Views/
├── Auth/ # Login + code verification
├── Workspace/ # Workspace picker
├── Issues/ # List, detail, create
├── Comments/ # Comment list + input
├── Tasks/ # Agent runs + execution logs
└── Components/ # Shared UI (badges, icons, avatars)