@pixerate/flair 0.26.0 → 0.28.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +26 -0
- package/README.md +12 -12
- package/dist/catalog/index.js +1 -1
- package/dist/{chunk-HVXWNGTW.js → chunk-4LKAPRFM.js} +983 -8
- package/dist/chunk-4LKAPRFM.js.map +1 -0
- package/dist/{chunk-G2B5L234.js → chunk-GXP4YLAP.js} +3 -3
- package/dist/{chunk-UCZ43ARE.js → chunk-VLQLRKGW.js} +2 -2
- package/dist/cli.js +2 -2
- package/dist/editor/index.js +1 -1
- package/dist/{effect-GGH3OSOT.js → effect-GGP66JI6.js} +4 -4
- package/dist/embed/index.js +2 -2
- package/dist/node.js +3 -3
- package/dist/react/index.js +2 -2
- package/dist/svelte/index.js +2 -2
- package/package.json +1 -1
- package/dist/chunk-HVXWNGTW.js.map +0 -1
- /package/dist/{chunk-G2B5L234.js.map → chunk-GXP4YLAP.js.map} +0 -0
- /package/dist/{chunk-UCZ43ARE.js.map → chunk-VLQLRKGW.js.map} +0 -0
- /package/dist/{effect-GGH3OSOT.js.map → effect-GGP66JI6.js.map} +0 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,31 @@
|
|
|
1
1
|
# @pixerate/flair
|
|
2
2
|
|
|
3
|
+
## 0.28.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- da66f72: `glare-sweep` (overlay): the light sweep duotone used to have built in, now its own effect, as 0.22.0 should have added when it took the sweep out of `image-duotone`. A soft diagonal glare glides across without a pause, with strength, speed, tilt, sharpness and colour controls. It is added light: laid over a picture with `mix-blend-mode: plus-lighter`, `image-duotone` plus `glare-sweep` at their defaults matches the old duotone to within one level in 255; with normal blending it is a slightly softer, screen-like glare. `image-duotone`'s description now points to it (rather than `shine-sweep`, a different, intermittent gloss).
|
|
8
|
+
|
|
9
|
+
## 0.27.0
|
|
10
|
+
|
|
11
|
+
### Minor Changes
|
|
12
|
+
|
|
13
|
+
- c4b5214: Eleven new catalog effects, inspired by the Slop Machine promo videos:
|
|
14
|
+
|
|
15
|
+
- **Slime curtain wipe** (`slime-curtain-wipe`): glossy goo pours down over the frame with drips and beads, then strings away to reveal the next picture.
|
|
16
|
+
- **Gooey frame** (`gooey-frame`): a wobbling slime rim round a rounded rectangle, with drips that swell, run and bead. The goo version of Electric border.
|
|
17
|
+
- **Goo vortex** (`goo-vortex`): glossy goo ribbons spiral into a ball, then fling out and splat round the frame.
|
|
18
|
+
- **Memphis pattern** (`memphis-pattern`): an 80s field of squiggles, zigzags, triangles, rings and confetti that drifts and boils.
|
|
19
|
+
- **Chevron tunnel** (`chevron-tunnel`): two-tone hazard chevrons streaming out of (or into) a centre point.
|
|
20
|
+
- **Toast notification** (`toast-notification`): a toast that slides in, draws its tick, runs down its timer bar and slides away. Plays on click.
|
|
21
|
+
- **Slider scrub** (`slider-scrub`): a cursor drags a slider knob while the fill and value count with it. Plays on click.
|
|
22
|
+
- **Upload card** (`upload-card`): an image placeholder whose progress bar fills as a percentage counts, then the picture fades in with a check.
|
|
23
|
+
- **Doodle burst** (`doodle-burst`): a tilted label card pops in while hand-drawn doodles burst out round it, with a line-boil wobble.
|
|
24
|
+
- **Exploded layers** (`exploded-layers`): an isometric card whose layers lift apart with soft shadows between them, then settle back.
|
|
25
|
+
- **Seal badge** (`seal-badge`): a scalloped or starburst seal that spins with its text upright, pulsing with a glint.
|
|
26
|
+
|
|
27
|
+
The README's effect counts and category table are updated, including last release's Whip pan.
|
|
28
|
+
|
|
3
29
|
## 0.26.0
|
|
4
30
|
|
|
5
31
|
### Minor Changes
|
package/README.md
CHANGED
|
@@ -19,7 +19,7 @@ Flair gives products a library of good-looking, configurable visual effects (her
|
|
|
19
19
|
|
|
20
20
|
### Core Capabilities
|
|
21
21
|
|
|
22
|
-
- 🎨 **Effect catalog (`@pixerate/flair/catalog`)**:
|
|
22
|
+
- 🎨 **Effect catalog (`@pixerate/flair/catalog`)**: 310 effects, each with controls and presets. There are 221 WebGL2 shaders (gradients, organic textures and growth, patterns, light, lighting that relights pictures, space, retro and pixel art, image treatments, transparent overlays, text fills, image morphs, pointer interactions, pyrotechnics, time warps, melting, electricity, splatters, bubbles, stickers, pointer trails, particles, debris, impacts, comic looks, atmosphere, glows, shadows, distortions, transitions) and 89 animated SVG effects (loaders, status icons, animated titles, shape morphs, UI micro-interactions, pixel sprites, stickers, cartoon effects, glowing and lifting UI, a lamp switch, charts, counters, node graphs). [Browse them live](https://pixerate.github.io/flair/).
|
|
23
23
|
- ⚡ **Shader engine**:
|
|
24
24
|
- Shadertoy-style GLSL ES 3.00 fragment shaders, with controls declared in the source (`// @control`), including image inputs.
|
|
25
25
|
- Compile errors come back with line numbers that match the source.
|
|
@@ -59,7 +59,7 @@ The `flair` CLI inspects shaders, writes standalone pages and directs scenes (se
|
|
|
59
59
|
```mermaid
|
|
60
60
|
graph TD
|
|
61
61
|
subgraph Effects["Effects (no dependencies)"]
|
|
62
|
-
Catalog["catalog:
|
|
62
|
+
Catalog["catalog: 310 effects + presets"]
|
|
63
63
|
Shader["shader engine: controls, compile, render, GIF, HTML"]
|
|
64
64
|
Vector["vector motion: SvgMotion, SvgPlayer"]
|
|
65
65
|
Time["time: clocks, easing, keyframes, noise"]
|
|
@@ -260,7 +260,7 @@ Each shader with an image control has a `video` field that says how it suits vid
|
|
|
260
260
|
|
|
261
261
|
A video from another site needs `crossOrigin = "anonymous"` and that site's CORS consent. Without it, the control shows black and `onImageError` explains why. For frame-exact output, step the video with `ShaderFrames`: pause the video, then for each frame `await seekVideo(video, t); frames.render(t)`. Both `ShaderRenderer.ready()` and `ShaderFrames.ready()` wait for each live video's first frame.
|
|
262
262
|
|
|
263
|
-
Overlay shaders (`category: "overlay"`) have `transparent: true`: they write coverage to `fragColor.a` and draw nothing elsewhere, so render them with `new ShaderRenderer(host, { alpha: true })` (or `new ThumbnailPool({ alpha: true })`) and lay the canvas over a picture, video or page. Interaction effects answer the pointer. Interactive shaders read `iPointer` and `iClicks`, so they work in any `ShaderRenderer` with no wiring, and play an idle demo when nobody is pointing (turn off "Demo when idle" to stop it). Vector micro-interactions carry a `trigger`: pass it to the player, `new SvgPlayer(host, renderVectorEffect(effect), { trigger: effect.trigger })`. A hover or press trigger plays to the end while hovered or held and back again after; a click trigger plays the next step on each click, so toggles turn on and off. Hosts can drive them too, with `player.setActive(on)` and `player.advance()` (from a keyboard handler, say).
|
|
263
|
+
Overlay shaders (`category: "overlay"`) have `transparent: true`: they write coverage to `fragColor.a` and draw nothing elsewhere, so render them with `new ShaderRenderer(host, { alpha: true })` (or `new ThumbnailPool({ alpha: true })`) and lay the canvas over a picture, video or page. Some overlays are added light: give `glare-sweep`'s canvas `mix-blend-mode: plus-lighter` and it adds exactly (over `image-duotone`, that is the duotone with the gliding glare it used to have built in). Interaction effects answer the pointer. Interactive shaders read `iPointer` and `iClicks`, so they work in any `ShaderRenderer` with no wiring, and play an idle demo when nobody is pointing (turn off "Demo when idle" to stop it). Vector micro-interactions carry a `trigger`: pass it to the player, `new SvgPlayer(host, renderVectorEffect(effect), { trigger: effect.trigger })`. A hover or press trigger plays to the end while hovered or held and back again after; a click trigger plays the next step on each click, so toggles turn on and off. Hosts can drive them too, with `player.setActive(on)` and `player.advance()` (from a keyboard handler, say).
|
|
264
264
|
|
|
265
265
|
To morph between any two SVG shapes, `morphPaths(from, to)` (from `@pixerate/flair/vector`) returns two paths with one structure, so `attrs: { d: [a, b] }` blends them point by point: curves and arcs are read, pieces are paired by position and size, and a piece with no partner grows from or shrinks to a point (draw them with `fill-rule="evenodd"`). `morphSequence` does the same for three or more shapes. `feature-morph` morphs two photos from five matching points, and `silhouette-morph` morphs any two silhouettes or logos (or words, through `textImage`).
|
|
266
266
|
|
|
@@ -457,33 +457,33 @@ The exporters carry the camera too:
|
|
|
457
457
|
| :--- | :--- |
|
|
458
458
|
| gradient | mesh gradient, aurora, gradient flow, conic sweep, silk |
|
|
459
459
|
| organic | liquid marble, smoke, lava lamp, plasma, caustics, flames, reaction diffusion, cell division, coral growth, veins, ferrofluid, jellyfish, fur, blob morph |
|
|
460
|
-
| pattern | dot wave, Truchet flow, hex pulse, living cells, moiré rings, kaleidoscope, stripes, neon circuit |
|
|
460
|
+
| pattern | dot wave, Truchet flow, hex pulse, living cells, moiré rings, kaleidoscope, stripes, Memphis pattern, chevron tunnel, neon circuit |
|
|
461
461
|
| light / space | bokeh, god rays, sparkles, neon ripple, light ribbons, warp starfield, nebula, event horizon |
|
|
462
462
|
| lighting | relight, point light, studio lighting, time of day, gobo projection, neon spill, candlelight, pool caustics, party lights, lamp switch |
|
|
463
463
|
| retro | synthwave, digital rain, dithered gradient, TV static, 8-bit, Game Boy screen, pixel fire, pixel landscape, OutRun road, palette cycle, raster bars, tape loading, pixel water, pixel text, coin spin, space invader, heart health bar, chomp loader |
|
|
464
464
|
| image | ripple, glitch, duotone, halftone, pixel reveal, Ken Burns, ASCII art, shatter, melt, risograph, thermal, edge glow, tilt-shift, slit-scan, mosaic flip, chromatic lens, oil paint, CRT screen, film look |
|
|
465
|
-
| overlay | rain on glass, snowfall, lens flare, vignette & grain, scanline sweep, spotlight, embers, shine sweep, frost creep, viewfinder |
|
|
465
|
+
| overlay | rain on glass, snowfall, lens flare, vignette & grain, scanline sweep, spotlight, embers, shine sweep, glare sweep, frost creep, viewfinder |
|
|
466
466
|
| text | shader text, drip text, typewriter, scramble text, kinetic stagger, neon sign, stroke draw text, split reveal, highlighter, word cycle, liquid fill, glitch text, extruded text |
|
|
467
467
|
| morph | feature morph, silhouette morph, shape morph, icon toggle, morph sequence, gooey morph, particle morph, digit morph |
|
|
468
|
-
| interaction | click ripple, click burst, cursor glow, hover liquid, X-ray reveal, magnifier, holo card, press charge, hover swap, like button, toggle switch, checkbox, menu toggle, bookmark, copy button, send button, download button, link hover, button hover fill, tooltip pop, press button |
|
|
468
|
+
| interaction | click ripple, click burst, cursor glow, hover liquid, X-ray reveal, magnifier, holo card, press charge, hover swap, like button, toggle switch, checkbox, menu toggle, bookmark, copy button, send button, download button, link hover, button hover fill, tooltip pop, press button, toast notification, slider scrub |
|
|
469
469
|
| pyrotechnics | fireworks, sparkler, explosion, spark fountain, roman candle, fuse burn, smoke bomb, light show, firework burst |
|
|
470
470
|
| timewarp | time echo, chrono split, time slice, VHS rewind, bullet time, time tunnel, speed ramp, stutter freeze, time-lapse clock |
|
|
471
471
|
| melt | drip melt, heat haze, wax melt, melting text, liquify, melting clock, lava flow, ice cube melt, candle |
|
|
472
472
|
| electric | lightning, Tesla arc, plasma ball, electric border, electric text, Jacob's ladder, short circuit, power surge, electric field, zap icon, power button, battery charge |
|
|
473
|
-
| splatter | paint splatter, ink splash, splash crown, goo splat, paint roller, water splash, splat stamp |
|
|
473
|
+
| splatter | paint splatter, ink splash, splash crown, goo splat, paint roller, water splash, slime curtain wipe, gooey frame, goo vortex, splat stamp |
|
|
474
474
|
| bubble | soap bubbles, underwater bubbles, fizz, foam, bubble wrap, lava bubbles, chat bubble, bubble pop loader |
|
|
475
|
-
| sticker | holo foil sticker, sticker peel reveal, sticker slap, sticker peel, holo sticker, sticker sheet, stamp badge, washi tape |
|
|
475
|
+
| sticker | holo foil sticker, sticker peel reveal, sticker slap, sticker peel, holo sticker, sticker sheet, stamp badge, washi tape, seal badge |
|
|
476
476
|
| trail | comet trail, ribbon trail, sparkle trail, brush trail, ghost trail, light painting, motion streak, dotted trail |
|
|
477
477
|
| particles | flow particles, magnetic swarm, dust in light, boids, particle text, confetti cannon, fireflies |
|
|
478
478
|
| debris | rubble fall, glass shatter, crumbling text, paper shreds, leaves blowing, sand erosion |
|
|
479
479
|
| impact | shockwave, ground slam, impact frame, meteor strike, screen shake, hit marker |
|
|
480
|
-
| comic | comic book, cel shade, focus lines, action lines, sound effect, speech bubble, fight cloud, dizzy stars, anime emotes, cartoon poof, line boil |
|
|
480
|
+
| comic | comic book, cel shade, focus lines, action lines, sound effect, speech bubble, fight cloud, dizzy stars, anime emotes, cartoon poof, line boil, doodle burst |
|
|
481
481
|
| atmosphere | volumetric clouds, fog banks, rising steam, mist over image, sky timelapse, smoke curl, dry ice fog |
|
|
482
482
|
| glow | aura, bloom, pulsing halo, neon outline, backlight glow, rim light, glow ring pulse, glow button |
|
|
483
|
-
| shadow | long shadow, drop shadow lift, light sweep shadows, contact shadow, window shadows, shadow puppets, lift card |
|
|
483
|
+
| shadow | long shadow, drop shadow lift, light sweep shadows, contact shadow, window shadows, shadow puppets, lift card, exploded layers |
|
|
484
484
|
| distortion | twirl, pinch & bulge, fisheye, mirror tiles, wave warp, ribbed glass, shower glass, datamosh, polar warp, texture displace |
|
|
485
|
-
| transition | liquid morph, displacement, luma fade, particle swap, ink bleed, pixel dissolve, comic panels, wipe, iris, block dissolve, grid wipe, glass wipe, twister, light leak, cross zoom |
|
|
486
|
-
| loader / icon / data | spinner, bouncing dots, pulse ping, equalizer, progress ring, bar chart, line chart, stat counter, route, timeline track, success check, error cross, heartbeat, signature, confetti, flow network |
|
|
485
|
+
| transition | liquid morph, displacement, luma fade, particle swap, ink bleed, pixel dissolve, comic panels, wipe, iris, block dissolve, grid wipe, glass wipe, twister, light leak, cross zoom, whip pan |
|
|
486
|
+
| loader / icon / data | spinner, bouncing dots, pulse ping, equalizer, progress ring, bar chart, line chart, stat counter, route, timeline track, success check, error cross, heartbeat, signature, confetti, flow network, upload card |
|
|
487
487
|
|
|
488
488
|
Every shader is self-contained and compiles on WebGL2. Open [`#check`](https://pixerate.github.io/flair/#check) on the demo to compile the catalog on your own GPU. [`#bench`](https://pixerate.github.io/flair/#bench) times every shader per frame on your GPU (`#bench?size=720&only=aurora,fur` for a size or a few effects; keep the tab in front, since a hidden tab or other drawing inflates every number).
|
|
489
489
|
|
package/dist/catalog/index.js
CHANGED