SHADERERA®Video made in code · v0.1.2PluginsAgentsGitHub ↗
← PluginsTypographycomponent · v0.1.0 · MIT
text-kineticOfficial · by Shaderera

Kinetic type

Canvas2D text primitives: ASCII scramble, decode in and scramble out, horizontal band glitch, fit to width, hollow outlines, timecode.

Add it to a filmOr ask your agent
“Use the shaderera-plugins skill to add text-kinetic to this film and wire it in, then run check and show me a still.”
Type
component · Typography
Version
0.1.0 · published
Licence
MIT
Built on
No other plugins
npm
No packages
Tags
glitch, scramble, decode, ascii, text, kinetic typography, captions
Source on GitHub ↗
READMEtext-kinetic

How to
use it.

Canvas2D text that moves like data: ASCII scramble, decode-in and scramble-out, band glitch, fit to width, hollow outlines.

README.mdexample
import { decoded, fitWidth, glitched, scramble } from './type/kinetic.ts'// in open: await host.io.font('assets/fonts/IBMPlexMono-SemiBold.ttf', 'IBM Plex Mono SemiBold')const font = '"IBM Plex Mono SemiBold"'   // a family alone: the size is put in front of itconst d = decoded('BEAT GRID', t, { from: 2, to: 4, frame: options.frame, seed: 1 })if (d.visible) {  ctx.fillStyle = '#fff'  const size = fitWidth(ctx, font, 'BEAT GRID', W * 0.6)  glitched(ctx, d.text, W / 2, H / 2, { font, size, frame: options.frame, align: 'center', amount: d.settled ? 0.2 : 1 })}ctx.fillText(scramble('174.3 BPM', options.frame, 0.4), 40, 40)   // a number that never settles

Deterministic: every choice is a hash of the frame and the character. Pass options.frame.

font is a family alone, with no size or weight: the functions write ${size}px ${font}, and 64px 600 "IBM Plex Mono" is not a CSS font, so the canvas would fall back to another face. Register each weight under its own family name.

More in Typography05 plugins

More in Typography