Aller au contenu principal

Installation

Installer le paquet​

npm install @fca.gg/glyph

Préparer le projet​

npx glyph setup

Cette commande :

  • crée le dossier emojis/ ;
  • propose de générer un fichier glyph.config.js avec la configuration par défaut ;
  • ajoute emojis/list.json au .gitignore ;
  • ajoute emojis/emojis.d.ts au include de votre tsconfig.json.

Configurer​

Glyph lit sa configuration dans glyph.config.js à la racine du projet :

glyph.config.js
import dotenv from 'dotenv';
dotenv.config();

const config = {
emojisDir: './emojis', // dossier des images
fileIndex: true, // génère list.json et emojis.d.ts
botToken: process.env.TOKEN, // jeton du bot Discord
apiBaseUrl: process.env.DISCORD_API, // racine de l'API (non définie : Discord)
};

export default config;
  • emojisDir (défaut : './emojis') : dossier des images d'emojis.
  • fileIndex (défaut : true) : génère les fichiers d'index list.json et emojis.d.ts.
  • botToken : jeton du bot. Sans jeton, glyph build ne peut que mettre à jour les types.
  • apiBaseUrl (défaut : https://discord.com/api/v10) : racine de l'API Discord.

Une option laissée à undefined (ou vide) garde sa valeur par défaut au lieu de l'effacer : une variable d'environnement absente donne Discord, pas une URL cassée.

Sans fichier de configuration​

Sans glyph.config.js, Glyph lit ces variables d'environnement :

  • TOKEN : jeton du bot ;
  • EMOJIS_DIR : dossier des emojis ;
  • DISCORD_API : racine de l'API.
info

Dès que glyph.config.js existe, ces variables ne sont plus lues automatiquement. Le fichier étant du JavaScript, il peut les reprendre lui-même, comme dans l'exemple ci-dessus.

Gardez le jeton hors du dépôt, par exemple dans un fichier .env :

.env
TOKEN=votre_jeton_de_bot

Passer par un proxy ou un simulateur​

apiBaseUrl décide où les emojis sont envoyés. Deux raisons de la changer :

  • un proxy REST, quand toute l'application passe par lui pour partager les limites de débit ou observer le trafic : Glyph doit suivre le même chemin plutôt que le contourner ;
  • un simulateur de Discord pendant les tests, pour ne pas toucher aux vrais emojis de l'application, visibles sur tous les serveurs du bot.
DISCORD_API=http://localhost:7070/api/v10 npx glyph build

Quand la racine n'est pas Discord, glyph build l'affiche : une ligne visible évite d'envoyer vers un proxy sans le savoir. Une barre oblique finale en trop est retirée automatiquement.