1.2 KiB
1.2 KiB
Blastoise iOS Sketch
Native SwiftUI sketch for the Blastoise/MusicRoom server.
What It Does
- Defaults to
http://mhsgroove.peterino.com:3001. - Signs in or signs up with the server.
- Loads rooms, queue state, people, library, and playlists.
- Connects to a room WebSocket and streams
/api/tracks/:idthroughAVPlayer. - Applies server timestamp sync and drift correction.
- Supports local library playback, queue/play-next actions, queue jumps/removes, and playback mode cycling.
- Uses one compact broadcast-console theme.
Code Layout
BlastoisePingApp.swift- app entrypoint.ContentView.swift- signed-in/signed-out shell and tab routing.Models/AppTypes.swift- API response models and shared enums.State/AppModel.swift- app state, server requests, WebSocket sync, uploads, and playback coordination.UI/Theme.swift- pixel-art palette, typography, reusable view chrome, and time formatting.Views/- focused SwiftUI screens and reusable row/panel components.
Open
open ios/BlastoisePing/BlastoisePing.xcodeproj
The app currently allows arbitrary HTTP loads in Info.plist so it can reach the existing plain-HTTP test server and local development servers. Narrow that before any public distribution.