diff --git a/profile.html b/profile.html index b035d50..2f7477f 100644 --- a/profile.html +++ b/profile.html @@ -12,6 +12,28 @@ + +
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/testp.css b/testp.css index 658c1de..503ea20 100644 --- a/testp.css +++ b/testp.css @@ -7,6 +7,19 @@ body { /*background-image: url(./assets/images/banner-bg.svg);*/ } +/* Circle styles */ +.circle { + height: 24px; + width: 24px; + border-radius: 50%; + background-color: black; + position: fixed; + top: 0; + left: 0; + pointer-events: none; + z-index: 99999999; + transition: transform 0.1s ease-out; +} .fa-home { diff --git a/testp.js b/testp.js index f154110..3d3cae8 100644 --- a/testp.js +++ b/testp.js @@ -41,3 +41,54 @@ const displayLastActive = () => { document.addEventListener('DOMContentLoaded', displayLastActive); +// Coordinates for the cursor +const coords = { x: 0, y: 0 }; +const circles = document.querySelectorAll(".circle"); + +// Colors for the circles +const colors = [ + "#ffb56b", "#fdaf69", "#f89d63", "#f59761", "#ef865e", "#ec805d", + "#e36e5c", "#df685c", "#d5585c", "#d1525c", "#c5415d", "#c03b5d", + "#b22c5e", "#ac265e", "#9c155f", "#950f5f", "#830060", "#7c0060", + "#680060", "#60005f", "#48005f", "#3d005e" +]; + +// Assign colors and initial position to each circle +circles.forEach(function (circle, index) { + circle.x = 0; + circle.y = 0; + circle.style.backgroundColor = colors[index % colors.length]; +}); + +// Update the coordinates when the mouse moves +window.addEventListener("mousemove", function (e) { + coords.x = e.clientX; + coords.y = e.clientY; +}); + +// Animation function to move the circles +function animateCircles() { + let x = coords.x; + let y = coords.y; + + circles.forEach(function (circle, index) { + // Update the position and scale of each circle + circle.style.left = x - 12 + "px"; + circle.style.top = y - 12 + "px"; + circle.style.scale = (circles.length - index) / circles.length; + + circle.x = x; + circle.y = y; + + // Get the next circle in the sequence + const nextCircle = circles[index + 1] || circles[0]; + x += (nextCircle.x - x) * 0.3; + y += (nextCircle.y - y) * 0.3; + }); + + // Repeat the animation + requestAnimationFrame(animateCircles); +} + +// Start the animation +animateCircles(); \ No newline at end of file