Command Palette

Search for a command to run...

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/cli

Mode interactif

Exécutez la CLI sans arguments pour ouvrir un menu interactif :

nowly

Cré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-native

Compiler les présences

Compiler toutes les présences :

nowly build

Compiler une présence :

nowly build youtube

Recompiler à 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 --watch

Tester 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 Firefox

Ceci 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/firefox

Dé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 youtube

Le 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 --bundled

Recompilez la présence modifiée puis l'extension après chaque changement :

nowly build youtube
pnpm build:extension:dev --bundled

Rechargez dans chrome://extensions - la présence est déjà installée et prête à l'emploi.

Lister les présences

nowly list

Valider les métadonnées

nowly validate