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
Coloque o SW Core e o pacote de animação (o
swcore.motion.min.jsjá traz o GSAP e vem antes doswcore.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
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).
<div sw-ani="glow" class="bg-g-drk r-m p-4">Cor do texto</div>
<div sw-ani="glow" sw-ani-color="var(--sw-pri)" class="bg-g-drk r-m p-4">Primária</div>
<div sw-ani="glow" sw-ani-color="var(--sw-suc)" class="bg-g-drk r-m p-4">Sucesso</div>
<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.
<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>
<div sw-ani="glow" sw-ani-color="var(--sw-pri)" sw-ani-intensity="6" class="bg-g-drk r-m p-4">Discreto</div>
<div sw-ani="glow" sw-ani-color="var(--sw-pri)" class="bg-g-drk r-m p-4">Padrão</div>
<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.
<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>
<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>
<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.
<div sw-ani="glow" sw-ani-color="var(--sw-pri)" sw-ani-pulse class="bg-g-drk r-m p-4">Ao vivo</div>
<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
| Palavra | O que faz | Exemplo |
|---|---|---|
| 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-color | Cor do brilho. Padrão: a cor do texto do elemento. | sw-ani-color="var(--sw-pri)" |
sw-ani-intensity | Força do brilho no texto, de 0 a 200. Padrão: 20. 0 desliga o brilho do texto. | sw-ani-intensity="8" |
sw-ani-spread | Halo em volta da caixa, de 0 a 200. Padrão: 0 (desligado). | sw-ani-spread="30" |
sw-ani-pulse | Sem valor. O brilho do texto pulsa sozinho, sem parar. | sw-ani-pulse |
| No seu CSS (opcional) | ||
--sw-glow-op | Quanto 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-force | Manté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.
<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>
<span sw-ani="glow" sw-ani-color="#22d3ee" sw-ani-intensity="14" sw-ani-pulse>
ABERTO AGORA
</span>
<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()Precisa de quê
swcore.motion.min.js(já traz o GSAP) eswcore.motion.min.css, antes doswcore.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"esw-ani="glow hover"são outra coisa: o brilho em volta, só CSS, da página Efeitos de entrada. O componente desta página é oglowsozinho.- 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).

