Skip to content

Neon Loader

A copy-paste neon & glow component in pure HTML & CSS. Zero dependencies, framework-agnostic, MIT-licensed.

Neon & GlowHTMLCSSany framework

Copy into your project

HTML
<!-- Neon Loader — glowing ring spinner -->
<div class="nuda-neon-loader" role="status" aria-label="Loading">
  <div class="nuda-neon-loader__ring"></div>
</div>
CSS
/* ── Neon Loader ─────────────────────────────────────────────
   A spinning ring with a glowing leading edge (drop-shadow).
   Customize:
     --neon-loader-color : neon hue
     --neon-loader-size  : diameter
     --neon-loader-speed : rotation cycle
   ──────────────────────────────────────────────────────────── */
.nuda-neon-loader {
  --neon-loader-color: #e4ff54;
  --neon-loader-size: 44px;
  --neon-loader-speed: 1s;
  padding: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.nuda-neon-loader__ring {
  width: var(--neon-loader-size);
  height: var(--neon-loader-size);
  border-radius: 50%;
  border: 3px solid rgba(228, 255, 84, 0.12);
  border-top-color: var(--neon-loader-color);
  filter: drop-shadow(0 0 6px var(--neon-loader-color));
  animation: nuda-neon-loader-spin var(--neon-loader-speed) linear infinite;
  will-change: transform;
}

@keyframes nuda-neon-loader-spin { to { transform: rotate(360deg); } }

@media (prefers-reduced-motion: reduce) {
  .nuda-neon-loader__ring { animation: none; }
}

How to use Neon Loader

Paste the HTML where you need it and the CSS into a global stylesheet (or a <style> tag). Every class is prefixed nuda- so it never collides with Tailwind or your own styles. Tweak the CSS custom properties to match your design system.

Works in React, Vue, Svelte, Astro, Next.js, Nuxt, Laravel Blade, Django, Rails — or a single .html file. No npm install, no build step.

More neon & glow components

← Browse all NudaUI components