summaryrefslogtreecommitdiffstats
Commit message (Expand)AuthorAgeFilesLines
* fix(cast): put the relay's progress log behind the same switchChristophe Besson13 days2-33/+75
* fix(cast): keep the Chromecast progress log out of the terminalChristophe Besson13 days2-10/+57
* feat(cast): carry subtitles to a Chromecast, on the relay's clockChristophe Besson13 days9-35/+741
* fix(node): size the subtitle budget to the file, and extract each track onceChristophe Besson13 days3-42/+162
* fix(node): measure where a seek lands instead of predicting itChristophe Besson13 days4-95/+135
* fix(node): log a subtitle request before the cache answers itChristophe Besson13 days1-5/+13
* fix(node): a seek reports where the picture begins, not where it was askedChristophe Besson13 days4-4/+276
* feat: tell a forced subtitle track from a full oneChristophe Besson13 days15-29/+116
* fix(hub): sample activeCues, the number that decides whether a subtitle showsChristophe Besson13 days1-0/+27
* fix(hub): trace the subtitle path end to end in the playerChristophe Besson13 days1-2/+24
* fix(node): a subtitle request that is cancelled must still answerChristophe Besson13 days1-4/+24
* docs: install the [dev] extras, not a hand-written listChristophe Besson13 days1-2/+13
* docs(hub): say what the subtitle track's mode effect was measured to doChristophe Besson13 days1-5/+9
* feat: embedded subtitles in the video player (MNP 3.3)Christophe Besson13 days22-12/+1088
* feat(hub): give the audio-language button a glyph of its ownChristophe Besson13 days2-1/+10
* docs(site): the hub's password verifier is 64 MiBChristophe Besson13 days1-1/+1
* fix(hub): the password verifier is Argon2id 64 MiB, and a hash's version name...Christophe Besson13 days6-27/+116
* docs: record the seek label mismatch as openChristophe Besson13 days1-0/+1
* fix(node): a seek left the audio a GOP behind the pictureChristophe Besson14 days4-8/+292
* auth: a sign-out during a renewal must not write half a sessionChristophe Besson14 days3-1/+242
* feat: let the viewer pick the audio trackChristophe Besson14 days22-63/+860
* spa: a blank page can never be silent againChristophe Besson14 days5-2/+621
* playlists: promise the count that holds when nothing compressesChristophe Besson2026-09-165-19/+78
* playlists: refuse a body no frame can carry, and say which oneChristophe Besson2026-09-1615-19/+189
* playlists: drive the blob ops over a real DataChannelChristophe Besson2026-09-163-5/+221
* docs: playlists ยง15 was out of date on where sync livesChristophe Besson2026-09-161-4/+10
* menu: give the panel the room that is actually below itChristophe Besson2026-09-165-23/+215
* menu: do not close on the panel's own scrollingChristophe Besson2026-09-164-6/+318
* playlists: make the writes actually leave the browserChristophe Besson2026-09-1617-15/+633
* music: pool single-album artists into shared rowsChristophe Besson2026-09-164-18/+549
* docs: playlists, corrected against what building it neededChristophe Besson2026-09-162-119/+293
* music: the playlist menusChristophe Besson2026-09-1623-34/+1248
* playlists: the store, and putting it on nodesChristophe Besson2026-09-164-1/+952
* playlists: merge rules, sealing, and the keyChristophe Besson2026-09-167-4/+1340
* mnp 3.1: per-account blobs the node cannot readChristophe Besson2026-09-168-10/+822
* music: play, play next, add to queueChristophe Besson2026-09-1624-97/+1431
* docs: playlists โ€” storage split, queue ops, and the UI designChristophe Besson2026-09-162-290/+831
* fix(hub): the Files listing sorts its folders by the chosen column tooChristophe Besson2026-09-162-11/+123
* feat(hub): drop files and folders onto Files to upload themChristophe Besson2026-09-1517-42/+492
* feat(hub): Videos and Music list their cards a page at a timeChristophe Besson2026-09-1525-82/+428
* fix(node): purge the audit log past its retentionChristophe Besson2026-09-152-2/+61
* fix(ui): a group opened directly lands on the preferred app once preferences ...0.14Christophe Besson2026-09-153-7/+67
* fix(ui): sidebar stays above a phone's address bar and does not scroll the pageChristophe Besson2026-09-153-0/+222
* feat(hub): session lifetime is an admin setting, and a browser signs out when...Christophe Besson2026-09-1528-48/+835
* feat(hub): usernames are at least 8 characters at registrationChristophe Besson2026-09-1541-450/+531
* fix(ui): Search says nothing about groups it leaves outChristophe Besson2026-09-1512-24/+5
* fix(win): a service-mode daemon can be replaced, and the Node page can link oneChristophe Besson2026-09-146-11/+182
* feat: a group can be left out of Search, and Search tries every nodeChristophe Besson2026-09-1427-48/+620
* fix(ui): a signed-in person is never shown the sign-in formChristophe Besson2026-09-142-1/+70
* Update spec contact to devel@meshbay.orgChristophe Besson2026-09-148-8/+8