Files
2026-08-24 08:53:47 +00:00

2.0 KiB

Wycz - Documentation détaillée

Architecture

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

cd backend
npm install
node src/server.js     # Express sur :3004