How shithawk/waynemusic works
Wayne’s Music is an iPad music library and player: users import local audio or add YouTube/SoundCloud links, then browse and play tracks. A share extension can hand supported links to the app. The graph also preserves the web app files visible in the tree, but their behavior and connections were not sampled. Edges reflect calls or references in the excerpts and SOURCE INDEX; unsampled implementation details are omitted.
Main entry points: LibraryStore.swift Library store · NowPlayingView.swift Now playing UI · PlaybackController.swift Playback controller · WayneMusicApp.swift App bootstrap
Components 21
App Entry
- App bootstrap
WayneMusic/App/WayneMusicApp.swift - Root navigation
WayneMusic/Views/RootView.swift - Speaker guidance
WayneMusic/Views/SpeakersButton.swift - Visual theme
WayneMusic/Views/Theme.swift
Music Library
- Song library UI
WayneMusic/Views/LibraryView.swift - Add music UI
WayneMusic/Views/AddTrackSheet.swift - Library store
WayneMusic/Library/LibraryStore.swift - Track model
WayneMusic/Models/Track.swift - Link parser
Shared/LinkParser.swift
Playback
- Now playing UI
WayneMusic/Views/NowPlayingView.swift - Playback controller
WayneMusic/Player/PlaybackController.swift - Queue navigation
WayneMusic/Player/Playlist.swift - YouTube player
WayneMusic/Player/YouTubePlayerView.swift - SoundCloud player
WayneMusic/Player/SoundCloudPlayerView.swift - Web player setup
WayneMusic/Player/WebPlayerFactory.swift
Link Sharing
- Shared link handoff
Shared/AppGroup.swift - Share extension
ShareExtension/ShareViewController.swift
Other components
- Listener
- YouTube
- SoundCloud
- Web app
web/app.js
Connections 28
- Listener → App bootstrap: opens
- App bootstrap → Library store: creates
WayneMusic/App/WayneMusicApp.swift - App bootstrap → Playback controller: creates
WayneMusic/App/WayneMusicApp.swift - App bootstrap → Root navigation: shows
WayneMusic/App/WayneMusicApp.swift - Root navigation → Now playing UI: shows
WayneMusic/Views/RootView.swift - Song library UI → Library store: reads
WayneMusic/Views/LibraryView.swift - Song library UI → Playback controller: queues tracks
WayneMusic/Views/LibraryView.swift - Song library UI → Add music UI: presents
WayneMusic/Views/LibraryView.swift - Add music UI → Library store: imports audio
WayneMusic/Views/AddTrackSheet.swift - Library store → Link parser: parses links
WayneMusic/Library/LibraryStore.swift - Library store → Shared link handoff: reads pending link
WayneMusic/Library/LibraryStore.swift - Library store → Track model: stores tracks
WayneMusic/Library/LibraryStore.swift - Share extension → Link parser: validates link
ShareExtension/ShareViewController.swift - Share extension → Shared link handoff: saves pending link
ShareExtension/ShareViewController.swift - Listener → Share extension: shares link
- Now playing UI → Playback controller: controls playback
WayneMusic/Views/NowPlayingView.swift - Now playing UI → YouTube player: renders
WayneMusic/Views/NowPlayingView.swift - Now playing UI → SoundCloud player: renders
WayneMusic/Views/NowPlayingView.swift - Now playing UI → Library store: loads artwork
WayneMusic/Views/NowPlayingView.swift - Now playing UI → Speaker guidance: shows guidance
WayneMusic/Views/NowPlayingView.swift - Playback controller → Queue navigation: selects adjacent track
WayneMusic/Player/PlaybackController.swift - Playback controller → Track model: plays track
WayneMusic/Player/PlaybackController.swift - YouTube player → Web player setup: creates web view
WayneMusic/Player/YouTubePlayerView.swift - SoundCloud player → Web player setup: creates web view
WayneMusic/Player/SoundCloudPlayerView.swift - SoundCloud player → Playback controller: reports playback
WayneMusic/Player/SoundCloudPlayerView.swift - YouTube player → YouTube: loads media
- SoundCloud player → SoundCloud: loads media
WayneMusic/Player/SoundCloudPlayerView.swift - Listener → Web app: uses