aboutsummaryrefslogtreecommitdiffstats
path: root/packages/meshbay-hub/src/meshbay_hub/api
Commit message (Expand)AuthorAgeFilesLines
* feat(protocol): bind the MNP token to the node it is for (E10)Christophe Besson43 hours1-5/+19
* feat(protocol): MNP 4.0 flag day for the node-audience token (B2)Christophe Besson2 days1-2/+7
* fix(hub): present a node-audience token in the handshake, not the hub session...Christophe Besson2 days1-2/+27
* fix(hub): require the passphrase to change the e-mail on fileChristophe Besson2 days1-0/+24
* fix(hub): make group revoke admin-only and route it through the broadcasting ...Christophe Besson2 days1-0/+42
* fix(hub): refuse node-scoped tokens on the admin and moderator APIChristophe Besson2 days1-5/+33
* feat: invitation links no longer bound to an e-mail addressChristophe Besson2 days1-26/+23
* feat(hub): friendlier welcome page, link previews, robots.txt and faviconChristophe Besson2 days1-3/+40
* refactor(client): split transport.js into classic scriptsChristophe Besson2 days1-0/+9
* fix(hub): offer ceilings that bound a member without failing an ordinary oneChristophe Besson4 days1-3/+61
* fix(hub): a redeemed invitation link leaves the owner's listChristophe Besson4 days1-10/+17
* feat(hub): invitation-link tickets bound to a verified addressChristophe Besson4 days2-0/+341
* feat(hub): make mailing an invitation a remembered choiceChristophe Besson4 days1-0/+3
* style: the 98 ruff could not fix, so the linter is a signal againChristophe Besson8 days4-6/+15
* style: ruff's own fixes, mechanically appliedChristophe Besson8 days11-61/+71
* fix: the two ceilings §13.5b was still missing, as AV27 and AV28Christophe Besson8 days1-1/+32
* docs: cite MESHBAY_DESIGN.md and a section instead of the merged notesChristophe Besson9 days1-3/+3
* fix(hub): the password verifier is Argon2id 64 MiB, and a hash's version name...Christophe Besson10 days1-2/+2
* spa: a blank page can never be silent againChristophe Besson11 days1-0/+4
* feat(hub): Videos and Music list their cards a page at a timeChristophe Besson12 days1-0/+1
* feat(hub): session lifetime is an admin setting, and a browser signs out when...Christophe Besson13 days3-6/+120
* feat(hub): usernames are at least 8 characters at registrationChristophe Besson13 days1-2/+8
* fix(hub): Argon2 runs off the event loop, on exactly one workerChristophe Besson14 days1-12/+12
* fix(hub): a per-account sign-in lockout, and a reviewed unauthenticated surfaceChristophe Besson14 days4-25/+123
* fix(hub): federation is closed until two hubs have run itChristophe Besson14 days2-1/+55
* fix(hub): a node that hosts nothing is not a free target, and a private group...Christophe Besson14 days2-27/+56
* fix: hold every background task, in both codebasesChristophe Besson2026-09-131-1/+2
* feat(hub): the mail bounds are settings, with a panel to change themChristophe Besson2026-09-121-4/+55
* fix(hub): the mail allowance is written down, and recovery keeps a shareChristophe Besson2026-09-122-55/+48
* fix(hub): bound the blocklist reads a stranger can makeChristophe Besson2026-09-121-3/+16
* fix(hub): MHP binds its audience, and the hub knows its own nameChristophe Besson2026-09-121-14/+34
* fix(hub): the mail server is not a relayChristophe Besson2026-09-121-3/+48
* fix(hub): no mail from the event loop, and a ceiling on every path that sends itChristophe Besson2026-09-123-16/+101
* fix: bound what one member can cost the othersChristophe Besson2026-09-124-20/+199
* fix: an empty group claim is a claim on nothingChristophe Besson2026-09-121-3/+42
* fix(hub): an administrator can erase an account that owns groupsChristophe Besson2026-09-113-18/+53
* fix(hub): the asset fingerprint covers every file under static/Christophe Besson2026-09-111-38/+14
* fix(hub): account deletion left device keys and swarm sources behindChristophe Besson2026-09-111-2/+11
* feat(hub): pin the app controls while a library scrollsChristophe Besson2026-09-101-2/+10
* fix: the PDF preview needs object-src and frame-src, in both policiesChristophe Besson2026-09-091-4/+28
* feat: MNP 3.0 — a transfer needs a leaseChristophe Besson2026-09-091-2/+15
* fix(hub): let this origin frame its own download URLChristophe Besson2026-09-081-2/+24
* feat(client): HelloWorld, the reference applicationChristophe Besson2026-09-071-0/+4
* feat(client): Phase 2 — per-app settings panes, folder tree, multi-directoryChristophe Besson2026-09-061-0/+8
* fix(hub): stop the maintenance loop racing the tests, and pin _ASSETSChristophe Besson2026-09-021-0/+1
* fix(hub): dismissing a notification deletes itChristophe Besson2026-09-021-12/+49
* fix(hub): a desktop solve reports no hostname at all, not "meshbay"Christophe Besson2026-09-021-0/+1
* fix(hub): check the captcha's origin here, so the desktop client can pass oneChristophe Besson2026-09-021-0/+1
* revert(hub): M6 — add_group_member must keep accepting node tokensChristophe Besson2026-09-011-6/+8
* fix(hub): send a CSP and protective headers on every responseChristophe Besson2026-09-011-2/+29