Le SDK JavaScript
Installation
Section intitulée « Installation »npm i @tcgdex/sdk
bun i @tcgdex/sdk
yarn add @tcgdex/sdk
pnpm add @tcgdex/sdk
<script src="https://cdn.jsdelivr.net/npm/@tcgdex/sdk@2/dist/tcgdex.browser.js"></script>
Utilisation de base
Section intitulée « Utilisation de base »// Importer le SDK en ESM/TypeScriptimport TCGdex from '@tcgdex/sdk'
// OU importer le SDK en CommonJSconst TCGdex = require('@tcgdex/sdk').default
// Instancier le SDK avec votre langue préféréeconst tcgdex = new TCGdex('en');
// Utilisation dans un contexte asynchrone(async () => { // Récupérer Fouinar du set Ténèbres Embrasées const card = await tcgdex.card.get('swsh3-136'); console.log(card.name); // "Furret"})();
<script src="https://cdn.jsdelivr.net/npm/@tcgdex/sdk@2/dist/tcgdex.browser.js"></script><script> // Instancier le SDK const tcgdex = new TCGdex('en');
// Utilisation dans un contexte asynchrone (async () => { // Récupérer Fouinar du set Ténèbres Embrasées const card = await tcgdex.card.get('swsh3-136'); console.log(card.name); // "Furret" })();</script>
Récupération des données
Section intitulée « Récupération des données »Le SDK fournit des endpoints dédiés pour les types de données courants :
// Obtenir une carte spécifiqueconst card = await tcgdex.card.get('swsh3-136');
// Obtenir un set spécifiqueconst set = await tcgdex.set.get('swsh3');
// Obtenir une série spécifiqueconst serie = await tcgdex.serie.get('swsh');
// Obtenir une liste de toutes les cartesconst allCards = await tcgdex.card.list();
Obtenir des données aléatoires
Section intitulée « Obtenir des données aléatoires »Vous pouvez également récupérer des cartes, sets ou séries aléatoires :
// Obtenir une carte aléatoireconst randomCard = await tcgdex.random.card();
// Obtenir un set aléatoireconst randomSet = await tcgdex.random.set();
// Obtenir une série aléatoireconst randomSerie = await tcgdex.random.serie();
Requêtes avancées
Section intitulée « Requêtes avancées »Le SDK fournit un système de requêtes puissant pour filtrer les données :
import TCGdex, { Query } from '@tcgdex/sdk';
const tcgdex = new TCGdex('en');
// Créer une requête pour trouver les cartes Pikachu avec un HP entre 60 et 70const pikachuCards = await tcgdex.card.list( Query.create() .equal('name', 'Pikachu') // Correspond au nom exact .greaterOrEqualThan('hp', 60) // HP >= 60 .lesserThan('hp', 70) // HP < 70 .sort('localId', 'ASC') // Trier par ID en ordre croissant);
// Trouver des cartes contenant "5" dans leur ID mais pas "tg"const filteredCards = await tcgdex.card.list( Query.create() .contains('localId', '5') // L'ID contient "5" .not.contains('localId', 'tg') // L'ID ne contient pas "tg");
// Exemple de pagination - obtenir la page 3 avec 2 éléments par pageconst paginatedCards = await tcgdex.card.list( Query.create() .paginate(3, 2));
Relations entre objets
Section intitulée « Relations entre objets »Le SDK facilite la navigation entre les relations d’objets :
// Obtenir une carte puis récupérer son setconst card = await tcgdex.card.get('swsh3-136');const set = await card.getSet();
// Obtenir un set puis récupérer sa sérieconst set = await tcgdex.set.get('swsh3');const serie = await set.getSerie();
// Obtenir une carte à partir de la liste de cartes d'un setconst set = await tcgdex.set.get('swsh3');const firstCardResume = set.cards[0];const fullCard = await firstCardResume.getCard();
Filtrage par attributs
Section intitulée « Filtrage par attributs »Trouvez des cartes par attributs spécifiques :
// Obtenir toutes les cartes de type feuconst fireType = await tcgdex.type.get('fire');
// Obtenir toutes les cartes avec un HP spécifiqueconst hp90Cards = await tcgdex.hp.get('90');
// Obtenir toutes les cartes d'un illustrateur spécifiqueconst illustratorCards = await tcgdex.illustrator.get('TOKIYA');
// Obtenir toutes les cartes avec une rareté spécifiqueconst rareCards = await tcgdex.rarity.get('rare');
Options de configuration
Section intitulée « Options de configuration »Le SDK fournit plusieurs options de configuration :
// Créer le SDK avec une langue spécifiqueconst tcgdex = new TCGdex('fr'); // Français
// Changer la langue après l'initialisationtcgdex.setLang('en'); // Passer à l'anglais
// Définir un endpoint API personnalisétcgdex.setEndpoint('https://custom-api.example.com/v2');
// Configurer la mise en cachetcgdex.setCacheTTL(3600); // Définir la durée du cache à 1 heure
Images des cartes
Section intitulée « Images des cartes »Accédez facilement aux images des cartes :
const card = await tcgdex.card.get('swsh3-136');
// Obtenir l'URL d'une image PNG haute qualitéconst highQualityPng = card.getImageURL('high', 'png');
// Obtenir l'URL d'une image WEBP basse qualité pour les performancesconst lowQualityWebp = card.getImageURL('low', 'webp');
Ressources connexes
Section intitulée « Ressources connexes »- Consultez la documentation complète de l’API REST pour tous les endpoints disponibles
- Code source sur GitHub
- Package NPM
- Communauté Discord