Sobre el proyecto
Already Watched es una extensión de Chrome local-first para reducir la repetición en el feed de YouTube. Detecta tarjetas de video en Inicio, barra lateral/recomendaciones, Búsqueda, Suscripciones, cuadrículas relacionadas y diseños de Shorts compatibles. La reproducción se rastrea a partir de segmentos únicos reales; los saltos y la repetición del mismo segmento no inflan el progreso. Cuando los segmentos observados alcanzan un umbral configurable, un video se marca como visto. El modo de visualización predeterminado es Badge + Dim al 70% visto, donde las tarjetas vistas siguen siendo clicables y se restauran al pasar el cursor o enfocar con el teclado. Las opciones incluyen ocultar completamente las tarjetas vistas, rellenar opcionalmente un feed disperso, ocultar secciones de Playables y sugerencias de temas, ocultar estantes/tarjetas de Shorts en Inicio y ocultar tarjetas de listas de reproducción y colecciones Mix. Los filtros de Playables/temas y listas de reproducción/Mix son reversibles, funcionan con los modos de visualización y están delimitados para que los videos individuales dentro de las listas de reproducción y las URL de videos normales permanezcan disponibles.
Los controles manuales incluyen botones en las miniaturas para marcar como visto o no visto, comandos del menú contextual de Chrome para enlaces de video o la página de visualización actual, y acciones dentro de los menús nativos de tres puntos de YouTube. Un comando de escaneo importa barras de progreso calificadas de las tarjetas renderizadas actualmente en la pestaña activa sin desplazarse, sin obtener el historial de la cuenta ni usar una API de YouTube. Las estadísticas distinguen registros vistos almacenados, marcas totales, filtrados hoy y filtrados en total; las tarjetas duplicadas, los re-renderizados, la navegación SPA y los eventos de observador repetidos se eliminan por duplicado. Borrar el historial elimina los registros de video, la reproducción parcial, las anulaciones y las estadísticas, pero conserva la configuración.
La extensión está construida como Manifest V3 con permisos delimitados para storage, contextMenus y acceso de host a youtube.com. Utiliza chrome.storage.local para configuraciones, registros por video, estadísticas y datos de revisión de historial; la limpieza del historial utiliza temporalmente chrome.storage.session. El README establece que no hay analíticas, no hay backend, no hay API de YouTube, no hay acceso a la cuenta de Google, no hay permisos de historial de navegación o cookies y no hay sincronización de Chrome. Los scripts de contenido se ejecutan en el mundo aislado de Chrome; React se incluye únicamente para la interfaz de popup/opciones. Todos los scripts, estilos e iconos se envían localmente sin CDN ni descarga de código en tiempo de ejecución.
El desarrollo requiere Node.js 20.19+ (se recomienda Node 22 LTS), npm y Chrome 114+. npm ci y npm run check construyen la extensión cargable en dist/. El README documenta pruebas para unidades, DOM, concurrencia de almacenamiento, regresiones del reproductor, verificación de tipos, construcción, vigilancia de desarrollo y un servidor de vista previa local. Las limitaciones conocidas incluyen experimentos de diseño de YouTube, reproductores móviles e integrados fuera del alcance de la v1, heurísticas conservadoras de anuncios/en vivo, posibles brechas de reproducción no observadas y un esfuerzo optimizado de relleno cuando YouTube no ofrece una continuación compatible. El proyecto tiene licencia MIT.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.