Imagem de capa do projeto: NEXUS Wayback Machine EM ANDAMENTO

Resumo técnico

Plugin NEXUS de OSINT sobre o histórico de sites via Wayback Machine (Internet Archive): consulta do snapshot mais recente, listagem de capturas pela API CDX com filtros de período, timeline anual visual, checagem em lote de até 50 domínios, exportação CSV e histórico de consultas — com cache local de 7 dias e status do serviço em tempo real.

Escopo executado

  • Backend backend.php (461 linhas): WAYBACK_CACHE_TTL = 604800 (7 dias); sem autenticação — APIs públicas do Internet Archive.
  • Tabelas (criadas por wayback_install() no load): wayback_cache (id, kind, query_key VARCHAR(512), status, http_code, data LONGTEXT, error, task_id, updated_at; UNIQUE uk_kind_key (kind, query_key(255)), idx_updated_at) e wayback_history (id, query_type, query_val VARCHAR(512), status, task_id, created_at; idx_created_at).
  • Cache: wayback_cache_get/put — upsert por kind+chave com TTL 7 dias; toda consulta é registrada no histórico; o parâmetro force ignora o cache.
  • HTTP: wayback_http_get — connect 5s / timeout 12s (20s nas consultas CDX), Accept: application/json e follow de até 5 redirecionamentos.
  • wayback_check — GET archive.org/wayback/available?url=; retorna o snapshot mais recente (archived_snapshots.closest com url, timestamp e status).
  • wayback_snapshots — CDX web.archive.org/cdx/search/cdx com output=json, fl=timestamp,original,statuscode,mimetype,digest, collapse=timestamp:8 (1 captura por dia), filter=statuscode:200, from/to e limit (padrão 50); parse do JSON do CDX com fallback para raw.
  • wayback_timeline — CDX limit=500 com collapse=timestamp:6 e filtro statuscode:200; agrupa por ano (total, first_seen, last_seen) e expõe total_years; cada ano linka para web.archive.org/web/{ano}*/{url}.
  • wayback_bulk_check — até 50 domínios por chamada; reutiliza wayback_check (cache-aware) e retorna domain, available, timestamp, url, status e cached por domínio.
  • wayback_status — GET (não HEAD) em wayback/available?url=example.com (connect 4s / timeout 6s); services.wayback_available e services.wayback_cdx (online = 2xx) + has_sample_snapshot.
  • wayback_history — page e limit ≤ 50, ordenado por id DESC (query_type, query_val, status, task_id, created_at).
  • API: 6 actions via PluginManager::registerApiAction (wayback_status, wayback_check, wayback_snapshots, wayback_timeline, wayback_bulk_check, wayback_history) — sem placeholders.
  • Sem enricher no Intelligence Hub — plugin de consulta sob demanda (OSINT direto, sem sinais de enriquecimento automático).
  • UI Alpine.js (tab.php, 690 linhas): tema cyan; badge de status da API (verde com pulso / vermelho); abas Consulta (snapshot mais recente com link "Ver" e timestamps formatados dd/mm/aaaa hh:mm), Snapshots (filtros de período + limite, tabela timestamp/data/URL original/MIME/status e exportação CSV), Timeline (barras anuais com total de capturas e first_seen/last_seen), Lote (até 50 domínios, badge disponível/sem snapshot, indicador de cache e CSV) e Histórico (tipo/consulta/status/data); toggle de JSON bruto.
  • Fastr: 3 comandos — /wayback <url> (url), /wayback-snaps <url> (url), /wayback-timeline <url> (url); todos arg_required=true.
  • Sem cronjob.json — plugin sob demanda com cache de 7 dias.

Stack e ferramentas

  • PHP 8 (sem framework)
  • MySQL 8 (wayback_cache + wayback_history)
  • Alpine.js + Tailwind CSS (premium light, cyan ring)
  • Sistema de plugins do NEXUS (PluginManager)
  • cURL → archive.org Wayback Machine (Availability API + CDX API)

Tags operacionais

  • OSINT
  • Internet Archive
  • Wayback Machine
  • CDX
  • Snapshots
  • Digital Preservation
  • Plugin NEXUS

Resultado operacional

  • Acesso ao maior arquivo histórico da web (800 bi+ de páginas desde 1996): verificação rápida de presença de um domínio e link direto para o replay mais recente.
  • Listagem de snapshots com filtros de período e exportação CSV para análise offline da evolução de um site.
  • Timeline anual que revela, em segundos, desde quando e com que frequência um domínio é arquivado.
  • Checagem em lote de até 50 domínios para triagem OSINT (ex.: identificar squatting ou domínios abandonados ainda arquivados).
  • Cache de 7 dias: reconsultas não re-queimam as APIs do Internet Archive e o histórico de consultas fica auditável.

Andamento no GitHub (issues)

Painel em tempo real com as issues mais recentes do repositório.

abertas (amostra): -- fechadas (amostra): -- base: -- ultimas issues

carregando andamento...

Resultados reais

Plugin NEXUS de OSINT sobre o histórico de sites via Wayback Machine (Internet Archive): consulta do snapshot mais recente, listagem de capturas pela API CDX com filtros de período, timeline anual visual, checagem em lote de até 50 domínios, exportação CSV e histórico de consultas — com cache local de 7 dias e status do serviço em tempo real.

Arquitetura e organização

Execução e operação

O projeto segue fluxo reprodutível de execução com validação técnica em ambiente de produção/similar.

Screenshots

Falar sobre este projeto

Aplique este modelo no seu ambiente e acelere a entrega com consistência técnica.