Inputs animation · .sds-input-border-beam
Border Beam
Border Beam — input animation. Add the class .sds-input-border-beam to any element — it loops continuously as soon as the class is applied, with no JavaScript.
Live demo
Demo uses this site's neutral theme; override --sds-primary to match your brand.
Quick start
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@salkomdesignstudio/sds-motion-forge/dist/categories/inputs.min.css" />
<input class="sds-input-border-beam" placeholder="Type here" />
Loads only the inputs bundle (core is included).Prefer one file? Use https://cdn.jsdelivr.net/npm/@salkomdesignstudio/sds-motion-forge/dist/motion.min.css (all 604 effects).
How it works
Plays as soon as the class is applied, looping continuously. It animates an expanding outline. Timing is fixed for this effect, but you can still override animation-duration/timing-function on the element.
Technical details
| Class | .sds-input-border-beam |
|---|---|
| Category | Inputs |
| Runs | loops continuously, as soon as the class is applied |
| Animated properties | outline-color, outline-offset, outline-width |
| Compositor-only | No — also animates paint or layout properties |
| Needs child elements | No |
| Needs per-character spans | No |
| JavaScript | None required |
| Keyframes | sds-inputBorderBeam |
| Design tokens | n/a |
| Since | 4.0.3 |
Copy-paste code
HTML
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8" />
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@salkomdesignstudio/sds-motion-forge/dist/motion.min.css" />
</head>
<body>
<input class="sds-input-border-beam" placeholder="Type here" />
</body>
</html>React / Next.js
import "@salkomdesignstudio/sds-motion-forge/dist/motion.min.css";
export default function Demo() {
return (
<input className="sds-input-border-beam" placeholder="Type here" />
);
}Angular
// angular.json → architect.build.options.styles:
// "node_modules/@salkomdesignstudio/sds-motion-forge/dist/motion.min.css"
import { Component } from '@angular/core';
@Component({
selector: 'app-demo',
standalone: true,
template: `
<input class="sds-input-border-beam" placeholder="Type here" />
`,
})
export class DemoComponent {}Tailwind CSS
/* app.css — Tailwind v4 */
@import "tailwindcss";
@import "@salkomdesignstudio/sds-motion-forge/dist/motion.min.css";
/* then use the class like any other: */
<input class="sds-input-border-beam" placeholder="Type here" />Typed React, Angular, Tailwind and Web Components wrappers live in packages/ in the repository and are not yet published to npm; the snippets above need only the CSS.
Related animations
- Border Comet Loop
- Border Corners
- Border Heartline
- Border Orbiters
- Border Rain
- Border Static
- Border Tide
- Glow Border
All 100 inputs animations · Installation & usage docs · Custom bundle builder