Skip to content

Thread / Reusable visual library

One visual language.
Every part of the story.

Product illustrations on reeded glass, followed by the complete Guide and its individual motion pieces. These are the same components used on the live local preview.

One customer, from conversation to completion

A 36-second story: a text, a captioned voice call, shared Sidekick setup, and a source receipt in the same account history. A compressed illustrative example.

Reuse this product view

Source: partials/product-views/guide-opening.html. Styles: product-views.css. Motion: product-views.js.

Add <!-- product-view:guide-opening --><!-- /product-view:guide-opening --> and run python3 build.py --refined-only. Keep the illustrative-example caption.

The account workspace

The account list and the active Guide, with a synchronized source-check sequence.

Reuse this product view

Source: partials/product-views/overview.html. Styles: product-views.css. Playback: product-views.js.

Add the build marker <!-- product-view:overview --><!-- /product-view:overview --> to a page and run python3 build.py. Keep the illustrative-account caption.

The continuing conversation

A customer reply leads to a Sidekick setup link and a session event.

Reuse this product view

Source: partials/product-views/conversation.html. Styles: product-views.css. Playback: product-views.js.

Add the build marker <!-- product-view:conversation --><!-- /product-view:conversation --> to a page and run python3 build.py. Keep the illustrative-account caption.

Sidekick, with the customer

Rose Guide cursor in the browser. Customer cursor on their step card.

Reuse this product view

Source: partials/product-views/sidekick.html. Styles: product-views.css. Playback: product-views.js.

Add the build marker <!-- product-view:sidekick --><!-- /product-view:sidekick --> to a page and run python3 build.py. Keep the illustrative-account caption.

Runbooks, for the team

An amber browser agent edits a draft and returns it for review.

Reuse this product view

Source: partials/product-views/backoffice.html. Styles: product-views.css. Playback: product-views.js.

Add the build marker <!-- product-view:backoffice --><!-- /product-view:backoffice --> to a page and run python3 build.py. Keep the illustrative-account caption.

The source check

A reported task result becomes verified only after a fresh matching read.

Reuse this product view

Source: partials/product-views/verification.html. Styles: product-views.css. Playback: product-views.js.

Add the build marker <!-- product-view:verification --><!-- /product-view:verification --> to a page and run python3 build.py. Keep the illustrative-account caption.

The motion library

The whole system.
Then each piece.

Silent loops, no playback controls. Visible pieces keep playing; reduced-motion settings show the poster. Download an individual loop to reuse it.

The complete Guide

Download loop ↗   Poster ↗

Reuse this motion component

Use thread-motion.css and thread-motion.js. Add a muted, looping, playsinline video with data-thread-motion and data-src="/images/motion/guide-v001/whole.mp4".

Customer Sidekick

Download loop ↗   Poster ↗

Reuse this motion component

Use thread-motion.css and thread-motion.js. Add a muted, looping, playsinline video with data-thread-motion and data-src="/images/motion/guide-v001/sidekick.mp4".

Team browser

Download loop ↗   Poster ↗

Reuse this motion component

Use thread-motion.css and thread-motion.js. Add a muted, looping, playsinline video with data-thread-motion and data-src="/images/motion/guide-v001/runbook.mp4".

Fresh source read

Download loop ↗   Poster ↗

Reuse this motion component

Use thread-motion.css and thread-motion.js. Add a muted, looping, playsinline video with data-thread-motion and data-src="/images/motion/guide-v001/read.mp4".

Text

Download loop ↗   Poster ↗

Reuse this motion component

Use thread-motion.css and thread-motion.js. Add a muted, looping, playsinline video with data-thread-motion and data-src="/images/motion/guide-v001/text.mp4".

Email

Download loop ↗   Poster ↗

Reuse this motion component

Use thread-motion.css and thread-motion.js. Add a muted, looping, playsinline video with data-thread-motion and data-src="/images/motion/guide-v001/email.mp4".

Voice

Download loop ↗   Poster ↗

Reuse this motion component

Use thread-motion.css and thread-motion.js. Add a muted, looping, playsinline video with data-thread-motion and data-src="/images/motion/guide-v001/voice.mp4".

Connected tools

Download loop ↗   Poster ↗

Reuse this motion component

Use thread-motion.css and thread-motion.js. Add a muted, looping, playsinline video with data-thread-motion and data-src="/images/motion/guide-v001/api.mp4".

Paper, ink, daylight.

Newsreader for the story. Public Sans for the detail. Rounded media. Blue conversation, rose Sidekick, amber team browser, and green only for a verified source result.

Audience stories

One visual language.
Specific customer journeys.

Two reusable 36-second stories. Same Thread app chrome, photographic glass, two-cursor Sidekick work, and source-confirmed outcome.

Software & POS platforms

Online ordering: conversation, pickup setup, and an ordering-system read.

Reuse this story

Use partials/product-views/platform-activation.html with product-views.css, audience-stories.css, and product-views.js. Add the product-view:platform-activation marker and run the shared build. Backgrounds live in images/product/audiences-v011/.

Payments companies

Merchant activation: setup together, then a separate processing-record check.

Reuse this story

Use partials/product-views/payment-activation.html with product-views.css, audience-stories.css, and product-views.js. Add the product-view:payment-activation marker and run the shared build. Backgrounds live in images/product/audiences-v011/.