npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@lasitospt/aurora

v2.9.0

Published

A framework-agnostic library of animated UI components (Web Components) powered by GSAP and Three.js.

Readme

aurora

Enterprise UI that moves like it means it — 126 animated components, from data grids to gauges, shipped as native Web Components.

CI npm GSAP Three.js License: MIT

🌐 Live demo & docs → auroralib.com

A live dashboard built entirely from aurora components

Everything above is aurora — the draggable tiles, the chart, the gauges, the badges, and the frozen-column grid. It's live on the landing page.

aurora ships as native Web Components (custom elements), so it works in any stack — React, Vue, Svelte, or plain HTML — with no wrapper and no config. Styles are encapsulated in Shadow DOM and themed with CSS variables; motion is powered by GSAP, and the 3D components use Three.js.

Highlights beyond the usual suspects:

  • Enterprise data: a full grid (multi-sort, operator filters, grouping, frozen columns, virtualization, edit validation, CSV + Excel export via an in-house OOXML writer), TreeList, PivotGrid, ListView, Scheduler with four views, and a drag-editable Gantt
  • 25+ form editors, all form-associated via ElementInternals and tied together by <aurora-form>'s validation harness
  • In-house encoders: QR codes (Reed-Solomon, spec mask scoring) and Code 128 barcodes, both verified bit-for-bit against reference implementations
  • Composition all the way down: the wizard composes the stepper, the date-time picker composes the calendar, the org chart composes avatars, the dropdown-tree composes the treeview

Install

npm install @lasitospt/aurora
import '@lasitospt/aurora' // registers the core components
import '@lasitospt/aurora/three' // registers the Three.js components (3D deps load only here)

Then use the elements anywhere:

<aurora-text><h1>Motion, built in.</h1></aurora-text>

<aurora-magnetic strength="0.5">
  <aurora-button>Hover me</aurora-button>
</aurora-magnetic>

<aurora-tilt max="14">
  <div class="card">Tilt me toward your cursor.</div>
</aurora-tilt>

<aurora-marquee speed="80">GSAP · Three.js · Web Components · </aurora-marquee>

<aurora-scene color="#6d5cff" speed="1.2"></aurora-scene>

Because they're standard custom elements, you write them the same way in JSX, Vue templates, or HTML.

Components

Every component has a documentation and tutorial page.

Enterprise & Data

| Component | What it does | | ------------------------------------------------------------------------------ | --------------------------------------------------------------------------------------------- | | <aurora-barcode> | Code 128 barcodes from an in-house, spec-verified encoder | | <aurora-chart> | Grouped bars, multi-series lines, and donuts on a DPR-aware canvas | | <aurora-chat> | A conversation view with sided bubbles, avatar initials, a typing indicator, and a composer | | <aurora-gantt> | Project timelines | | <aurora-gauge> | Arc, circular, and linear gauges in one SVG element | | <aurora-grid> | A virtualized enterprise data grid: multi-column sorting, filtering, global search, paging, … | | <aurora-listview> | A templated, data-bound list | | <aurora-orgchart> | Reporting lines from nested data | | <aurora-pivotgrid> | Cross flat records into a matrix | | <aurora-qrcode> | A dependency-free QR generator | | <aurora-scheduler> | A week-view scheduler: day columns over hour rows, time-positioned events with accent colors… | | <aurora-sparkline> | A tiny inline chart that draws itself into view | | <aurora-tilelayout> | A dashboard grid | | <aurora-treelist> | A hierarchical data grid |

Forms & Inputs

