
The same rangoli sized for a full page, a card row and a button. A free, live rangoli loader for sites and apps.
Updated November 2026
Use it when you need one loader across a product. The same rangoli appears at page, card and button size, so you can see how it holds up small. At button size it uses one colour, because four colours would be hard to see at that scale.
npm i exodeui.ExodeUICanvas. Taps and hovers work out of the box, and fireTrigger plays it from your code.import { ExodeUICanvas, useExodeUI } from 'exodeui';
export function RangoliInlineSpinner() {
const { setEngine, fireTrigger } = useExodeUI();
return (
<>
<div style={{ width: 400, height: 300 }}>
<ExodeUICanvas
src="/ui-gallery/files/rangoli-inline-spinner.bexode"
autoPlay
onReady={setEngine}
style={{ width: '100%', height: '100%' }}
/>
</div>
{/* Optional: taps on the canvas already work */}
<button onClick={() => fireTrigger('in_whirl')}>Play from code</button>
</>
);
}