🏗️ Architecture

Sous le capot de François

57 000+ lignes de code, une stack moderne, et une architecture pensée pour la performance et l'extensibilité.
C'est du solide, comme les paillettes de Claude François !

57K+
Lignes de code
107
Fichiers TypeScript
36
Composants React
35
Modules GPU
14
Stores Zustand
8
Agents Autopilot
5
Agents Observer
30+
Services TypeScript
Stack Technique

Les technologies derrière François

Frontend

⚛️
React 19.2 Framework UI
📘
TypeScript 5.9 Typage statique
Vite 7.2 Build tool & dev server
🎨
Tailwind CSS 3.4 Styling utility-first
🐻
Zustand 5.0 State management (14 stores)
📝
Monaco Editor Éditeur de code (VS Code)
🎬
Framer Motion 11 Animations

Backend / Desktop

🦀
Tauri 2.9 Framework desktop (Rust)
⚙️
Rust 1.77 Logique backend
🔄
Tokio Runtime async
📦
Serde Sérialisation JSON

Plugins Tauri

💻
plugin-shell Exécution de commandes
📁
plugin-fs Accès fichiers
📝
plugin-log Logging côté serveur
🔔
plugin-notification Notifications OS
Vue d'Ensemble

Architecture Globale

Interface Utilisateur
Chat
Thinking
Navigation
Autopilot
React + Zustand
36 Composants
8 Hooks
14 Stores
Monaco Editor
Services Autopilot
Orchestrator
Agent Executor
Claude Client
Backend Rust (Tauri)
Process Manager
File Ops
35 GPU Modules
5 Observer Agents
Sandbox
MCP
OS (macOS / Linux / Windows)
Claude CLI
File System
Shell
Flux de Données

Comment les données circulent

👤

Input Utilisateur

Chat ou Voix

⚛️

React Component

hook useClaude

🐻

Zustand Store

Mise à jour état

📡

Tauri Invoke

start_claude()

🦀

Backend Rust

Spawn processus

🤖

Claude CLI

Stream JSON

📺

Re-render

Affichage réponse

⚡ GPU

Architecture GPU - 35 Modules

Accélération matérielle via Metal API (macOS), CUDA (Linux/Windows), Vulkan (cross-platform). Recherche 8000x plus rapide sur 100K fichiers.

Search & Indexing (12 modules)

  • gpu_grep.rs — Grep parallélisé sur GPU
  • gpu_indexer.rs — Indexation full-text
  • gpu_fuzzy_search.rs — Recherche floue
  • gpu_regex_engine.rs — Moteur regex GPU
  • gpu_tokenizer.rs — Tokenisation parallèle
  • gpu_cache_l1.rs — Cache L1 (GPU VRAM)
  • gpu_cache_l2.rs — Cache L2 (RAM partagée)
  • gpu_cache_l3.rs — Cache L3 (Disk SSD)
  • gpu_invalidation.rs — Invalidation cache
  • gpu_compression.rs — Compression index
  • gpu_dedup.rs — Déduplication
  • gpu_stats.rs — Statistiques temps réel

Parsing & AST (10 modules)

  • gpu_parser.rs — Parser multi-langages
  • gpu_ast_builder.rs — Construction AST
  • gpu_ast_traversal.rs — Parcours AST
  • gpu_semantic_analysis.rs — Analyse sémantique
  • gpu_type_inference.rs — Inférence de types
  • gpu_linter.rs — Linting parallèle
  • gpu_formatter.rs — Formatting code
  • gpu_refactor.rs — Refactoring assisté
  • gpu_symbol_resolver.rs — Résolution symboles
  • gpu_dependency_graph.rs — Graphe dépendances

Compute & Utils (13 modules)

  • gpu_kernel_manager.rs — Gestion kernels
  • gpu_buffer_pool.rs — Pool de buffers
  • gpu_scheduler.rs — Ordonnanceur tâches
  • gpu_pipeline.rs — Pipeline compute
  • gpu_profiler.rs — Profilage GPU
  • gpu_memory_manager.rs — Gestion mémoire
  • gpu_transfer.rs — Transferts CPU↔GPU
  • gpu_sync.rs — Synchronisation
  • gpu_error_handling.rs — Gestion erreurs
  • gpu_fallback.rs — Fallback CPU
  • gpu_benchmark.rs — Benchmarking
  • gpu_metrics.rs — Métriques perf
  • gpu_telemetry.rs — Télémétrie

⚡ Performance GPU

3ms
100K files search
8000x
Speedup vs CPU
12ms
Full indexing
👁️ Observer