| Component | What it does | | ------------------------------------------------------------------------------------------------ | --------------------------------------------------------------------------------------------- | | <aurora-autocomplete> | A type-to-filter suggestion input: matches highlight as you type, arrows and Enter select, E… | | <aurora-calendar> | A month-view calendar with a Monday-first grid, an outlined today, ISO value, and a complete… | | <aurora-checkbox> | A form-associated checkbox whose check draws itself on | | <aurora-colorpalette> | A fixed swatch grid for brand-constrained picking | | <aurora-colorpicker> | A full HSV picker built from CSS gradients | | <aurora-dateinput> | Type a date without a popup | | <aurora-datepicker> | A date input that opens the aurora-calendar in a popup | | <aurora-daterange> | Pick a span in one grid: first click starts it, second ends it (reversed picks swap themselv… | | <aurora-datetimepicker> | Calendar and clock in one popup | | <aurora-dropdowntree> | A select whose popup is a full treeview | | <aurora-durationpicker> | Type a duration as hh:mm:ss | | <aurora-editor> | A contenteditable editor with a stateful toolbar | | <aurora-form> | A validation harness for every aurora editor | | <aurora-input> | A text field with an animated focus underline; form-associated and event-transparent | | <aurora-listbox> | The classic dual-list pattern | | <aurora-masked> | A pattern-masked input: define the shape once (# digit, A letter, * alphanumeric), literals … | | <aurora-multicolumncombobox> | A combobox that drops a table | | <aurora-multiselect> | A pick-many dropdown: selections become removable chips, the popup is a checkbox list, and t… | | <aurora-numeric> | A numeric spinner with honest math: typed values are clamped to min/max and snapped to the s… | | <aurora-otp> | A segmented code input that behaves the way users expect: typing advances, Backspace retreat… | | <aurora-radiogroup> | A WAI-ARIA radio group | | <aurora-rating> | A star rating that pops as you pick. Any glyph, any scale, keyboard-rateable, and it submits… | | <aurora-select> | An animated dropdown list. Options come from child elements or the options property… | | <aurora-signature> | A signature pad that draws smoothed SVG strokes and submits them with your form as a data URL | | <aurora-slider> | A draggable, keyboard-accessible range slider with role="slider" and honest min/max/step math | | <aurora-switch> | An animated toggle with role="switch" | | <aurora-textarea> | A textarea that grows with its content and counts characters live against maxlength | | <aurora-timepicker> | An HH:MM input with scrollable hour and minute columns; the minute increment is yours to set… | | <aurora-upload> | A drag-and-drop file zone with keyboard browsing, animated per-file rows, size limits with e… | | <aurora-rangeslider> | Two thumbs, one range | | <aurora-combobox> | Between a select and an autocomplete: filter the list as you type, or let users commit value… |

Actions & Navigation

| Component | What it does | | -------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | | <aurora-actionsheet> | A bottom sheet of actions | | <aurora-appbar> | A sticky frosted-glass header with three slot regions | | <aurora-bottomnav> | A frosted bottom bar with one active destination | | <aurora-breadcrumb> | A breadcrumb trail with a custom separator; the last item is the current page and hrefless c… | | <aurora-button> | The themeable base button | | <aurora-buttongroup> | A segmented control: options in, one active segment out, with aria-pressed state and a pop o… | | <aurora-chips> | A chip list for filters and tags: single or multiple selection with a pop, optional remove b… | | <aurora-command> | A ⌘K command palette: global hotkey, type-to-filter over labels and keywords, arrow/Enter/Es… | | <aurora-contextmenu> | Right-click menus for any element | | <aurora-fab> | A floating action button | | <aurora-menu> | An animated dropdown with arrow-key roving, Escape-with-focus-restore, and outside-click close | | <aurora-splitbutton> | A primary action with an attached dropdown of alternatives | | <aurora-stepper> | Multi-step progress with accent-filled connectors, checkmarked completed steps, and a pop on… | | <aurora-tabs> | Tabbed panels with an animated active indicator and the WAI-ARIA tabs keyboard pattern (arro… | | <aurora-toolbar> | A responsive toolbar | | <aurora-treeview> | Hierarchical navigation from a nested items array | | <aurora-wizard> | Multi-step flows with a built-in stepper, animated direction-aware transitions, and a cancel… |

Overlays & Feedback

| Component | What it does | | -------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | | <aurora-accordion> | A collapsible panel with animated height and correct aria-expanded state | | <aurora-avatar> | Image avatars that never break: no src (or a failed load) falls back to initials on a gradie… | | <aurora-badge> | Notification badges that pop when the count changes | | <aurora-confetti> | A celebration cannon on a full-viewport canvas | | <aurora-drawer> | A side panel sliding from either edge with the modal’s focus discipline: Tab trap, Escape, f… | | <aurora-loader> | Indeterminate spinners in three flavors | | <aurora-modal> | An animated dialog with real focus discipline: focus moves in on open, Tab is trapped at sha… | | <aurora-popover> | An anchored floating panel for rich contextual content | | <aurora-progressbar> | A determinate bar that tweens to every value change with a live percentage | | <aurora-skeleton> | Shimmering loading placeholders | | <aurora-splitter> | Two resizable panes and a draggable divider | | <aurora-toaster> | A glassmorphic toast stack with variant icon badges, an optional title, and a progress hairl… | | <aurora-tooltip> | A one-line hover/focus tooltip with four placements | | <aurora-videoplayer> | Custom chrome over native video | | <aurora-window> | A floating window you can drag by its title bar |

Text & Typography

| Component | What it does | | ------------------------------------------------------------------------------ | --------------------------------------------------------------------- | | <aurora-glitch> | An RGB-split, slice-clipped glitch burst over text | | <aurora-scramble> | Text decodes through random glyphs, left to right | | <aurora-shine> | A soft highlight sweeps across text on a loop | | <aurora-text> | Masked text that rises into view on scroll | | <aurora-typewriter> | Types its text behind a blinking accent caret when scrolled into view |

Motion & Interaction

| Component | What it does | | -------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | | <aurora-carousel> | Drag or swipe with GSAP inertia and slide snapping; arrow keys and a programmatic API included | | <aurora-compare> | A before/after slider | | <aurora-dock> | Children magnify as the cursor approaches | | <aurora-flip> | A 3D flip between two faces | | <aurora-magnetic> | Wrapped content is pulled toward the cursor as it approaches and springs back on leave | | <aurora-marquee> | A seamless infinite scroller | | <aurora-orbit> | Children revolve around optional slot="center" content | | <aurora-parallax> | Children with data-depth drift toward the pointer at their own depth and settle back on leave | | <aurora-ripple> | A soft ripple expands from the pointer on press, clipped to the wrapper’s radius | | <aurora-sortable> | Drag-to-reorder for anything | | <aurora-tilt> | 3D perspective tilt that follows the pointer across the surface and eases back on leave |

Scroll & Page

| Component | What it does | | -------------------------------------------------------------------------- | --------------------------------------------------------------------------------- | | <aurora-counter> | A number that counts up when seen | | <aurora-cursor> | A trailing glow ring that follows the pointer and grows over interactive elements | | <aurora-progress> | A fixed gradient hairline at the top of the viewport tracking reading position | | <aurora-reveal> | Fades and rises any content the first time it scrolls into view | | <aurora-timeline> | A vertical milestone timeline |

Visual & 3D

| Component | What it does | | ---------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | | <aurora-beam> | A luminous beam travelling the border of any card, continuously | | <aurora-lens> | An image that liquifies toward the cursor with a chromatic fringe | | <aurora-nebula> | The aurora-borealis backdrop from this site’s hero | | <aurora-particles> | A drifting GPU particle field with additive glow, a two-tone gradient, and pointer parallax | | <aurora-scene> | A rotating wireframe icosahedron backdrop | | <aurora-spotlight> | A card whose interior glow and 1px border beam follow the cursor | | <aurora-wave> | A wireframe ocean |

Theming

Every component reads CSS custom properties (with sensible fallbacks). Set them on :root or on any ancestor — they pierce the shadow boundary:

:root {
  --aurora-accent: #6d5cff;
  --aurora-accent-hover: #5a49e0;
  --aurora-radius: 0.6rem;
}

All components respect prefers-reduced-motion and disable animation when the user asks for it.

Try the demo

A full showcase with live components and copy-paste docs is deployed at auroralib.com.

To run it locally:

cd site
npm install
npm run dev

Or open the standalone example (after npm run build at the root):

npx serve   # then open examples/index.html

Development

npm run lint && npm run typecheck && npm run test && npm run build

Tests run in happy-dom, so custom-element registration, attributes, and Shadow DOM structure are verified in CI.

License

MIT © Pedro Lascasas Pinto