Configuración del Proyecto
Comienza con una estructura básica de extensión de navegador:Obtener el Bundle de Mellowtel
Tienes dos opciones para obtener el archivomellowtel.js para tu extensión:
Opción 1: Usar Archivo Preempaquetado
La forma más fácil de comenzar es usar el archivo preempaquetadomellowtel.js del repositorio mellowtel-bundled.
- Ve al repositorio mellowtel-bundled
- Descarga el archivo
mellowtel.js - Cópialo en el directorio de tu extensión
Opción 2: Generar tu Propio Bundle
Si prefieres generar el bundle tú mismo, sigue estos pasos:Crear un Directorio Temporal para el Bundling
Crea un directorio temporal para instalar Mellowtel y generar el bundle:Empaquetar Mellowtel con esbuild
Desde dentro del directoriomellowtel-bundling, crea un único bundle que funcione tanto en service workers como en scripts de contenido:
- Toma el código fuente de Mellowtel desde
node_modules/mellowtel/dist/index.js - Empaqueta todas las dependencias en un solo archivo
- Usa el formato IIFE con un nombre global para compatibilidad universal
- Añade un pie de página para hacer que la exportación por defecto esté disponible globalmente
- Optimiza para el entorno del navegador y minimiza la salida
- Crea
mellowtel.jsen el directorio de bundling
Copiar el Bundle a tu Extensión
Después de ejecutar el comando esbuild, copia el archivo generado a tu directorio de extensión:Configurar tu Manifiesto (Ambas Opciones)
Independientemente de la opción que hayas elegido, configura tumanifest.json para incluir el bundle de Mellowtel en los scripts de contenido:
- El campo
"type": "module"habilita las importaciones de módulos ES en tu service worker. - En el array de scripts de contenido,
mellowtel.jsdebe cargarse antes quecontent_script.jspara que la variable global Mellowtel esté disponible cuando se ejecute tu script de contenido.
Usar Mellowtel en tu Extensión
Para tu service worker (background.js), importa el archivo empaquetado:Probar tu Extensión
Para probar tu extensión:- Ve a
chrome://extensions/en Chrome (o equivalente en otros navegadores) - Habilita el “Modo desarrollador”
- Haz clic en “Cargar sin empaquetar” y selecciona tu carpeta de extensión