SW Core
SW Core / Animações / Glow (segue o mouse)

Glow (segue o mouse) Animações

Brilho de neon no texto e uma luz que acompanha o mouse por dentro do bloco — sw-ani="glow".

O que é

Faz o elemento brilhar, em três camadas que você liga ou desliga: (1) o texto ganha um brilho de neon na cor escolhida; (2) uma mancha de luz segue o mouse por dentro do bloco quando ele passa por cima; (3) opcionalmente, um halo em volta da caixa e um "respirar" contínuo que chama atenção mesmo sem mouse.

A cor vem de sw-ani-color (sem ela, usa a cor do próprio texto). A força do brilho do texto é sw-ani-intensity (padrão 20; 0 desliga o brilho do texto e deixa só a luz do mouse). sw-ani-spread acende um halo em volta da caixa e sw-ani-pulse faz o brilho pulsar sozinho. No tema escuro a luz que segue o mouse clareia o que está por baixo (brilha em fundo escuro); no tema claro ela vira uma mancha de cor por trás do texto, que aparece também em fundo branco.

Quando usar

  • Card de destaque em página escura (plano mais vendido, oferta): a luz seguindo o mouse convida a explorar.
  • Letreiro de neon: "Aberto agora", "Ao vivo", "Black Friday" com sw-ani-pulse.
  • Topo de página escuro de tecnologia, jogos, música, balada.
  • Em página clara, a luz do mouse vira uma mancha de cor suave por trás do texto — combina com cartão branco e com bloco escuro.

Comece aqui

  1. 1

    Coloque o SW Core e o pacote de animação (o swcore.motion.min.js já traz o GSAP e vem antes do swcore.min.js).

    <!-- no <head> -->
    <link rel="stylesheet" href="swcore/swcore.min.css">
    <link rel="stylesheet" href="swcore/swcore.motion.min.css">
    
    <!-- no fim do <body>: o motion ANTES do swcore -->
    <script src="swcore/swcore.motion.min.js"></script>
    <script src="swcore/swcore.min.js"></script>
  2. 2

    Coloque sw-ani="glow" e a cor num bloco de fundo escuro. Passe o mouse por dentro dele.

    Passe o mouse aqui dentro
    <div sw-ani="glow" sw-ani-color="var(--sw-pri)" class="bg-g-drk r-m p-4">Passe o mouse aqui dentro</div>

Todas as variações

Cada quadro abaixo é o componente de verdade, rodando. O código embaixo é exatamente o que está no quadro: copie e cole.

1. Cor do brilho (sw-ani-color)

