Command Palette

Search for a command to run...

Cargar y probar en local

Carga una presencia compilada en la extensión Nowly con un paquete de desarrollo listo o soltando un zip.

Después de nowly build <slug>, todavía tienes que meter ese bundle en el navegador. Hay dos métodos locales. Ninguno usa la API de Nowly.

1. Extensión precompilada (nowly extension)

Es el camino habitual para la primera configuración. La CLI descarga una build de desarrollo de Chrome o Firefox e incluye tu presencia compilada.

nowly build youtube
nowly extension youtube             # Chrome (por defecto)
nowly extension youtube --firefox
nowly extension youtube --f         # Alias de Firefox

Puedes pasar varios slugs:

nowly extension youtube github figma --firefox

Las opciones de navegador son mutuamente excluyentes. Usa --chrome / --c para seleccionar Chrome explícitamente.

Luego:

  • Chrome: abre chrome://extensions, activa el modo desarrollador y elige Cargar extensión sin empaquetar → dist/extension-dev
  • Firefox: abre about:debugging#/runtime/this-firefox, elige This Firefox, pulsa Load Temporary Add-on... y selecciona dist/extension-dev-firefox/manifest.json

La presencia se instala desde dev-presences.json al arrancar la extensión. Tras cambiar el código, recompila, vuelve a ejecutar nowly extension <slug> y recarga la extensión.

Para usar una build local en lugar del zip del CDN:

nowly extension youtube --chrome --from ../nowly/apps/extension/dist/chrome
nowly extension youtube --firefox --from ../nowly/apps/extension/dist/firefox

nowly extension escribe una carpeta unpacked. Úsala cuando Nowly todavía no esté cargada en el navegador.

Monorepo Nowly completo

Si clonaste nowly y ejecutaste pnpm repos (que clona presences en packages/presences), puedes incluir todas las presencias compiladas en la extensión:

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

Carga apps/extension/dist/chrome como unpacked. Recarga después de cada rebuild.

2. Soltar un zip (nowly pack)

Usa este método cuando Nowly ya está cargada como build de desarrollo unpacked. Las instalaciones de Chrome Web Store rechazan zips sin firma. Solo recompilas la presencia, no toda la extensión.

nowly pack youtube

Ese comando compila la presencia y comprime dist/presences/youtube/ en dist/packs/youtube.zip. El zip debe incluir al menos metadata.json y bundle.js. Las carpetas anidadas valen.

Luego en el panel lateral:

  1. Abre Ajustes → Avanzado
  2. Activa el modo desarrollador (siempre activo en unpacked)
  3. Despliega Debug
  4. Suelta el .zip (o elige el archivo)

La presencia se instala con origen local. La limpieza unpacked al arrancar no la borra. Los zips sin firma solo se aceptan en un build unpacked (Cargar descomprimida). El interruptor de modo desarrollador en Ajustes solo muestra la interfaz Debug; no permite instalar zips en una build de tienda. Una build de tienda sigue exigiendo una release firmada por la API.

Después de cada cambio de código:

nowly pack youtube

Vuelve a soltar el zip. No hace falta recargar la extensión unpacked salvo que hayas cambiado la extensión.

Qué método elegir

| Situación | Método | |---|---| | Primer setup, o Nowly no está en el navegador | nowly extension <slug> | | Nowly ya cargada, iterar sobre una presencia | nowly pack <slug> y soltar el zip | | Trabajas en el monorepo nowly | pnpm build:extension:dev --bundled |

Consulta también CLI.