>_ DevTrendspt

Idioma

Início

Linguagens

Seções

Frontend Backend Mobile DevOps AI / ML GameDev Blockchain Embarcados Segurança
Go

Organizando Sua Coleção Local de Vídeos com JavBoss

Muitas pessoas têm gigabytes de vídeos, filmes ou conteúdo de nicho acumulando poeira em servidores domésticos ou discos externos. Nomes de arquivo como IPX-633.mp4 ou SSIS-001.mkv não dizem muito quando você quer encontrar rapidamente um clipe específico ou pesquisar o perfil de uma atriz. Servidores de mídia completos como Plex ou Jellyfin frequentemente têm dificuldades com lançamentos asiáticos de nicho: eles simplesmente não conseguem analisar códigos como IPX-633 ou obter a capa adequada.

Recentemente encontrei um projeto open-source interessante no GitHub chamado JavBoss. É um servidor web local construído com Go e React, projetado especificamente para indexar, catalogar e visualizar confortavelmente conteúdo JAV e gravações de vídeo arbitrárias.

Como funciona o sistema de catalogação

O autor abordou a tarefa de uma perspectiva prática de usabilidade. O aplicativo funciona como um serviço web local: ele verifica diretórios especificados, extrai códigos dos nomes de arquivo, busca metadados de vários bancos de dados externos e constrói uma galeria clara.

A principal característica é a autonomia completa dos seus arquivos. O JavBoss funciona no modo somente leitura. Ele não renomeia os arquivos de vídeo de origem nem polui suas pastas de vídeo com arquivos NFO ou imagens. O banco de dados SQLite, cache de capas e storyboards são armazenados estritamente no diretório data/.

Detalhando os recursos principais

Vamos ver o que diferencia este projeto dos scrapers convencionais de linha de comando.

  1. Análise automática de código e metadados. O aplicativo extrai códigos no formato IPX-633, SSIS-001 ou sufixos de legendas. Os metadados são buscados de várias fontes de terceiros simultaneamente. Os cartões incluem títulos, datas de lançamento, estúdios, tags e medidas das atrizes (altura, idade, dimensões). Se a detecção automática cometer um erro, você pode facilmente vincular um cartão manualmente.

  2. Integração com o player mpv. Players de mídia web geralmente são limitados pelos codecs do navegador. Os desenvolvedores do JavBoss encontraram uma solução simples: a versão desktop pode invocar diretamente o mpv local. Você obtém um player completo com suporte a qualquer formato de vídeo, teclas de atalho personalizáveis e a interface ModernZ. Enquanto assiste no mpv, você pode tirar capturas de tela com um único botão, e elas aparecerão imediatamente na linha do tempo do vídeo na interface web.

  3. Rastreamento de realocação de arquivos. O indexador monitora os diretórios adicionados em segundo plano. Moveu um arquivo para outra unidade ou renomeou uma pasta? O banco de dados atualiza os caminhos. As tags do usuário são preservadas porque estão vinculadas à impressão digital do arquivo de vídeo. Se você desconectar um disco rígido externo, os cartões permanecem no banco de dados, e quando reconectar a unidade, eles se tornam ativos novamente.

  4. Navegação e filtragem. Você pode encontrar vídeos por tags, estúdios, atrizes ou data de lançamento. Há um recurso conveniente de seleção aleatória que funciona em toda a sua biblioteca de mídia ou dentro de um conjunto específico de filtros.

A interface parece clara e não está sobrecarregada com menus desnecessários:

Catálogo JAV

Perfil da atriz

Busca e filtros

Integração com mpv

Stack tecnológico e implantação

A arquitetura do projeto é limpa. O backend é escrito em Go usando o framework Gin, GORM e o banco de dados SQLite integrado. ffprobe é usado para ler parâmetros técnicos de vídeo, enquanto pré-visualizações e storyboards são gerados através de mpv ou ffmpeg.

O frontend é construído com React, Vite, Tailwind CSS e Zustand. Por padrão, o serviço é executado na porta 8655. Você pode instalá-lo com um script automatizado, baixando um binário ou via Docker Compose:

services:
  javboss:
    image: ghcr.io/solr159/javboss:latest
    container_name: javboss
    ports:
      - "8655:17654"
    volumes:
      - ./data:/app/data
      - /:/host:ro
    restart: unless-stopped

No container, os vídeos são reproduzidos pelo player HTML5 integrado no navegador, e os caminhos locais do sistema host são automaticamente encaminhados.

Pontos fortes e considerações específicas

Esta ferramenta será útil para qualquer pessoa que mantém uma coleção local e está cansada do caos em seu sistema de arquivos.

Pontos fortes do projeto:

  • Zero interferência na estrutura original de pastas.
  • Transferência simples do banco de dados entre sistemas através da cópia direta do data/.
  • Uso de múltiplas fontes para agregação de metadados.
  • Interface web conveniente com suporte para abrir páginas em diferentes abas do navegador.

Há algumas limitações a considerar. A importação inicial de uma grande coleção levará tempo para geração de pré-visualizações em segundo plano e download de capas. Se os sites de metadados externos estiverem indisponíveis, a raspagem automática será pausada, embora o banco de dados armazenado localmente continue funcionando offline.

Conclusão

O JavBoss se mostrou uma solução prática e especializada. O autor não tentou construir outro sistema de mídia volumoso, mas resolveu um problema específico de catalogação de conteúdo de nicho. Se você precisa de ordem em seus discos sem trabalho manual extra, este projeto definitivamente vale a pena experimentar.

Projetos relacionados