Passe o mouse em cada quadro: a luz acompanha o ponteiro, e o texto brilha na mesma cor. Aceita as cores do SW Core (var(--sw-pri)…) ou qualquer cor (#f97316). Sem cor, usa a cor do texto (aqui, branco).

Cor do texto
Sem cor — usa a do texto <div sw-ani="glow" class="bg-g-drk r-m p-4">Cor do texto</div>
Primária
sw-ani-color="var(--sw-pri)" <div sw-ani="glow" sw-ani-color="var(--sw-pri)" class="bg-g-drk r-m p-4">Primária</div>
Sucesso
sw-ani-color="var(--sw-suc)" <div sw-ani="glow" sw-ani-color="var(--sw-suc)" class="bg-g-drk r-m p-4">Sucesso</div>
Laranja
sw-ani-color="#f97316" <div sw-ani="glow" sw-ani-color="#f97316" class="bg-g-drk r-m p-4">Laranja</div>

2. Força do brilho no texto (sw-ani-intensity)

De 0 a 200, padrão 20. Com 0 o texto fica normal e sobra só a luz que segue o mouse.

Texto normal
sw-ani-intensity="0" — só a luz do mouse <div sw-ani="glow" sw-ani-color="var(--sw-pri)" sw-ani-intensity="0" class="bg-g-drk r-m p-4">Texto normal</div>
Discreto
sw-ani-intensity="6" — discreto <div sw-ani="glow" sw-ani-color="var(--sw-pri)" sw-ani-intensity="6" class="bg-g-drk r-m p-4">Discreto</div>
Padrão
Padrão (20) <div sw-ani="glow" sw-ani-color="var(--sw-pri)" class="bg-g-drk r-m p-4">Padrão</div>
Neon
sw-ani-intensity="45" — neon forte <div sw-ani="glow" sw-ani-color="var(--sw-pri)" sw-ani-intensity="45" class="bg-g-drk r-m p-4">Neon</div>

3. Halo em volta da caixa (sw-ani-spread)

De 0 a 200, padrão 0 (sem halo). Acende uma luz em volta do bloco inteiro, sempre ligada. É a camada que também aparece em fundo claro.

Halo leve
sw-ani-spread="16" <div sw-ani="glow" sw-ani-color="var(--sw-pri)" sw-ani-intensity="0" sw-ani-spread="16" class="bg-g-drk r-m p-4">Halo leve</div>
Halo forte
sw-ani-spread="40" <div sw-ani="glow" sw-ani-color="var(--sw-pri)" sw-ani-intensity="0" sw-ani-spread="40" class="bg-g-drk r-m p-4">Halo forte</div>
Tudo junto
Halo + texto neon <div sw-ani="glow" sw-ani-color="var(--sw-suc)" sw-ani-intensity="12" sw-ani-spread="24" class="bg-g-drk r-m p-4">Tudo junto</div>

4. Pulsando sozinho (sw-ani-pulse)

Basta escrever sw-ani-pulse (sem valor): o brilho do texto "respira" sem parar, sem precisar do mouse. Funciona também no celular.

Ao vivo
sw-ani-pulse <div sw-ani="glow" sw-ani-color="var(--sw-pri)" sw-ani-pulse class="bg-g-drk r-m p-4">Ao vivo</div>
Últimas vagas
sw-ani-pulse mais forte <div sw-ani="glow" sw-ani-color="var(--sw-err)" sw-ani-intensity="30" sw-ani-pulse class="bg-g-drk r-m p-4">Últimas vagas</div>

Tabela de opções

PalavraO que fazExemplo
Ligar
sw-ani="glow"Liga o brilho: texto em neon + luz que segue o mouse por dentro.<div sw-ani="glow">…</div>
Cor e força
sw-ani-colorCor do brilho. Padrão: a cor do texto do elemento.sw-ani-color="var(--sw-pri)"
sw-ani-intensityForça do brilho no texto, de 0 a 200. Padrão: 20. 0 desliga o brilho do texto.sw-ani-intensity="8"
sw-ani-spreadHalo em volta da caixa, de 0 a 200. Padrão: 0 (desligado).sw-ani-spread="30"
sw-ani-pulseSem valor. O brilho do texto pulsa sozinho, sem parar.sw-ani-pulse
No seu CSS (opcional)
--sw-glow-opQuanto a luz que segue o mouse aparece, de 0 a 1. Padrão: .45. Coloque numa classe sua..meu-card { --sw-glow-op: .8; }
Avançado
data-sw-forceMantém a luz do mouse e o pulso para quem ativou "reduzir movimento" no sistema.data-sw-force

Receitas prontas — usos reais

Situações que aparecem em quase todo site. Copie a que servir.

Plano em destaque numa página escura Ao vivo
Básico
R$ 49
1 página
Mais escolhido
R$ 99
Site completo + blog
<div class="l l-2 gap-4">
  <div class="bg-g-drk r-m p-4">…Básico…</div>

  <div sw-ani="glow" sw-ani-color="var(--sw-pri)" sw-ani-intensity="0" sw-ani-spread="24"
       class="bg-g-drk r-m p-4">
    <strong>Mais escolhido</strong>
    <div class="t-xg fw7">R$ 99</div>
  </div>
</div>
Letreiro de neon "Aberto agora" Ao vivo
ABERTO AGORA
<span sw-ani="glow" sw-ani-color="#22d3ee" sw-ani-intensity="14" sw-ani-pulse>
  ABERTO AGORA
</span>
Luz do mouse mais forte com uma classe sua Ao vivo
Portfólio 2026
passe o mouse — a luz aqui é mais forte
<style>
  .luz-forte { --sw-glow-op: .85; }  /* padrão .45 */
</style>

<div sw-ani="glow" sw-ani-color="var(--sw-sec)" sw-ani-intensity="0"
     class="luz-forte bg-g-drk r-m p-4">
  <strong>Portfólio 2026</strong>
</div>

API (JavaScript)

SWMotion.refresh()
Se o bloco entrou na página depois que ela carregou (AJAX, JS), chame para ele ganhar o brilho. Reinicia todas as animações da página.

Precisa de quê

  • swcore.motion.min.js (já traz o GSAP) e swcore.motion.min.css, antes do swcore.min.js.

Cuidados — erros comuns

  • Cartão branco no tema escuro: no tema escuro a luz clareia o que está atrás, então num cartão branco ela não aparece. Use bloco escuro no tema escuro (no tema claro funciona nos dois).
  • O brilho do texto vale para todo texto de dentro do bloco. Num card com muito texto isso embaça a leitura: use sw-ani-intensity="0" no card e, se quiser neon, coloque o glow só no título.
  • sw-ani="glow loop" e sw-ani="glow hover" são outra coisa: o brilho em volta, só CSS, da página Efeitos de entrada. O componente desta página é o glow sozinho.
  • Não dá para ter glow e outro efeito de mouse (tilt, magnetic) no mesmo elemento: vale só o primeiro. Coloque um dentro do outro.

O que ele não faz

  • A luz que segue o mouse só existe com mouse. No celular sobram o brilho do texto, o halo e o pulso.
  • Quem ativou "reduzir movimento" no sistema não vê a luz do mouse nem o pulso (o brilho fixo continua).