Editorial Slideshow
A split image and story slideshow with a separate editorial column, coordinated captions and eight transitions.
Install the component, then paste your configured usage. Your settings are included in the code below.
curl -fsS https://arclenui.dev/arclen-ui.mjs -o arclen-ui.mjs && node arclen-ui.mjs add editorial-slideshow --origin https://arclenui.dev --settings '{"transition":"blur","images":["soft-horizons","research-workspace","glass-in-bloom"],"titles":["A place to explore","Ideas, connected","Room to think"],"descriptions":["A simple place to ask, research and plan.","Bring sources together and turn research into a brief.","Clear glass above a meadow in soft morning light."],"alts":["AI prompt composer with Research and Plan controls above a pastel wildflower meadow under peach clouds","Ivory research workspace with source cards and a connected synthesis diagram above a flowering meadow","A clear floating glass orb above sage grass and pastel wildflowers in soft morning light"],"label":"Soft horizons","height":500,"radius":0,"duration":650,"interval":5000,"autoplay":true,"accent":"#748366","background":"#171717","foreground":"#ffffff","heightMode":"fill","imageFit":"cover","focalX":50,"focalY":50,"imageScale":1,"blurAmount":16,"zoomAmount":0.18,"showNavigation":true,"showIndicators":true}'import { EditorialSlideshow } from "@/components/editorial-slideshow";
export default function Example() {
return <EditorialSlideshow {...{
"transition": "blur",
"images": [
"soft-horizons",
"research-workspace",
"glass-in-bloom"
],
"titles": [
"A place to explore",
"Ideas, connected",
"Room to think"
],
"descriptions": [
"A simple place to ask, research and plan.",
"Bring sources together and turn research into a brief.",
"Clear glass above a meadow in soft morning light."
],
"alts": [
"AI prompt composer with Research and Plan controls above a pastel wildflower meadow under peach clouds",
"Ivory research workspace with source cards and a connected synthesis diagram above a flowering meadow",
"A clear floating glass orb above sage grass and pastel wildflowers in soft morning light"
],
"label": "Soft horizons",
"height": 500,
"radius": 0,
"duration": 650,
"interval": 5000,
"autoplay": true,
"accent": "#748366",
"background": "#171717",
"foreground": "#ffffff",
"heightMode": "fill",
"imageFit": "cover",
"focalX": 50,
"focalY": 50,
"imageScale": 1,
"blurAmount": 16,
"zoomAmount": 0.18,
"showNavigation": true,
"showIndicators": true
}} />;
}| Property | Type | Default |
|---|---|---|
transitionTransition Options: blur (Blur), fade (Fade), slide (Slide), slideUp (Slide Up), cover (Cover), wipe (Wipe), zoom (Zoom), none (None) | select | "blur" |
imagesImage URLs or bundled artwork Minimum 1 itemsMaximum 12 itemsUp to 2048 characters per item | string-list | ["soft-horizons","research-workspace","glass-in-bloom"] |
titlesSlide titles Minimum 0 itemsMaximum 12 itemsUp to 100 characters per item | string-list | ["A place to explore","Ideas, connected","Room to think"] |
descriptionsSlide descriptions Minimum 0 itemsMaximum 12 itemsUp to 240 characters per item | string-list | ["A simple place to ask, research and plan.","Bring sources together and turn research into a brief.","Clear glass above a meadow in soft morning light."] |
altsImage descriptions Minimum 0 itemsMaximum 12 itemsUp to 200 characters per item | string-list | ["AI prompt composer with Research and Plan controls above a pastel wildflower meadow under peach clouds","Ivory research workspace with source cards and a connected synthesis diagram above a flowering meadow","A clear floating glass orb above sage grass and pastel wildflowers in soft morning light"] |
labelRegion label Up to 100 characters | text | "Soft horizons" |
heightHeight 300–900Step 10 | number | 500 |
radiusCorner radius 0–48Step 1 | number | 0 |
durationTransition duration 0–1200Step 10 | number | 650 |
intervalAutoplay interval 2000–15000Step 500 | number | 5000 |
autoplayAutoplay | boolean | true |
accentAccent | color | "#748366" |
backgroundSurface | color | "#171717" |
foregroundText | color | "#ffffff" |
heightModeHeight mode Options: fixed, fill | select | "fill" |
imageFitImage fit Options: cover, contain | select | "cover" |
focalXHorizontal focal point 0–100Step 1 | number | 50 |
focalYVertical focal point 0–100Step 1 | number | 50 |
imageScaleImage scale 1–1.5Step 0.05 | number | 1 |
blurAmountBlur strength 0–40Step 1 | number | 16 |
zoomAmountZoom strength 0.02–0.5Step 0.01 | number | 0.18 |
showNavigationNavigation arrows | boolean | true |
showIndicatorsSlide indicators | boolean | true |
Editorial Slideshow
A dominant image beside a separate editorial story column, with progress bars and bare arrow controls. On narrow hosts the story becomes a compact footer. The default Soft Horizons series shows a fictional AI composer, research workspace and glass orb in a pastel flowering meadow. Product interfaces in the artwork are static illustrations. showNavigation controls arrows; showIndicators controls progress bars. The story column always shows captions and scrolls when text exceeds the available space. Image changes coordinate a caption fade and 8px rise, capped at 280ms or the configured duration. This skips when paused, hidden, reduced motion, zero duration or None.
import {EditorialSlideshow} from './components/editorial-slideshow';
<EditorialSlideshow heightMode="fixed" height={560} transition="blur" autoplay={true} />Default bundled image keys: soft-horizons, research-workspace, glass-in-bloom.
The component fills its parent width. heightMode="fill" fills a parent with an explicit height; an unsized host uses a 16:10 aspect-ratio fallback. heightMode="fixed" uses the pixel height. imageFit, focalX, focalY and imageScale control the main image crop. Image, title, description and alt lists correspond by index. Use an empty alt for a decorative image. Lists support up to twelve slides.
images accepts the bundled keys listed above, the original vector keys canyon, coast, alpine, HTTP/HTTPS URLs and relative paths. Invalid or empty image lists fall back to the default images. Remote URLs make ordinary requests to their hosts. Failed images show a readable unavailable message. Generated images depict fictional scenes; no claim of a real building, place or product is implied.
Choose one of eight transitions: blur, fade, slide, slideUp, cover, wipe, zoom or none. duration controls finite motion; zero makes changes immediate. blurAmount controls blur strength and zoomAmount controls zoom distance. Rapid changes retarget owned image layers and settle to one slide.
ArrowLeft/Right, Home/End and horizontal swipes navigate. Manual changes are announced; automatic announcements are disabled during playback. Autoplay is on by default at five seconds. There is no on-image playback button. Disable Autoplay in Tweaks or set autoplay={false}. Hover, keyboard focus, hidden documents, offscreen placement and reduced motion stop automatic progression. Reduced motion makes manual navigation immediate.
The vanilla core exports defaults, resolveSettings, render and mount. mount(host, settings) returns update, goTo, pause, resume and destroy. update merges validated settings and preserves the current slide where possible. pause stops autoplay and settles finite transitions; resume allows animation without enabling autoplay. destroy removes owned DOM, listeners, observer and animation frames. Multiple instances have independent state. The React wrapper accepts className, style and paused in addition to the generated settings below.
Server/no-JavaScript markup shows the first image and readable captions where present. Navigation requires JavaScript. Configured React and HTML delivery retain settings. Every install includes its local engine, CSS, photographs, vectors, Instrument Sans font and licences; there are no runtime npm dependencies or imports from sibling components. Font rights are OFL-1.1 under assets/OFL-InstrumentSans.txt.
The preview runs the component’s own JavaScript. It respects reduced motion and pauses when off screen. The HTML bundle includes a poster fallback.
Every setting in this panel comes from the component manifest. Preview size, pause and replay stay in the inspector.