Communitygithub.com

Karthic1981/hoodini-ai-agents-skills.gitni-ai-agents-skills

Transforme qualquer vídeo em uma página de destino cinematográfica com rolagem de quadro — estilo Apple, onde a rolagem avança o quadro visível do vídeo.

O que é hoodini-ai-agents-skills.gitni-ai-agents-skills?

Esta skill cria uma página de destino interativa a partir de um vídeo, onde o herói da página é controlado pela rolagem do usuário, em vez do tempo — um efeito popularizado por páginas como a do GitHub Copilot e produtos Apple. O processo extrai N quadros uniformemente espaçados do vídeo usando ffmpeg, constrói um HTML autossuficiente com um herói fixo e um listener de rolagem JavaScript que alterna o quadro visível conforme o usuário rola. A página inclui seções de conteúdo, manchete e chamada para ação (CTA) abaixo do herói. Para projetos YUV.AI, a skill aplica automaticamente o sistema de design YUV no modo Neon (rosa/ciano/branco), enquanto para projetos genéricos escolhe uma paleta adequada ao vídeo de origem. O resultado é uma pasta contendo `index.html` e um diretório `frames/`, pronta para ser colocada em qualquer hospedagem estática como Vercel, Netlify ou Cloudflare Pages. A skill suporta plataformas como Claude Code, Cursor e Codex, e é ideal para desenvolvedores que desejam criar landing pages impressionantes a partir de vídeos de forma rápida e eficiente.

Funciona com~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/Karthic1981/hoodini-ai-agents-skills.gitni-ai-agents-skills/tree/HEAD/skills/video-to-landing-page

Perguntar na sua IA favorita

Abre um novo chat com esta habilidade de agente já pré-carregada.

Documentação

Vídeo → Página de Destino com Rolagem de Quadro

Crie uma página de destino cinematográfica onde o herói é um vídeo que toca na rolagem em vez do tempo — como as páginas de produto da Apple ou a página inicial do GitHub Copilot. Os quadros são extraídos do vídeo de origem e trocados conforme o usuário rola; abaixo do herói fixo, seções de rolagem normal contêm o texto e a chamada para ação.

Quando invocar

  • O usuário fornece um vídeo e pede uma página de destino, site com rolagem, herói de rolagem de quadro ou site a partir de um vídeo
  • Menções a "rolagem estilo Apple", "página inicial do GitHub Copilot", "avanço na rolagem", "quadro na rolagem"
  • Equivalentes em hebraico: "דף נחיתה מסרטון", "אתר עם גלילה", "סרטון בגלילה"

Local de salvamento

Padrão: ~/Documents/yuv-projects/landings/<slug>/ — salve sempre as páginas de destino aqui para que você possa encontrá-las novamente. Crie o diretório pai se estiver faltando.

mkdir -p ~/Documents/yuv-projects/landings
cd ~/Documents/yuv-projects/landings
# Construa <slug>/ aqui.

Caminho final: ~/Documents/yuv-projects/landings/<slug>/. Informe ao usuário onde a página de destino está no final de cada construção.


Fluxo de trabalho (8 etapas)

  1. Analisar a fonte — ffprobe para duração, fps, dimensões, áudio.
  2. Escolher a quantidade de quadros — padrão 80. Mínimo 40 (irregular se menor), máximo 160 (página pesada). Escolha por duração: ≤10s → 50, 10–30s → 80, 30–60s → 120, >60s → 160.
  3. Decidir o diretório de saída — padrão ~/Documents/yuv-projects/landings/<slug>/. O <slug> é curto, derivado do nome do vídeo ou do tópico. Substitua apenas sob solicitação explícita.
  4. Extrair quadros — execute references/extract-frames.py <video-fonte> <diretorio-saida> [quantidade]. Produz diretorio-saida/frames/f_0001.jpg… com qualidade JPG consistente 82 e largura máxima de 1920 (redimensionado se a fonte for maior).
  5. Copiar e personalizar references/landing-template.html para diretorio-saida/index.html:
    • Substitua o espaço reservado __FRAMES__ por tags <img> para cada quadro (o script de construção faz isso automaticamente quando você passa --build-html).
    • Preencha __HEADLINE__, __TAGLINE__, __CTA_TEXT__, __CTA_HREF__, seções.
    • Para conteúdo em hebraico: defina <html lang="he" dir="rtl"> e troque as fontes para Rubik/Assistant (veja references/design-notes.md).
  6. Otimizar quadros — o script de construção já redimensiona para largura máxima de 1920px. Se o peso total da página for > 12 MB, reduza a qualidade para 75 ou diminua a quantidade de quadros.
  7. Pré-visualizar — python -m http.server dentro do diretório de saída e abra http://localhost:8000. A rolagem fica suave em uma máquina decente.
  8. Implantar — solte a pasta no Vercel/Netlify/Cloudflare Pages. Nenhuma etapa de construção necessária.

