How rislan-moh-tm/music-player-dsa works
This Flask music-player application lets a user manage playlists and tracks in a browser, then play and organize the resulting collections. The main flow runs from the web interface through Flask routes to playlist operations, with playlist state persisted as JSON and uploaded audio stored locally. Separate capabilities include playlist administration and song copying, playback tracking and favorites, and sorting, shuffling, and reordering. The README documents these features; sampled source confirms representative route, persistence, upload, and data-structure behavior, but not every route’s wiring.
Main entry points: app.py Flask routes · main.js Player interface · adt.py Playlist operations · index.html Player page
Components 10
Web interface
- Player interface
static/js/main.js - Player page
templates/index.html
Application backend
- Flask routes
app.py - Audio metadata
app.py
Playlist domain
- Playlist operations
adt.py - Song records
adt.py - Doubly linked list
adt.py
Data and media
- Playlist JSON
playlists_data.json - Audio files
static/music
Other components
- Listener
Connections 11
- Listener → Player interface: uses
- Player interface → Player page: renders
- Player interface → Flask routes: requests APIs
- Flask routes → Player page: renders page
- Flask routes → Playlist operations: manages playlists
- Playlist operations → Song records: stores songs
- Playlist operations → Doubly linked list: organizes tracks
- Flask routes → Playlist JSON: loads and saves
- Flask routes → Audio metadata: reads tags
- Flask routes → Audio files: stores uploads
- Player interface → Audio files: plays tracks