JavaScripting

The definitive source of the best
JavaScript libraries, frameworks, and plugins.


  • ×

    Lightgallery.js

    Full featured javascript lightbox gallery. No dependencies.
    Filed under  › 

    • 🔾67%Overall
    • 3,431
    • 5.5 days
    • 🕩223
    • 👥8

    lightgallery.js

    travis bower npm

    Full featured JavaScript lightbox gallery. No dependencies.

    lightgallery

    Demo

    Main features

    • Fully responsive.
    • Modular architecture with built in plugins.
    • Touch support for mobile devices.
    • Mouse drag supports for desktops.
    • Double-click/Double-tap to see actual size of the image.
    • Animated thumbnails.
    • Social media sharing.
    • YouTube, Vimeo, Dailymotion, VK and HTML5 video support.
    • 20+ Hardware-Accelerated CSS3 transitions.
    • Dynamic mode.
    • Full screen support.
    • Supports zoom.
    • Browser history API.
    • Responsive images.
    • HTML iframe support.
    • Multiple instances on one page.
    • Easily customizable via CSS (SCSS) and Settings.
    • Smart image preloading and code optimization.
    • Keyboard Navigation for desktop.
    • Font icon support.
    • And many more.

    Browser support

    lightgallery supports all major browsers including IE 9 and above.

    Installation

    Install with Bower

    You can install lightgallery using the Bower package manager.

    bower install lightgallery.js --save
    

    npm

    You can also find lightgallery on npm.

    npm install lightgallery.js
    

    CDN

    http://www.jsdelivr.com/projects/lightgallery.js

    Download from GitHub

    You can also directly download lightgallery from GitHub.

    Include CSS and JavaScript files

    First of all add lightgallery.css in the <head> of the document.

    <head>
        <link rel="stylesheet" href="css/lightgallery.css">
    </head>
    

    Then include lightgallery.min.js into your document. If you want to include any lightgallery plugin you can include it after lightgallery.min.js.

    <body>
        ...
    
        <script src="js/lightgallery.min.js"></script>
    
        <!-- lightgallery plugins -->
        <script src="js/lg-thumbnail.min.js"></script>
        <script src="js/lg-fullscreen.min.js"></script>
    </body>
    

    Lightgallery also supports AMD, CommonJS and ES6 modules. When you use AMD make sure that lightgallery.js is loaded before lightgallery modules.

    require(['./lightgallery.js'], function() {
        require(["./lg-zoom.js", "./lg-thumbnail.js"], function(){
            lightGallery(document.getElementById('lightgallery'));
        });
    });
    

    The markup

    lightgallery does not force you to use any kind of markup. You can use whatever markup you want. But i suggest you to use the following markup. Here you can find the detailed examples of different kinds of markup.

    <div id="lightgallery">
        <a href="img/img1.jpg">
            <img src="img/thumb1.jpg">
        </a>
        <a href="img/img2.jpg">
            <img src="img/thumb2.jpg">
        </a>
        ...
    </div>
    

    Call the plugin

    Finally you need to initiate the gallery by adding the following code.

    <script>
        lightGallery(document.getElementById('lightgallery'));
    </script>
    

    Support lightgallery

    If you like lightgallery please support the project by staring the repository or tweet about this project.

    Resources

    Demos

    Built in modules

    1. Thumbnail - GItHub - Docs
    2. Autoplay - GItHub - Docs
    3. Video - GItHub - Docs
    4. Fullscreen - GItHub - Docs
    5. Pager - GItHub - Docs
    6. Zoom - GItHub - Docs
    7. Hash - GItHub - Docs
    8. Share - GItHub - Docs

    License

    Commercial license

    If you want to use lightgallery.js to develop commercial sites, themes, projects, and applications, the Commercial license is the appropriate license. With this option, your source code is kept proprietary. Purchase a lightgallery.js Commercial License at uplabs.com/posts/lightgallery-js

    Open source license

    If you are creating an open source application under a license compatible with the GNU GPL license v3, you may use this project under the terms of the GPLv3.

    Show All