François Observer - 5 Agents de Surveillance

Système d'auto-monitoring temps réel. François s'observe lui-même pour garantir stabilité, performance et fiabilité.

Performance Observer

  • Métriques FPS — 60 FPS UI target
  • Latence P50/P95/P99 — Distribution complète
  • Throughput — Tokens/s, ops/s
  • Memory pressure — Détection fuites mémoire
  • Frame drops — Compteur + alertes

Error Observer

  • Catégorisation auto — Critical/High/Medium/Low
  • Stack traces enrichis — Source maps + contexte
  • Deduplication — Groupement erreurs similaires
  • Rate limiting — Anti-spam logs
  • Alertes intelligentes — Seuils adaptatifs

Resource Observer

  • CPU usage — Par core + total
  • RAM usage — Heap + Stack + VRAM
  • GPU usage — Utilisation + température
  • Disk I/O — Read/Write rates
  • Network I/O — Upload/Download

Health Observer

  • Score composite 0-100 — Agrégation pondérée
  • Checks actifs — API health, DB connection...
  • Degraded mode — Détection + fallback
  • Recovery auto — Tentatives de récupération
  • Status dashboard — Vue temps réel

Timeline Observer

  • Buffer circulaire 100K — Événements FIFO
  • Rétention 24h — Archivage automatique
  • Export JSON/CSV — Pour analyse externe
  • Filtrage avancé — Par type, niveau, agent
  • Replay events — Debugging temporel

👁️ Observer en Action

94/100
Health Score
0
Critical Errors
42K
Events (24h)
23%
CPU Usage
Services Autopilot

30+ services spécialisés

Core

  • orchestrator.ts — Cerveau central, FSM
  • agent-executor.ts — Exécution agents + tools
  • claude-client.ts — Interface API/CLI
  • agents.ts — Définitions des 7 agents
  • session-manager.ts — Gestion sessions

Fonctionnel

  • file-operations.ts — CRUD fichiers sécurisé
  • git-operations.ts — Commit, push, branch
  • test-runner.ts — Exécution tests
  • code-analyzer.ts — Analyse statique
  • deployment.ts — Vercel/Netlify/Docker

Support

  • confidence.ts — Score de confiance
  • learning.ts — Apprentissage patterns
  • checkpoints.ts — Sauvegarde/restauration
  • secrets-manager.ts — Chiffrement AES-GCM
  • resilience.ts — Circuit breakers
Patterns

Patterns Architecturaux

🐻

State Management

Zustand avec middleware de persistance localStorage. Simple, performant, sans boilerplate.

🎁

Provider Pattern

ClaudeProvider pour l'écoute d'événements Tauri. Injection de contexte propre.

📦

Service Layer

Séparation stricte logique métier / UI. Les composants restent légers.

📡

Event-Driven

Communication backend-frontend via événements Tauri. Découplage total.

🎭

Multi-Agent Orchestrator

Pattern orchestrateur pour coordination des agents. FSM pour les transitions.

🔄

Circuit Breaker

Protection contre les défaillances en cascade. Retry avec backoff exponentiel.

Event Bus

Communication par Événements

Mission

MISSION_STARTED MISSION_COMPLETED MISSION_TIMEOUT

État

STATE_CHANGED TASK_STARTED TASK_COMPLETED

Agents

AGENT_STARTED AGENT_COMPLETED AGENT_ERROR

Fichiers & Git

FILE_CHANGED GIT_COMMIT GIT_PUSHED

Tests & Review

TESTS_PASSED TESTS_FAILED REVIEW_COMPLETED

Humain

CONFIDENCE_WARNING HUMAN_QUESTION HUMAN_ANSWER
Pourquoi ?

Les choix architecturaux

Pourquoi Tauri plutôt qu'Electron ?

6x moins de RAM, 10x plus léger, démarrage instantané. Rust pour la sécurité et la performance. Pas de compromis.

Pourquoi Zustand plutôt que Redux ?

Zéro boilerplate, API simple, performances natives. Parfait pour une app de cette taille.

Pourquoi une FSM pour l'Autopilot ?

Prévisibilité, debugging facile, recovery automatique. Chaque état a des transitions définies.

Pourquoi des agents spécialisés ?

Meilleure qualité : chaque agent est expert dans son domaine. Parallélisation possible.

🚀 Lancement : 1er Janvier 2026

Envie de contribuer ?

François est open source. Venez construire l'IDE du futur avec nous.
"Cette année-là, le code était beautiful..."