Magnetic Button
→Кнопка «прилипает» к курсору: в радиусе действия элемент плавно тянется за указателем и возвращается на место через линейную интерполяцию. Смещение живёт в CSS-переменных, анимация — один цикл requestAnimationFrame.
★★☆☆☆Easy
Всё, что реагирует на движение мыши: притяжение, свет, жидкие формы.
Кнопка «прилипает» к курсору: в радиусе действия элемент плавно тянется за указателем и возвращается на место через линейную интерполяцию. Смещение живёт в CSS-переменных, анимация — один цикл requestAnimationFrame.
★★☆☆☆Easy
Фонарик через clip-path: контент скрыт в темноте, круглое пятно света следует за курсором с инерцией. Координаты и радиус луча — CSS-переменные --sx / --sy / --sr, видны в Debug-режиме.
★★★☆☆Medium
Жидкий курсор: цепочка частиц с покадровой интерполяцией сливается в каплю через SVG-фильтр (feGaussianBlur + feColorMatrix). Классический gooey-эффект — без Canvas и WebGL.
★★★★★Hard
Затухающий шлейф из частиц вслед за курсором: Canvas 2D, destination-out для плавного fade и пул частиц с убывающей life.
★★★☆☆Medium
Аморфная SVG-капля: центр догоняет курсор, скорость движения растягивает якорные точки контура. Замкнутый path собирается кубическими Безье между точками.
★★★★☆Advanced
Искажение контента вокруг указателя: Canvas рисует displacement map (нейтральный 128 + радиальный сдвиг по R/G), SVG feDisplacementMap смещает пиксели сцены — эффект «линзы» без WebGL.
★★★★★Hard
Сетка ячеек на CSS Grid: расстояние до курсора задаёт «подъём» и свечение каждой ячейки, значения догоняют цель через lerp в requestAnimationFrame. Волна распространяется радиально от указателя.
★★★★☆Advanced