Initial commit: Jarvis iOS app
SwiftUI client for a self-hosted RSS news-correlation platform: signal feed, story detail, article reader, feed manager, and LAN⇄Tailscale connectivity. Project generated from project.yml via XcodeGen. Includes CI build matrix (macOS 14/15 × Debug/Release), issue templates, backlog, and API/backend handoff docs. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
35
Jarvis/JarvisApp.swift
Normal file
35
Jarvis/JarvisApp.swift
Normal file
@@ -0,0 +1,35 @@
|
||||
// JarvisApp.swift
|
||||
|
||||
import SwiftUI
|
||||
import SwiftData
|
||||
|
||||
@main
|
||||
struct JarvisApp: App {
|
||||
@StateObject private var settings = ServerSettings.shared
|
||||
@StateObject private var store = StoryStore.shared
|
||||
@StateObject private var ws = WebSocketManager.shared
|
||||
@StateObject private var connectivity = ConnectivitySettings.shared
|
||||
@StateObject private var connManager = ConnectivityManager.shared
|
||||
|
||||
var body: some Scene {
|
||||
WindowGroup {
|
||||
Group {
|
||||
if settings.isConfigured {
|
||||
RootTabView()
|
||||
} else {
|
||||
OnboardingView()
|
||||
}
|
||||
}
|
||||
.environmentObject(settings)
|
||||
.environmentObject(store)
|
||||
.environmentObject(ws)
|
||||
.environmentObject(connectivity)
|
||||
.environmentObject(connManager)
|
||||
.task {
|
||||
connManager.start()
|
||||
await connManager.resolveAndActivate()
|
||||
}
|
||||
}
|
||||
.modelContainer(for: [CachedStory.self, CachedArticle.self])
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user