CLI
Use a CLI do Nowly para criar, compilar, validar e testar presences localmente.
A CLI do Nowly é publicada como @nowly/cli no npm. Instale-a globalmente:
pnpm i -g @nowly/cliModo interativo
Execute a CLI sem argumentos para abrir um menu interativo:
nowlyCriar uma presence
nowly init "Netflix"A pergunta interativa verifica se o Discord já suporta a plataforma quando o usuário vincula a conta. Isso grava discordNative em metadata.json. Você também pode passá-lo:
nowly init "Spotify" --discord-nativeCompilar presences
Compile todas as presences:
nowly buildCompile uma presence:
nowly build youtubeRecompile quando os arquivos mudarem (recarregue a extensão não compactada após cada compilação, ou solte o zip novamente se usar pack):
nowly build youtube --watch
nowly pack youtube --watchTestar uma presence localmente
Há duas maneiras de carregar uma presence compilada sem a API do Nowly. Guia completo: Carregar e testar localmente.
Extensão pré-compilada
Se você apenas clonou o repositório presences (o caso comum para contribuidores), use nowly extension para obter um build de desenvolvimento pronto para carregar sem o monorepo completo do nowly:
nowly build youtube
nowly extension youtubeIsso baixa o build de desenvolvimento mais recente da extensão do CDN, agrupa as presences listadas e grava um arquivo dev-presences.json dentro dele. Em seguida:
- Abra
chrome://extensionse ative o Modo desenvolvedor - Carregar sem compactação → selecione a pasta
dist/extension-devgerada - A presence é instalada automaticamente - sem servidor de API, sem página de instalação, sem URL de API personalizada
Depois de editar a presence, recompile e execute nowly extension <slug> novamente e, então, recarregue a extensão.
Para usar um build de extensão local específico em vez do CDN, use --from:
nowly extension youtube --from ../nowly/apps/extension/dist/chromeZip solto
Se o Nowly já está carregado como um build de desenvolvimento não compactado, empacote a presence e solte-a no painel de Depuração:
nowly pack youtubeO zip é gravado em dist/packs/youtube.zip. Solte-o em Configurações → Avançado → Depuração. Zips não assinados só funcionam em builds não compactados, não em instalações da Chrome Web Store. A UI de depuração só aparece no modo desenvolvedor.
Se você tiver o monorepo completo
Se você clonou o próprio nowly (com presences como submódulo), pode compilar a extensão com todas as presences incorporadas diretamente:
pnpm build:extension:devRecompile a presence alterada e depois a extensão a cada mudança:
nowly build youtube
pnpm build:extension:devRecarregue em chrome://extensions - a presence já está instalada e pronta para uso.
Listar presences
nowly listValidar metadados
nowly validate