Skip to content

LED Scroller

Turn a short message into a large, looping LED-style scrolling banner with controllable direction, pace, size, pause, and restart.

Privacy: your files never leave your device. All processing happens locally in your browser.

How to use

  1. 1.Enter one short message, then choose its loop speed, travel direction, and large text size.
  2. 2.Start the preview and watch a complete loop to confirm that the message is readable on the current screen.
  3. 3.Pause for a stationary sign, resume the same motion, or restart the animation from its initial position.

About LED Scroller

LED Scroller turns a short line of text into a large moving banner in the current browser. Enter a message, choose slow, medium, or fast motion, select the travel direction, and set the text size. Press Start scrolling to create the preview. Pause freezes the current frame, Resume continues it, and Restart begins the loop from its initial position. The display works well as a quick handheld sign, event cue, desk message, presentation prompt, photo prop, or visual attention signal when a full sign-making application would be unnecessary.

The preview is LED-style rather than a simulation of a particular hardware panel. It uses large monospaced browser text, increased character spacing, the site's own color tokens, and a clean scrolling track. It does not reproduce a named dot-matrix font, electrical refresh rate, pixel pitch, brightness level, physical sign controller, or manufacturer protocol. The rendered shape depends on the fonts available to the browser. If exact signage dimensions, certified brightness, remote scheduling, or hardware export is required, use the software supplied for that display.

A message may contain up to 120 Unicode code points. Emoji, accented letters, punctuation, and non-Latin scripts count as characters rather than raw UTF-16 units, so a single emoji is not incorrectly counted as two. Outer whitespace is removed. Control characters, line breaks, and Unicode line or paragraph separators are rejected because this is a one-line banner and invisible separators could create confusing output. The tool does not shorten an over-limit message, replace unsupported text, convert case, correct spelling, translate, or insert decorative symbols.

The three speed labels are transparent interface presets. Slow completes one CSS loop in 12 seconds, medium in 8 seconds, and fast in 4 seconds. They are not claims in pixels per second. The apparent travel rate changes with message width, chosen font size, browser width, zoom, and device. This disclosure matters because a fixed duration can move a short message less distance per frame than a long one. Select the preset by watching the actual preview rather than treating it as a calibrated physical speed.

Direction describes where the text travels. Right to left starts the banner on the right and carries it across toward the left. Left to right reverses that motion. Text sizes range from 32 through 96 CSS pixels using five fixed options, keeping the controls predictable and preventing extreme values from breaking the page. Editing any input clears the old preview so the visible banner can never silently disagree with the controls. Starting again validates the complete current configuration before a new animation appears.

Pause and Resume change only the CSS animation play state. Restart creates a fresh animation instance and returns it to the beginning. No timer loop, requestAnimationFrame worker, canvas draw cycle, or server process continues in the background. The stylesheet also honors the browser's prefers-reduced-motion setting by forcing the banner to remain paused. That safeguard prevents a site preference from unexpectedly overriding an operating-system accessibility request. A user can still read the stationary message and change every control.

The tool intentionally does not request fullscreen permission. Browser fullscreen prompts vary, can be blocked without a direct gesture, and may hide important controls. For a larger view, increase the text size, use the browser's normal fullscreen command if desired, or mirror the browser window through trusted system controls. Keep critical safety instructions stationary and plainly visible; a moving decorative banner should not be the only channel for an emergency warning, accessibility notice, traffic direction, or other high-consequence message.

Everything stays in the browser tab. The message is not uploaded, saved, analyzed, or sent to an advertising or AI service by the widget. There is no account requirement and no generated file. Tests verify trimming, empty input, Unicode character boundaries, control and separator rejection, every speed contract, both directions, supported sizes, and invalid configuration failure. Browser verification then checks exact text, animation name and duration, pause state, restart behavior, H1, schema, canonical, and breadcrumb output.

For the clearest result, use a short phrase with strong contrast and avoid dense punctuation. Check that everyone who needs the message can read it at the chosen pace and distance. Pause the banner for names, codes, addresses, or instructions that require careful transcription. LED Scroller is most useful as a fast visual presentation tool: it makes motion easy to preview while remaining honest about its browser-defined timing and its lack of physical-display calibration.

Methodology & sources

Reject control characters and Unicode line or paragraph separators from the raw message before trimming ordinary outer spaces, then reject empty text and more than 120 Unicode code points. Accept only slow, medium, or fast presets mapped to product-defined 12, 8, or 4 second loops; left or right direction; and fixed font sizes of 32, 48, 64, 80, or 96 CSS pixels. Editing invalidates the previous preview. Starting stores one validated immutable settings object and increments a render revision. CSS keyframes translate a full-width monospaced line in the selected direction with linear infinite repetition. Pause and Resume toggle animation-play-state, while Restart increments the revision to recreate the animation. A reduced-motion media query forces scrolling classes to remain paused. No canvas, timer loop, upload, storage, or hardware protocol is used.

Frequently asked questions

Is the speed measured in pixels per second?
No. Slow, medium, and fast are fixed 12, 8, and 4 second CSS loops. Apparent speed varies with message width, text size, viewport, and zoom.
Why is the animation paused on my device?
The page honors the operating system or browser reduced-motion preference. The message remains readable as a stationary banner and the controls still work.
Is my scrolling message uploaded or saved?
No. Validation and CSS animation run in the current browser tab. The widget does not upload, store, translate, or analyze the message.

Generators guides

View all