Laurent
ac4e421340
feat: wire smart playlists into UI — search save, bar, context menus, selection
1 month ago
Laurent
e6ae6c5266
feat: add smart_playlists table migration and CRUD methods
1 month ago
Laurent
124a48a07c
feat: add SmartPlaylist model with PlaylistRepresentable conformance
...
Also fixes unit test infrastructure: create shared scheme including
MusicTests, fix TEST_HOST path (Mumu.app), add PRODUCT_MODULE_NAME=Music,
add get-task-allow entitlement, and skip NSOpenPanel in test runs.
1 month ago
Laurent
7024be1cba
feat: add PlaylistRepresentable protocol, conform Playlist
1 month ago
Laurent
87410196af
add icon
1 month ago
Laurent
499558edc2
stuff
1 month ago
Laurent
e2f6d70356
fix dimensions
1 month ago
Laurent
6399eca302
feat: wire ShazamService into app and display results in alerts
1 month ago
Laurent
104fd64631
feat: add Shazam button to SearchBarView
...
Add isShazamListening and onShazam parameters to SearchBarView with a Shazam logo button that displays listening state and provides tactile feedback.
1 month ago
Laurent
3f788a2f81
feat: add ShazamService for music recognition
1 month ago
Laurent
66fb024b51
chore: add network, audio-input entitlements and microphone usage description
1 month ago
Laurent
44854f9868
feat: add track context menu and drag-to-reorder for playlists
1 month ago
Laurent
a0b95681e2
feat: add PlaylistBarView, FlowLayout, breadcrumb, and New Playlist menu
...
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
1 month ago
Laurent
8f4e330c92
feat: wire PlaylistViewModel into app and content view
1 month ago
Laurent
5b8cdf603c
feat: add PlaylistViewModel with reactive playlist observation
1 month ago
Laurent
1cf5353339
feat: add playlist database migration and CRUD methods
1 month ago
Laurent
41754b1f56
feat: add Playlist and PlaylistTrack models
1 month ago
Laurent
0a8ad2aa91
feat: assemble UI with search bar, track table, player controls, folder picker, and drag-and-drop
1 month ago
Laurent
c374cfa9eb
feat: add TrackTableView with NSTableView for high-performance track list
1 month ago
Laurent
c5b468103a
feat: add LibraryViewModel with reactive queries, debounced search, and column sorting
1 month ago
Laurent
d61ccda111
feat: add PlayerViewModel with queue management, shuffle, and play tracking
1 month ago
Laurent
9c934235d6
feat: add AudioService with AVPlayer playback, seeking, and volume control
1 month ago
Laurent
49693e95b4
feat: add ScannerService with file discovery, metadata extraction, and batch import
1 month ago
Laurent
e0e03daf3f
feat: add DatabaseService with schema, FTS5 search, and query methods
1 month ago
Laurent
a8978f7eae
feat: add Track model with GRDB record conformance and tests
...
Introduces the core Track struct (nonisolated to work with project-wide
MainActor default isolation), its FetchableRecord/MutablePersistableRecord
conformances, a DEBUG fixture helper, and three Swift Testing tests covering
round-trip persistence, ID assignment on insert, and deterministic hash computation.
1 month ago
Laurent
1aac6823fa
chore: track docs/superpowers specs and plans, fix gitignore
1 month ago
Laurent
10e147b447
chore: initialize project with GRDB dependency and directory structure
1 month ago