Sobre o projeto
Already Watched é uma extensão local para Chrome destinada a reduzir a repetição no feed do YouTube. Ela detecta cartões de vídeo na Home, barra lateral/recomendações, Pesquisa, Inscrições, grades relacionadas e layouts suportados de Shorts. A reprodução é rastreada a partir de segmentos únicos reais; buscas e a reprodução do mesmo segmento não inflam o progresso. Quando os segmentos observados atingem um limite configurável, um vídeo é marcado como assistido. O modo de exibição padrão é Badge + Dim com 70% assistido, com cartões assistidos ainda clicáveis e restaurados ao passar o mouse ou focar via teclado. As opções incluem ocultar totalmente os cartões assistidos, opcionalmente preencher um feed esparso, ocultar seções de Playables e sugestões de tópicos, ocultar prateleiras/cartões de Shorts na Home e ocultar cartões de playlists e coleções Mix. Os filtros de Playables/tópicos e playlist/Mix são reversíveis, funcionam com os modos de exibição e são delimitados para que vídeos individuais dentro de playlists e URLs de vídeos normais permaneçam disponíveis.
Os controles manuais incluem botões na miniatura para marcar como assistido ou não assistido, comandos no menu de contexto do Chrome para links de vídeo ou a página de visualização atual, e ações dentro dos menus nativos de três pontos do YouTube. Um comando de varredura importa barras de progresso qualificadas de cartões renderizados atualmente na guia ativa sem rolar, buscar histórico da conta ou usar a API do YouTube. As estatísticas distinguem registros de assistidos armazenados, marcações totais, filtrados hoje e filtrados em todos os tempos; cartões duplicados, renderizações repetidas, navegação SPA e eventos de observador repetidos são deduplicados. A limpeza do histórico remove registros de vídeo, reprodução parcial, substituições e estatísticas, mas preserva as configurações.
A extensão é construída como Manifest V3 com permissões delimitadas para storage, contextMenus e acesso ao host youtube.com. Ela utiliza chrome.storage.local para configurações, registros por vídeo, estatísticas e dados de revisão de histórico; a limpeza do histórico utiliza temporariamente chrome.storage.session. O README afirma que não há analytics, nem backend, nem API do YouTube, nem acesso à conta do Google, nem permissão de histórico de navegação ou cookies, e nem sincronização do Chrome. Os content scripts rodam no mundo isolado do Chrome; React é empacotado apenas para a UI de popup/opções. Todos os scripts, estilos e ícones são enviados localmente, sem CDN ou download de código em tempo de execução.
O desenvolvimento requer Node.js 20.19+ (Node 22 LTS recomendado), npm e Chrome 114+. npm ci e npm run check constroem a extensão carregável em dist/. O README documenta testes para unidade, DOM, concorrência de armazenamento, regressões do player, verificação de tipos, build, dev watch e um servidor de pré-visualização local. Limitações conhecidas incluem experimentos de layout do YouTube, players móveis e incorporados fora do escopo v1, heurísticas conservadoras de anúncios/ao vivo, possíveis lacunas de reprodução não observadas e preenchimento de melhor esforço quando o YouTube não oferece continuação suportada. O projeto possui licença MIT.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.