Skip to content

Latest commit

 

History

History
90 lines (66 loc) · 3.47 KB

CONTRIBUTING.md

File metadata and controls

90 lines (66 loc) · 3.47 KB

Contribuer à Cast Kodi

Cette documentation vous guide pour contribuer au projet Cast Kodi.

Pré-requis

Les outils suivants sont nécessaires pour utiliser ce projet :

Installation

  • Dupliquez (forker) le dépôt castkodi.
  • Clonez votre dépôt dupliqué : git clone https://github.com/YOUR-USERNAME/castkodi.git
  • Déplacez vous dans le répertoire du projet : cd castkodi
  • Installez les dépendances : npm ci

Développement

Scraper

  • Créez un fichier dans le répertoire src/core/scraper/
  • Implémentez votre scraper pour un site Internet dans ce fichier.
  • Importez votre fichier dans src/core/scrapers.js et ajoutez le dans la liste SCRAPERS
  • Ajoutez le nouveau site supporté dans le README et dans les fichiers locales/*/description.tpl
  • Écrivez des tests unitaires dans test/unit/core/scraper/ et des tests d'intégration dans test/integration/scraper/

Déploiement

Vous pouvez installer l'extension dans les navigateurs avec les commandes suivantes :

  • npm run start:chromium : déployer l'extension dans Chromium.
  • npm run start:firefox : déployer l'extension dans Firefox.

Vous pouvez aussi installer manuellement l'extension :

Qualité

Pour vérifier la qualité de votre développement, trois commandes sont disponibles :

  • npm run lint : exécuter les linters (avec Metalint) pour faire une analyse statique du code source.
  • npm run lint:fix : exécuter les linters et corriger certains problèmes (dont le formatage).
  • npm run lint:types : vérifier les types avec TypeScript (et la JSDoc).

Tests

Deux types de tests sont exécutables : les tests unitaires et les tests d'intégration.

  • npm run test:unit : lancer les tests unitaires (avec Mocha).
  • npm run test:unit -- --grep foo : lancer seulement les tests unitaires dont leur titre contient foo (par exemple : npm run test:unit -- --grep core/scraper/twitch.js).
  • npm run test:coverage : calculer la couverture des tests unitaires (avec Stryker Mutator).
  • npm run test:integration : lancer les tests d'intégration.
  • npm run test:integration -- --grep foo : lancer seulement les tests d'intégration dont leur titre contient foo (par exemple : npm run test:integration -- --grep YouTube).

Commit

Le message de commit doit suivre la spécification des Commits Conventionnels.

Traduction

Les traductions dans les différentes langues se font avec Weblate.