Files
parenthese/tools/layout-bench
IliesAllaliandClaude Opus 5 0c4cc20c97 Suppression des données par les utilisateurs, CI et auto-hébergement vérifié
Utilisateurs
- Suppression de compte depuis l'écran « Votre compte », confirmée par mot de passe :
  arbres possédés et médias effacés, email retiré des contributions, sessions fermées partout.
- Suppression d'arbre définitive, en base et sur le disque.
- Ajout d'un frère ou d'une sœur relié aux parents existants ; relations parent et enfant
  corrigées en mode démo.
- Liste d'attente retirée (route, envoi d'emails, dépendance Resend).

Projet ouvert
- CI : front, landing, backend avec vérification des migrations, test Docker de bout en bout.
- Déploiement lancé seulement après une CI réussie sur main.
- Image API : CLI Prisma installée à part pour que les migrations tournent au démarrage.
- SECURITY.md, CONTRIBUTING.md, modèles d'issue et de pull request.
- Migration renommée avec un nom descriptif, contenu identique.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-09-14 16:22:26 +02:00
..
2026-09-14 15:49:05 +02:00
2026-09-14 15:49:05 +02:00
2026-09-14 15:49:05 +02:00
2026-09-14 15:49:05 +02:00
2026-09-14 15:49:05 +02:00
2026-09-14 15:49:05 +02:00
2026-09-14 15:49:05 +02:00
2026-09-14 15:49:05 +02:00
2026-09-14 15:49:05 +02:00
2026-09-14 15:49:05 +02:00
2026-09-14 15:49:05 +02:00
2026-09-14 15:49:05 +02:00
2026-09-14 15:49:05 +02:00
2026-09-14 15:49:05 +02:00
2026-09-14 15:49:05 +02:00
2026-09-14 15:49:05 +02:00
2026-09-14 15:49:05 +02:00
2026-09-14 15:49:05 +02:00

layout-bench

Outils de mesure de la galaxie, sur un arbre réel : comparaison des algorithmes de placement, sonde de performance, scénario de bout en bout du parcours compte, audit de la landing.

Installation

npm i

Récupérer un arbre de test

TREE_PASSWORD='...' npm run fixture -- <slug> [nom] récupère un arbre par le chemin visiteur (slug, mot de passe, graphe) dans fixtures/<nom>-graph.json. Le dossier fixtures/ est ignoré par git : ce sont les données d'une famille, elles ne quittent pas votre machine.

Placement

  • npm run bench : tous les modèles, npm run bench -- M0 M5 pour filtrer par nom. FIXTURE=<nom> choisit l'arbre (défaut famille).
  • node crop.mjs m5a <prénom> 3000 1100 0.8 : recadrage autour d'une personne (largeur, hauteur, échelle).
  • Sorties dans out/ : <modèle>.svg/.png/.json et metrics.json.

Chaque modèle de models/ exporte variants: [{ name, layout(graphData) }] et renvoie le format de computeLayout ({ result: { children, edges }, coupleBarMeta }) : un modèle se branche dans Galaxy.jsx sans toucher aux renderers. load.mjs importe le code du dépôt tel quel ; register.mjs ajoute le resolver des imports sans extension (style Vite).

Performance, parcours compte, landing

  • TREE_PASSWORD='...' node perf-probe.mjs <url d'un arbre> : temps main thread par frame au repos, en drag et en zoom, appels canvas par frame, profil CPU. Brave ou Chrome headless piloté en CDP.
  • node e2e-account.mjs <front> <api> : scénario complet sur un backend local (lien partagé, compte créé, rattachement, contributions). CLEANUP=1 supprime l'arbre de test.
  • node landing-check.mjs <url> : titres, liens, formulaires et erreurs JS d'une page, avec capture.