How zxcloli666/soundcloud-desktop works
SoundCloud Desktop is a native Tauri/React music client. The main user journey is navigating the app, finding or selecting music, and playing it; the repository also includes library, offline, lyrics, subscription, and desktop-integration features. The sampled frontend shows app routing and search composition, and the sampled Rust audio code shows track loading and playback construction. Many feature modules are represented from the tree and README, so their internal call wiring is intentionally not inferred.
Main entry points: pages Feature pages · App.tsx App and routes · engine.rs Audio engine · music Player controls
Components 20
App experience
- App and routes
desktop/src/App.tsx - Feature pages
desktop/src/pages - App shell
desktop/src/components/layout/AppShell.tsx
Music discovery
- Search wall
desktop/src/components/search/useSearchWall.ts - Discover catalog
desktop/src/components/discover - Home feed
desktop/src/components/home - Library and playlists
desktop/src/components/library - Artist and album
desktop/src/components/artist - Track details
desktop/src/components/track
Playback and offline
- Player controls
desktop/src/components/music - Lyrics and comments
desktop/src/components/music/lyrics - Offline library
desktop/src/components/offline
Native runtime
- Audio engine
desktop/src-tauri/src/audio/engine.rs - Track cache
desktop/src-tauri/src/track_cache - App settings
desktop/src/stores/settings.ts - Persistent storage
desktop/src/lib/tauri-storage.ts
Account and integrations
- Star subscription
desktop/src/components/subscription - Authentication
desktop/src/components/auth - Desktop services
desktop/src-tauri/src/app
Other components
- Listener
Connections 18
- Listener → App and routes: opens
- App and routes → Feature pages: routes to
- App and routes → App shell: renders
- Feature pages → Search wall: search feature
- Feature pages → Discover catalog: discovery feature
- Feature pages → Home feed: home feed
- Feature pages → Library and playlists: library feature
- Feature pages → Artist and album: catalog details
- Feature pages → Track details: track details
- Search wall → Feature pages: navigates results
- Player controls → Audio engine: playback commands
- Offline library → Track cache: offline files
- Audio engine → Track cache: loads cached tracks
- App settings → Persistent storage: persists state
- Feature pages → Star subscription: subscription feature
- Feature pages → Authentication: login feature
- Player controls → Lyrics and comments: lyrics feature
- Audio engine → Desktop services: media controls