Ephemeral Memory
CSSA temporary memory block fades into view, holds its solid shape while a progress bar completes, and then dissolves.
- Tier
- CSS
- Dependencies
- None
- Duration
- 4.2 s, loops
- Categories
- Data and progress
- Use cases
- Determinate progress, Security and trust
- Industries
- SaaS and software, Security and identity
- Style
- Geometric solid · light stroke
- Set
- enclave
- Tags
- fadegeometricprogressminimalui
Companion assets
The same artwork, not animated. Derived from the entry’s own resting state, so it matches exactly.
Code
animation.svg
<svg xmlns="http://www.w3.org/2000/svg" fill="none" aria-hidden="true" class="pulsar pulsar-enclave-ephemeral" data-pulsar="enclave-ephemeral" viewBox="0 0 160 96"><rect width="76" height="48" x="42" y="24" stroke="currentColor" stroke-dasharray="3 3" stroke-width="1.5" opacity=".3" rx="6"></rect><g class="enclave-eph-block"><rect width="60" height="32" x="50" y="32" fill="var(--pulsar-accent, currentColor)" fill-opacity=".2" stroke="var(--pulsar-accent, currentColor)" stroke-width="2" rx="4"></rect><line x1="58" x2="102" y1="52" y2="52" stroke="var(--pulsar-accent, currentColor)" stroke-linecap="round" stroke-width="2" class="enclave-eph-bar"></line><circle cx="80" cy="42" r="2.5" fill="var(--pulsar-accent, currentColor)"></circle></g></svg>
animation.css
.pulsar-enclave-ephemeral {
display: block;
overflow: visible;
}
.pulsar-enclave-ephemeral .enclave-eph-block {
animation: enclave-ephemeral-block-anim 4200ms ease infinite;
}
.pulsar-enclave-ephemeral .enclave-eph-bar {
stroke-dasharray: 44;
stroke-dashoffset: 44;
animation: enclave-ephemeral-bar-anim 4200ms cubic-bezier(0.4, 0, 0.2, 1) infinite;
}
@keyframes enclave-ephemeral-block-anim {
0%,
15% {
opacity: 0;
transform: scale(0.9);
transform-origin: 80px 48px;
}
30%,
75% {
opacity: 1;
transform: scale(1);
transform-origin: 80px 48px;
}
88%,
100% {
opacity: 0;
transform: scale(0.9);
transform-origin: 80px 48px;
}
}
@keyframes enclave-ephemeral-bar-anim {
0%,
30% {
stroke-dashoffset: 44;
}
65%,
80% {
stroke-dashoffset: 0;
}
90%,
100% {
stroke-dashoffset: 44;
}
}
@media (prefers-reduced-motion: reduce) {
.pulsar-enclave-ephemeral * {
animation: none !important;
}
}