summaryrefslogtreecommitdiffstats
path: root/docs/QUICKSTART.md
diff options
context:
space:
mode:
authorChristophe Besson <cbesson@gmail.com>2026-09-01 14:08:32 +0200
committerChristophe Besson <cbesson@gmail.com>2026-09-01 14:08:32 +0200
commitcfc91e0a424163869c64d30e55d55a53f18a3dbf (patch)
tree04ed3bbec11690f62f1e2a738bf89f4b763332e5 /docs/QUICKSTART.md
parentba45a3c94806f612fa62812e0b36d08b581a2e47 (diff)
downloadmeshbay-cfc91e0a424163869c64d30e55d55a53f18a3dbf.tar.gz
refactor(node): JSON-only control API, Node page absorbs the admin dashboard
Remove the node daemon's server-rendered admin UI (GET / and /audit, the _render_* helpers and inline templates) and the `meshbay-node ui` CLI verb. The loopback control API stays; it is now JSON only, ruff-clean, and 453 lines (was 1074). Also drop three never-wired endpoints (/api/config, /api/chat/history, /ws/chat, plus broadcast_chat) and the pointless 18000/tcp firewall profiles. The desktop client's Node page (static/node-page.js) takes over what the dashboard showed, reorganised into six tabs (Overview, Groups, Roster, Peers, Audit, Settings): - Overview: version, node id, QUIC port, hub, index-cache maintenance - Roster: node-wide view with unpin - Peers and Audit: auto-load on open, no Load button - Audit: real usernames and group names (resolved from the roster and node.toml), Previous/Next pagination newest-first, Export CSV of every matching row - Settings: node settings, STUN, ICE, denylist, then Unlink from hub Backend: audit.get_entries gains `offset`; /api/audit and /api/peers resolve ids to names via a new _display_names helper; CSP tightened to default-src 'none' now that no HTML is served. draft-v6 sections 2.11 and 2.12 corrected -- the Node page uses the loopback API, not MNP. One capability is intentionally dropped: browser-based admin on a headless server. The CLI covers every operation there. See docs/refactor-node-ui.md. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01MQCaZnde4Bjjdu84dhSuF5
Diffstat (limited to 'docs/QUICKSTART.md')
-rw-r--r--docs/QUICKSTART.md7
1 files changed, 4 insertions, 3 deletions
diff --git a/docs/QUICKSTART.md b/docs/QUICKSTART.md
index 2d59f1f..f9ab79b 100644
--- a/docs/QUICKSTART.md
+++ b/docs/QUICKSTART.md
@@ -36,7 +36,7 @@ Les dépendances déclarées dans les `pyproject.toml` sont installées automati
| `cryptography` | meshbay-common | crypto (Ed25519, ChaCha20, Argon2id) |
| `PyJWT` | meshbay-common | JWT EdDSA |
| `blake3`, `msgpack`, `zstandard` | meshbay-common | hashing, sérialisation, compression |
-| `fastapi`, `uvicorn` | meshbay-node | HTTP API + UI locale |
+| `fastapi`, `uvicorn` | meshbay-node | API de contrôle loopback |
| `httpx` | meshbay-node | client hub |
| `watchdog` | meshbay-node | surveillance répertoire |
| `aioquic` | meshbay-node | transport QUIC (MNP v2) |
@@ -107,7 +107,7 @@ Fichiers disponibles :
1 fichier(s) indexé(s)
✓ Node actif — MNP sur le port 19001
- Admin UI : meshbay-node ui (boucle locale, jeton requis)
+ Contrôle : meshbay-node status (API loopback, jeton requis)
CTRL+C pour arrêter.
```
@@ -122,7 +122,8 @@ meshbay-node status
> `/file/{id}` ont été supprimés en 0.2.0 (findings C1 et C6) : ils servaient l'index
> et les fichiers en dehors du handshake qui décide de ce qu'un pair a le droit de
> voir. Le port 19001 est le listener MNP, pas un serveur web. La seule surface HTTP
-> est l'UI d'administration, sur la boucle locale et protégée par un jeton.
+> est l'API de contrôle JSON sur la boucle locale, protégée par un jeton — utilisée
+> par le CLI et la page Node du client desktop.
**Ajouter vos propres fichiers :**
```bash