Spinner
Accessible loading spinner with variants and sizes; respects reduced motion
Same BEM classes and behavior as Astro, Svelte, and React.
Add this component
The command below includes <strong>Spinner</strong>—run it in your project directory to install this component (and the CSS if needed). No prompts.
Choose your package manager — click a tab to select, then copy the command.
npx rizzo-css add Spinner
pnpm dlx rizzo-css add Spinner
npx rizzo-css add Spinner
bunx rizzo-css add Spinner
Live examples
Usage
Usage
Full example for each framework (Astro, Vanilla, Svelte, Vue, React). Switch framework via View as or by clicking a Usage tab—both stay in sync.
Astro Vanilla Svelte Vue React ---
import Spinner from '../components/astro/Spinner.astro';
---
<Spinner />
<Spinner class="spinner--success spinner--lg" />
<!-- Rizzo CSS. No script needed. -->
<div class="spinner" role="status" aria-label="Loading"></div>
<div class="spinner spinner--success spinner--lg" role="status" aria-label="Loading"></div>
<script>
import { Spinner } from '$lib/rizzo';
</script>
<Spinner />
<Spinner class="spinner--success spinner--lg" />
<script setup>
import Spinner from '@/components/rizzo/Spinner.vue';
</script>
<template>
<Spinner />
<Spinner variant="success" size="lg" />
</template>
import { Spinner } from './components/react';
<Spinner />
<Spinner variant="success" size="lg" />
Other frameworks: Astro · Vanilla · Svelte · React