MorphCanvas
HomeGallery › Glassmorphism Stats Card

Glassmorphism Stats Card

A frosted-glass metrics card with animated counters for visitors, signups, and conversion rate.

★ 0 community votes · Safety scan passed · Sandboxed preview

About this component

Glassmorphism Stats Card is an interface component generated on MorphCanvas, an infinite AI workspace that turns written intent into reviewable HTML, CSS, and JavaScript widgets. This component passed MorphCanvas’s automated safety scan, which checks for unsafe patterns such as external network calls, storage access, inline event handlers, and code execution, and it is rendered here inside a sandboxed preview frame.

How it was built

A creator described the result they wanted, MorphCanvas routed the request through its AI provider chain with automatic failover, scanned the generated code, and published the reviewed component to the public library. You can build and publish your own components on the MorphCanvas canvas.

Source

HTML

<div class="g-stats"><h3>Product Pulse</h3><div class="g-row"><div class="g-item"><strong data-target="12480">0</strong><span>Visitors</span></div><div class="g-item"><strong data-target="342">0</strong><span>Signups</span></div><div class="g-item"><strong data-target="27">0</strong><span>Conv. %</span></div></div></div>

CSS

.g-stats{font-family:system-ui,sans-serif;max-width:340px;margin:24px auto;padding:24px;border-radius:16px;background:linear-gradient(135deg,rgba(40,60,90,.55),rgba(20,30,48,.75));border:1px solid rgba(255,255,255,.18);backdrop-filter:blur(14px);color:#eef4ff;box-shadow:0 18px 40px rgba(0,0,0,.35)}.g-stats h3{margin:0 0 16px;font-size:15px;letter-spacing:.08em;text-transform:uppercase;opacity:.8}.g-row{display:flex;gap:14px;justify-content:space-between}.g-item{text-align:center;flex:1}.g-item strong{display:block;font-size:26px;color:#7ef0e4}.g-item span{font-size:11px;opacity:.7;text-transform:uppercase;letter-spacing:.06em}

JavaScript

document.querySelectorAll(".g-item strong").forEach(function(el){var target=parseInt(el.dataset.target,10);var start=null;function step(ts){if(!start)start=ts;var p=Math.min((ts-start)/1400,1);el.textContent=Math.floor(p*target).toLocaleString();if(p<1)requestAnimationFrame(step);}requestAnimationFrame(step);});
Build your own on MorphCanvas