|
|
3a576f0018
|
feat(app): live server-side search with 300ms debounce and error state
|
2026-04-08 03:44:10 +02:00 |
|
|
|
65dd30df46
|
feat(app): add layout shell with bottom nav and Toaster
|
2026-04-08 03:42:13 +02:00 |
|
|
|
5390fe39e6
|
feat(app): wire frontend to real API, remove mock data and sessionStorage
|
2026-04-08 03:09:12 +02:00 |
|
|
|
852b1a8d0e
|
fix(app): wrap long chord/lyric lines at word boundaries for mobile
|
2026-04-08 02:47:17 +02:00 |
|
|
|
3bc7ad4c7c
|
fix: support raw HTML upload via FileReader, fix file import flow
|
2026-04-08 02:43:27 +02:00 |
|
|
|
90833c5b93
|
fix(app): meta null guard, deduplicate previewChords, env API URL, always show add card
|
2026-04-08 02:36:09 +02:00 |
|
|
|
9b68069151
|
feat(app): add song detail page with chord chart and transposition
|
2026-04-08 02:32:50 +02:00 |
|
|
|
3d18bb9e77
|
feat(app): add library page with song grid and search
|
2026-04-08 02:31:44 +02:00 |
|
|
|
cdb9c59d37
|
feat(app): add AddSongSheet component
|
2026-04-08 02:30:57 +02:00 |
|
|
|
8ca80c38f1
|
feat(app): add TransposeBar collapsible header
|
2026-04-08 02:29:48 +02:00 |
|
|
|
3844cc2296
|
feat(app): add ChordChart component with monospaced rendering
|
2026-04-08 02:29:10 +02:00 |
|
|
|
a6bec147d6
|
feat(app): add SongCard component
|
2026-04-08 02:28:39 +02:00 |
|
|
|
16fd6ba9ad
|
feat(app): add types, mock data, and transpose utility
|
2026-04-08 02:27:13 +02:00 |
|
|
|
eeb1ea9615
|
feat(app): install shadcn button, input, card, badge, sheet, tooltip
|
2026-04-08 02:25:13 +02:00 |
|