| Commit message (Expand) | Author | Age | Files | Lines |
| * | refactor(spa): stop asking a node what version it is | Christophe Besson | 2026-09-10 | 1 | -23/+5 |
| * | feat(hub): pin the app controls while a library scrolls | Christophe Besson | 2026-09-10 | 1 | -0/+8 |
| * | feat(hub): collapse "Your devices on this node" by default | Christophe Besson | 2026-09-08 | 1 | -3/+8 |
| * | feat(client): HelloWorld, the reference application | Christophe Besson | 2026-09-07 | 1 | -2/+7 |
| * | fix(client): report a directory result under the button that caused it | Christophe Besson | 2026-09-07 | 1 | -9/+23 |
| * | fix: a root change reaches every client without a page reload | Christophe Besson | 2026-09-06 | 1 | -6/+18 |
| * | fix(node): `root list` printed "?" for every path | Christophe Besson | 2026-09-06 | 1 | -5/+11 |
| * | fix(client): degrade against a node still speaking MNP 1.0 | Christophe Besson | 2026-09-06 | 1 | -3/+21 |
| * | feat(client): Phase 2 — per-app settings panes, folder tree, multi-directory | Christophe Besson | 2026-09-06 | 1 | -547/+61 |
| * | fix(groups): finish Phase 1 — MNP root management, upload targets, eject state | Christophe Besson | 2026-09-06 | 1 | -142/+251 |
| * | feat: groups refactor Phase 1 — root RO/RW model + shared directories UI | Christophe Besson | 2026-09-06 | 1 | -173/+276 |
| * | feat: email verification for registration, email change, and invitations | Christophe Besson | 2026-08-31 | 1 | -1/+19 |
| * | feat: node workflow redesign — wizard auto-config, reset, MusicBrainz contact | Christophe Besson | 2026-08-29 | 1 | -57/+1 |
| * | feat(hub): group names unique per owner, shown as name@owner | Christophe Besson | 2026-08-28 | 1 | -2/+6 |
| * | feat: add Photos group app | Christophe Besson | 2026-08-25 | 1 | -2/+112 |
| * | fix(hub): poll for a root count change instead of trusting one fetch | Christophe Besson | 2026-08-25 | 1 | -2/+34 |
| * | fix(hub): make root-folder save success/failure actually visible | Christophe Besson | 2026-08-24 | 1 | -9/+10 |
| * | fix(hub): refresh directory list after adding/removing a shared root | Christophe Besson | 2026-08-24 | 1 | -1/+12 |
| * | feat(hub): audio_root wiring, mutually-exclusive players, Settings rework | Christophe Besson | 2026-08-24 | 1 | -88/+199 |
| * | feat(hub): Music app client — album grid, flat list, persistent player | Christophe Besson | 2026-08-24 | 1 | -0/+106 |
| * | fix(node,hub): HEVC transcode fallback, live-add progress, per-group TMDB toggle | Christophe Besson | 2026-08-24 | 1 | -20/+51 |
| * | feat(node,hub): season-specific overviews, manual TMDB match correction, and ... | Christophe Besson | 2026-08-24 | 1 | -1/+19 |
| * | feat(node,hub): add Videos group app (poster grid, flat list, TMDB metadata) | Christophe Besson | 2026-08-24 | 1 | -2/+209 |
| * | feat(node): persistent index cache, visible scan progress, adaptive reconcile... | Christophe Besson | 2026-08-23 | 1 | -1/+110 |
| * | feat(hub): split the group UI into a pluggable "applications" architecture | Christophe Besson | 2026-08-23 | 1 | -0/+635 |