Learn with us how to create a Particles Cursor in CSS and JavaScript!
If you found us on TikTok on the following post, check out this article and copy-paste the full code!
Happy coding! 😻
@creative.tim Curious what CSS and JS can do? How to #50 it’s only an example. Check the link in bio for the full code 💻 #programming #webdev #devtok #css #coding #code #it ♬ original sound - Creative Tim
Contents:
1. HTML Code
2. CSS Code
3. Javascript Code
Get your code ⬇️
1. HTML Code
<div id="app">
<div id="hero">
<h1>Creative Tim<br/>- Cursor -</h1>
</div>
</div>
2. CSS Code
body, html, #app {
margin: 0;
width: 100%;
height: 100%;
}
#app {
overflow: hidden;
touch-action: pan-up;
color: #ADF7FF;
font-family: 'Montserrat', sans-serif;
text-align: center;
text-shadow: 0 0 5px #ADF7FF, 0 0 20px #000, 0 0 30px #000;
}
#app h1 {
--fontSize: 60px;
--lineHeight: 80px;
width: auto;
height: calc(2 * var(--lineHeight));
line-height: var(--lineHeight);
margin: calc(50vh - var(--lineHeight)) auto 0;
font-size: var(--fontSize);
}
#app a {
margin-top: 10px;
display: inline-block;
text-decoration: none;
color: #fff;
}
#app canvas {
display: block;
position: fixed;
z-index: -1;
top: 0;
}
3. Javascript Code
import { particlesCursor } from 'https://unpkg.com/[email protected]/build/threejs-toys.module.cdn.min.js'
const pc = particlesCursor({
el: document.getElementById('app'),
gpgpuSize: 512,
colors: [0x00ff00, 0x0000ff],
color: 0xff0000,
coordScale: 0.5,
noiseIntensity: 0.001,
noiseTimeCoef: 0.0001,
pointSize: 5,
pointDecay: 0.0025,
sleepRadiusX: 250,
sleepRadiusY: 250,
sleepTimeCoefX: 0.001,
sleepTimeCoefY: 0.002
})
document.body.addEventListener('click', () => {
pc.uniforms.uColor.value.set(Math.random() * 0xffffff)
pc.uniforms.uCoordScale.value = 0.001 + Math.random() * 2
pc.uniforms.uNoiseIntensity.value = 0.0001 + Math.random() * 0.001
pc.uniforms.uPointSize.value = 1 + Math.random() * 10
})
I hope you did find this tutorial useful!
Read our new article to find our what Javascript Void (0) is!
For more web development or UI/UX design tutorials, follow us on:
Other useful resources: