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

infinite-image-carousel

v1.0.0

Published

A JavaScript function that sets up an image carousel with auto-advance (optional) and manual navigation via buttons and active dot indicators.

Readme

Infinite Image Carousel Package

This package provides a customizable and interactive image carousel component with automatic slide transitions, manual navigation, and infinite looping functionality.

Features

  • Manual navigation: Use left and right buttons to navigate through the slides.
  • Automatic sliding: The carousel auto-advances every 5 seconds by default (configurable).
  • Infinite loop: The carousel seamlessly loops through slides, with the first slide moving to the last and vice versa.
  • Active dots indicator: Dots indicate the active slide and are updated when the slide changes.
  • Customizable: You can adjust transition duration and auto-advance duration.

Installation

You can install this package via npm:

npm install infinite-image-carousel

Usage

Import the setImageCarousel function:

import { setImageCarousel } from 'infinite-image-carousel';

Function Signature:

setImageCarousel(slidesWrapper, leftButton, rightButton, dots, activeDotClass = "selected", transitionDuration = "300", autoAdvanceDuration = 5000)

Parameters

The setImageCarousel function requires the following parameters:

  • slidesWrapper (Element): The wrapper element containing the slides.
  • leftButton (Element): The button for moving to the previous slide.
  • rightButton (Element): The button for moving to the next slide.
  • dots (NodeList): A collection of dot elements that represent each slide.
  • activeDotClass (String, optional): The class name applied to the active dot. Default is "selected".
  • transitionDuration (String, optional): The transition duration in milliseconds. Default is 300.
  • autoAdvanceDuration (Number, optional): The duration in milliseconds between each automatic slide transition. Default is 5000.

Example Usage

JavaScript:

import { setImageCarousel } from 'infinite-image-carousel';

const slidesWrapper = document.querySelector('.slides-wrapper');
const leftButton = document.querySelector('.left-button');
const rightButton = document.querySelector('.right-button');
const dots = document.querySelectorAll('.dot');

setImageCarousel(slidesWrapper, leftButton, rightButton, dots, 'active', 600, 3000);

How It Works

  1. Infinite Loop: The function automatically moves the first slide to the last and the last slide to the first after each transition.
  2. Manual Controls: Clicking the left and right buttons will allow users to navigate manually through the slides.
  3. Auto-Sliding: The carousel will automatically advance every 5 seconds (or the time you specify).
  4. Dot Navigation: A series of dots will indicate which slide is currently active, and clicking on them will navigate to the corresponding slide.

License

MIT License