O mecanismo de rolagem

  • Rolador externo .scroll-stage com altura definida em unidades de viewport (padrão 600vh = rolar 5 telas para percorrer todos os quadros).
  • Herói fixo position: sticky; top: 0; height: 100vh contendo todos os quadros posicionados absolutamente e ocultos, exceto o ativo.
  • Listener de rolagem calcula progresso = roladoDentroDoStage / alturaRolavel fixado entre 0 e 1.
  • idx = floor(progresso * (N - 1)) — troca a classe .active para aquele quadro.
  • Envolva o listener em requestAnimationFrame para manter 60fps.

Regras de design

  • Se o projeto for marcado como YUV.AI (Yuval pessoalmente, seu portfólio, sua marca): chame yuv-design-system e bloqueie-o para um modo por meio —
    • Modo Neon (PADRÃO para web YUV.AI): rosa choque (#FF1464) + ciano neon (#00E5FF) + branco ou preto rico. Anton + Inter (Inglês) / Rubik + Assistant (Hebraico). Raio 0px ou 999px.
    • Modo Editorial Quente: apenas para Hope, Marcus, bigcats.ai, practical.yuv.ai — rosa + amarelo + osso, off-white nunca #fff puro.
    • Nunca use o modo Decks (roxo/amarelo Fly High) para uma página de destino — essa paleta é reservada apenas para apresentações de slides.
  • Se o projeto não for marcado como YUV.AI: não aplique yuv-design-system. Escolha uma paleta que se adapte ao clima do vídeo de origem. Anton + Inter continuam sendo padrões razoáveis, mas não são obrigatórios.
  • As sobreposições do herói devem ser sutis — uma vinheta e uma única manchete grande; não sobrecarregue o quadro.
  • Seções abaixo do herói: canvas claro (branco no modo Neon, off-white no modo Editorial Quente, osso se for genérico-quente), título grande em Anton, corpo em Inter a 18–22px, CTA como uma pílula afiada (border-radius: 999px) — preenchimento rosa no modo Neon, cor apropriada à marca caso contrário.
  • Para hebraico: respeite RTL, use Rubik 900 para títulos, Assistant 400/500 para corpo.

Referências de arquivos

ArquivoPropósito
references/extract-frames.pyExtrator de quadros baseado em ffmpeg; opcionalmente constrói o HTML completo de uma só vez
references/landing-template.htmlEsqueleto de página de destino autossuficiente com o mecanismo de rolagem
references/design-notes.mdTipografia, paleta e padrões de movimento

Individual skills in this repo

This repo contains 2 individual skills — each has its own dedicated page.

Karthic1981/hoodini-ai-agents-skills.gitni-ai-agents-skills

Build a premium cinematic landing page with mouse-scrub video hero and brand-driven narrative-arc sections. Use whenever the user provides a hero video plus a product / subject / brand and wants a landing page, promo site, product showcase, marketing page, or storytelling site. Works for any language (RTL or LTR — Hebrew, English, Arabic, Spanish, French, Japanese, etc.) and any subject (food, tech, animals, fashion, services, SaaS, wildlife campaigns, music releases, books, real estate). The signature effect is mouse-driven video scrubbing — the hero video lives across the entire page as a fixed backdrop, and moving the mouse left-right scrubs the video timeline so the subject responds to the cursor. Below the hero, 4-5 fully-opaque sections each carry their own brand identity (color, typography emphasis, layout pattern) and walk the viewer through a narrative arc (e.g. longing → joy → nostalgia → contemplation → action). Triggers on phrases like "build a landing page from this video", "cinematic landing ...

Karthic1981/hoodini-ai-agents-skills.gitni-ai-agents-skills

Build a scroll-driven cinematic landing page from a short video. The user provides a 5–15 second video (often AI-generated); this skill extracts every frame at HD JPEG quality, then produces a single-hero HTML page where the user's scroll gesture scrubs the frames in place (the page itself never scrolls) and 5 dramatic text overlays crossfade in/out — Google Anton headlines, Caveat handwritten accents, locked body, virtual scroll. Use this skill whenever the user wants to "turn this video into a landing page", "make a scroll-scrub landing page", "build a parallax hero from this clip", "add a new landing page to the parasites showcase", "do the same as github/lion/hope for this new video", or any variant that pairs a short clip with dramatic scroll-triggered storytelling. Trigger even if the user only says "use my video for a landing page" — that is this skill.

Habilidades Relacionadas