CLI
Utilisez la CLI Nowly pour créer, compiler, valider et tester les présences localement.
La CLI Nowly est publiée sous @nowly/cli sur npm. Installez-la globalement :
pnpm i -g @nowly/cliMode interactif
Exécutez la CLI sans arguments pour ouvrir un menu interactif :
nowlyCréer une présence
nowly init "Netflix"Le prompt interactif demande si Discord gère déjà la plateforme lorsque l'utilisateur lie son compte. Cela écrit discordNative dans metadata.json. Vous pouvez aussi le passer :
nowly init "Spotify" --discord-nativeCompiler les présences
Compiler toutes les présences :
nowly buildCompiler une présence :
nowly build youtubeRecompiler à chaque changement de fichier (rechargez l'extension unpacked après chaque rebuild, ou redéposez le zip avec pack) :
nowly build youtube --watch
nowly pack youtube --watchTester une présence localement
Deux façons de charger une présence compilée sans passer par l'API Nowly. Guide complet : Charger et tester en local.
Extension précompilée
Si vous n'avez cloné que le dépôt presences (le cas le plus courant pour les contributeurs), utilisez nowly extension pour obtenir un build de développement adapté au navigateur, sans le monorepo nowly complet :
nowly build youtube
nowly extension youtube # Chrome (par défaut)
nowly extension youtube --firefox
nowly extension youtube --f # Alias FirefoxCeci télécharge le build de développement Chrome ou Firefox correspondant, y empaquette la ou les présences listées, et écrit un fichier dev-presences.json dedans.
Pour Chrome, chargez dist/extension-dev en unpacked dans chrome://extensions.
Pour Firefox, chargez dist/extension-dev-firefox/manifest.json depuis about:debugging#/runtime/this-firefox avec Load Temporary Add-on.
Après avoir modifié la présence, recompilez-la puis relancez nowly extension <slug>, et rechargez l'extension.
Utilisez --chrome / --c pour sélectionner explicitement Chrome, et --firefox / --f pour Firefox. Ces options sont mutuellement exclusives.
Pour utiliser un build local précis plutôt que celui du CDN, passez --from :
nowly extension youtube --chrome --from ../nowly/apps/extension/dist/chrome
nowly extension youtube --firefox --from ../nowly/apps/extension/dist/firefoxDépôt d'un zip
Si Nowly est déjà chargé en build de développement unpacked, créez un zip et déposez-le dans le panneau Debug :
nowly pack youtubeLe zip est écrit dans dist/packs/youtube.zip. Déposez-le dans Réglages → Avancé → Debug. Les zips non signés ne marchent que sur un build unpacked, pas sur une installation Chrome Web Store. Le mode développeur n'affiche que l'interface Debug.
Si vous avez le monorepo complet
Si vous avez cloné nowly lui-même et lancé pnpm repos (qui clone presences dans packages/presences), vous pouvez compiler l'extension avec toutes les présences intégrées directement :
pnpm build:extension:dev --bundledRecompilez la présence modifiée puis l'extension après chaque changement :
nowly build youtube
pnpm build:extension:dev --bundledRechargez dans chrome://extensions - la présence est déjà installée et prête à l'emploi.
Lister les présences
nowly listValider les métadonnées
nowly validate