Add detailed documentation

This commit is contained in:
2026-08-24 08:53:47 +00:00
parent cc5be652b8
commit e14381d82f
+85
View File
@@ -0,0 +1,85 @@
# Wycz - Documentation détaillée
## Architecture
```mermaid
graph TD
subgraph "Frontend (HTML/CSS/JS)"
Public[public/]
Admin[admin.html]
App[app.js]
Model3D[model3d.js]
end
subgraph "Backend (Express ESM)"
Server[server.js]
Auth[src/auth.js]
Config[src/config.js]
end
subgraph "Services"
Scheduler[scheduler.js<br/>Cron jobs]
Fetcher[fetcher.js<br/>Data refresh]
Blizzard[blizzard.js<br/>API Blizzard]
RaiderIO[raiderio.js<br/>Raider.IO API]
Wago[wago.js<br/>Wago API]
ModelViewer[modelviewerProxy.js]
end
subgraph "Base de données"
SQLite[(SQLite<br/>better-sqlite3)]
end
Public --> App
Public --> Admin
Public --> Model3D
App -->|API calls| Server
Admin -->|API calls| Server
Server --> Auth
Server --> SQLite
Scheduler --> Fetcher
Fetcher --> Blizzard
Fetcher --> RaiderIO
Fetcher --> Wago
Model3D --> ModelViewer
```
## Fonctionnalités
### Site Portfolio WoW
- Affichage des personnages et guildes
- Statistiques Raider.IO (scores mythic+)
- Données Blizzard API (armure, achievements)
- Intégration Wago (WeakAuras, addons)
- Visualisation 3D des personnages (modelviewer)
### Administration
- Interface admin sécurisée (mot de passe)
- Gestion des données affichées
- Configuration du scheduler
### Scheduler
- Tâches cron pour rafraîchir les données
- Mise à jour automatique des scores Raider.IO
- Sync avec l'API Blizzard
### Model Viewer Proxy
- Proxy vers les assets 3D de Blizzard
- Rendu 3D des personnages en jeu
## Variables d'environnement
| Variable | Description |
|----------|-------------|
| `PORT` | Port du serveur (3004) |
| `ADMIN_PASSWORD` | Mot de passe admin |
| `SESSION_SECRET` | Secret de session Express |
| `DATA_DIR` | Répertoire de données SQLite |
## Développement
```bash
cd backend
npm install
node src/server.js # Express sur :3004
```