# Utilisation de `ksp-app-config-desk` ## État actuel Le gabarit Rust/Tauri et le frontend Vite/TypeScript/SCSS sont maintenant présents. Les panneaux métier Config restent volontairement absents à ce stade. La fenêtre `splash` est la fenêtre visible au démarrage. La fenêtre `main` est déjà construite et bundlée, mais son lifecycle d'affichage est finalisé dans la tranche splash/shell dédiée afin de ne pas introduire une temporisation codée en dur. ## Première installation des dépendances frontend Depuis : ```text crates/ksp-app-config-desk ``` installer les dépendances déclarées avec la commande de gestion prévue par le projet : ```bash npm i -D ``` Les lockfiles frontend restent ignorés et ne sont pas versionnés. ## Développement normal Le frontend n'est pas lancé directement avec npm. Depuis la crate ou avec le package explicitement sélectionné selon l'environnement Cargo/Tauri, utiliser le cycle Tauri habituel : ```bash cargo tauri dev ``` Tauri exécute alors le hook : ```text npm run dev ``` Vite écoute strictement sur : ```text HTTP : 1430 WS : 1431 ``` Si le port HTTP est déjà occupé, le démarrage doit échouer au lieu de sélectionner silencieusement un autre port. ## Build frontend Le build de l'application passe également par Tauri. `beforeBuildCommand` déclenche : ```text npm run build ``` Vite construit les pages `main.html` et `splash.html` vers : ```text ../../builds/khadhroony-solana-project/ksp-app-config-desk/dist ``` Cette destination est résolue depuis la racine de la crate dans `vite.config.ts` et correspond au `frontendDist` de `tauri.conf.json`. ## Tracing desktop `tauri-plugin-tracing` est enregistré côté Rust et la capability contient `tracing:default`. Le package frontend associé est installé avec le gabarit. Cette tranche n'utilise pas encore le bridge JavaScript pour émettre les logs KSP applicatifs : `frontend_log.ts`, les targets KSP whitelistés et la commande `emit_frontend_log` sont introduits dans la tranche dédiée après initialisation de `ksp-logging-lib`. ## Bindings TS-RS Le layout cible est : ```text frontend/ts/bindings/ksp_app_config_desk/... ``` Les bindings sont générés au premier DTO Tauri réel ; aucune structure factice n'est ajoutée uniquement pour créer le répertoire.