4NK_wallet/docs/ARCHITECTURE.md

26 lines
1.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

## Architecture - 4NK_wallet
## Vue densemble
- Hôte navigateur minimal (HTML + JS) servant denveloppe à lUI `ihm_client`
- Intégration via `iframe` pointant vers les artefacts `ihm_client` (build Vite)
- Pont de messages basé sur `window.postMessage` (parent ↔ iframe)
## Flux
1. La page parent charge `web/index.html` et l`iframe` `web/ihm/index.html`
2. Le parent envoie des messages typés vers liframe via `postMessage`
3. `ihm_client` émet des événements (`LISTENING`, `LINK_ACCEPTED`, etc.) captés côté parent
4. Le parent met à jour lUI (tokens affichés, dernier type reçu) et peut renvoyer des requêtes (`REQUEST_LINK`, `VALIDATE_TOKEN`, `RENEW_TOKEN`)
## Découpage
- `web/index.html` : hôte navigateur (UI de contrôle + iframe)
- `web/bridge.js` : pont parent ↔ iframe (logique `postMessage`)
- `web/ihm/` : artefacts construits de `ihm_client`
## Sécurité
- Respect de lorigine dans `ihm_client` (réponses vers `event.origin`)
- Les tokens ne sont pas persistés par défaut côté parent (affichage éphémère)
## Performances
- Build `ihm_client` optimisé via Vite (artefacts minifiés)
- Faible empreinte du bridge (`web/bridge.js`)