New Research: Supply Chain Attack on Axios Pulls Malicious Dependency from npm.Details →
Socket
Book a DemoSign in
Socket

maruq

Package Overview
Dependencies
Maintainers
1
Versions
2
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

maruq

A modern, accessible replacement for <marquee>. Works with HTML, divs, React, Vue, and more.

latest
Source
npmnpm
Version
0.1.0
Version published
Maintainers
1
Created
Source

Maruq

The modern, accessible replacement for <marquee>.

Maruq is currently in Beta. Please expect bugs, and please report those bugs (or suggestions) you have.

Maruq brings marquee-style scrolling back to the web using modern CSS and JavaScript — without deprecated HTML, while remaining lightweight, flexible, and CDN-friendly.

  • Works with plain HTML
  • Supports legacy .maruq divs
  • Custom element support via <maruq-element>
  • Framework-friendly (React, Vue, Svelte wrappers coming later)
  • No dependencies
  • Open source (MIT)

Maruq can be used directly from a CDN with no build step.

<link
  rel="stylesheet"
  href="https://cdn.jsdelivr.net/npm/maruq@0.0.9/dist/maruq.min.css"
/>
<script
  src="https://cdn.jsdelivr.net/npm/maruq@0.0.9/dist/maruq.min.js"
  defer
></script>

unpkg

<link
  rel="stylesheet"
  href="https://unpkg.com/maruq@0.0.9/dist/maruq.min.css"
/>
<script
  src="https://unpkg.com/maruq@0.0.9/dist/maruq.min.js"
  defer
></script>

Basic Usage

Custom Element (Recommended)

<maruq-element behavior="scroll" speed="30">
  <span>Hello world</span>
</maruq-element>

Legacy / Plain HTML

<div class="maruq" behavior="alternate" speed="20">
  <span>Scrolling content</span>
</div>

Legacy / Plain HTML may not be supported in the future, but only time can tell. For right now, please use Custom Element if possible, if not, then you can use the <div> method.

Attributes

AttributeDescription
behaviorscroll (default), slide, or alternate
speedDuration in seconds
bgcolorAny valid CSS color
pause-on-hoverPauses animation on hover
stop / stoppedPrevents the marquee from running
loopNumber of loops (0 or -1 = infinite)

JavaScript API

Each marquee element exposes simple methods:

const el = document.querySelector("maruq-element");

el.start(); // start scrolling
el.stop();  // stop scrolling

Events

  • start - fired when scrolling starts
  • bounce - fired when reaching an edge (alternate only)
  • finish - fired when a finite loop completes

Accessibility

Maruq respects user motion preferences:

  • Automatically disables animation when prefers-reduced-motion: reduce is enabled

License

MIT

Keywords

marquee

FAQs

Package last updated on 22 Jan 2026

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts