🖥️

Dashboard web

Le dashboard web est une alternative complète aux slash commands pour configurer le bot. Tout ce qui se fait via /welcome, /automod, /levels, /tickets etc. peut se faire en quelques clics dans le navigateur.

Connexion

  1. Ouvre https://<dashboard>/
  2. Clique sur Se connecter avec Discord
  3. Autorise les scopes identify et guilds (le dashboard a besoin de savoir sur quels serveurs tu es admin)
  4. Sélectionne le serveur dans la liste

Seuls les serveurs où tu as la permission Manage Server apparaissent dans le sélecteur.

Pages disponibles

Vue d'ensemble (/servers/<guildId>)

  • Toggles d'activation/désactivation des modules (équivalent /config module)
  • Salon du classement hebdomadaire
  • Lien vers la page Premium

Analytics (/servers/<guildId>/analytics)

  • Heatmap d'activité (jour × heure)
  • Sparkline messages/jour et vocal/jour
  • Top users avec drill-down vers leur profil

Daily blindtest (/servers/<guildId>/daily)

  • Catégorie du jour
  • Top du jour pour ce serveur
  • Catégorie de demain (preview)

Stats blindtest (/servers/<guildId>/blindtest-stats)

  • Sessions jouées, parties par catégorie, top scoreurs

Welcome (/servers/<guildId>/welcome)

  • Salon, template, image, auto-rôle
  • Live preview côté canvas si tu uses le welcome card Premium
  • Upload de background custom (Premium)

Niveaux (/servers/<guildId>/levels)

  • Liste des paliers
  • Ajout/suppression de paliers
  • Salon d'annonces de level-up
  • Activation des annonces

Carte de rang (/servers/<guildId>/rank-card) — Premium

  • Upload du background custom de la carte de rang

Anniversaires (/servers/<guildId>/birthdays)

  • Calendrier mensuel
  • Salon d'annonces
  • Template du message

Modération (/servers/<guildId>/moderation)

  • Application directe d'actions (warn/mute/kick/ban/unmute/unban) depuis le dashboard
  • Validation hiérarchie en backend

Modlog (/servers/<guildId>/modlog)

  • Salon d'audit
  • Affichage des dernières actions du serveur

Automod (/servers/<guildId>/automod)

  • Cards par règle (spam, mentions, invites, caps, flood)
  • Modification du seuil, fenêtre, action, durée

Tickets (/servers/<guildId>/tickets)

  • Catégorie cible, rôle staff, salon de log
  • Message d'accueil templated

Reaction-roles (/servers/<guildId>/reactionroles)

  • Création de panel
  • Édition des boutons (label, emoji, rôle)
  • Refresh du message Discord auto

Sondages (/servers/<guildId>/polls)

  • Sondages actifs, résultats live
  • Clôture manuelle

Suggestions (/servers/<guildId>/suggestions)

  • Configuration du salon
  • Liste des suggestions, statut, votes

Custom commands (/servers/<guildId>/custom-cmds)

  • Liste des commandes
  • Ajout/édition/suppression
  • Préfixe configurable

Premium (/servers/<guildId>/premium)

  • Tier actuel
  • Avantages débloqués
  • Bouton d'achat (si SKUs configurés)

Profil membre (/servers/<guildId>/members/<userId>)

  • XP, niveau, streak, voice time
  • Timeline d'activité
  • Quick mod panel : warn/mute/kick/ban inline

Owner only

L'owner du bot (défini par OWNER_ID côté env) accède à /owner :

  • Liste de toutes les guildes où le bot est présent
  • Drill-down par guild (stats, configuration, premium override)

Sécurité

  • Auth via NextAuth + Discord OAuth2 (JWT signé, pas de session côté serveur)
  • Les actions sensibles (modération, clôture poll) passent par une API HTTP interne du bot, protégée par token partagé
  • Aucun token Discord n'est exposé côté browser
  • Voir privacy policy pour le détail du stockage