sl-gallery | Vaadin

A web-component based hash-route photo gallery.

Silverlinkz Photo Gallery

Build Status Published on npm Published on

A web-component based hash-route photo gallery.

The gallery will load all small images for thumbnails in the grid.

When you open the fullscreen slideshow, it will display the small image as a placeholder while loading the larger full-sized src image.

After the current image in the slideshow is loaded, the next and previous images will be lazy-loaded so that they are immediately ready upon changing image.

Note: Fullscreen won't work in the demo at due to being inside of a fullscreen restricted iframe.

Installation (Polymer 3)

npm install --save @silverlinkz/sl-gallery

Legacy Installation (Polymer 2 / Bower)

bower install --save jsilvermist/sl-gallery#^1.0.0


Import the gallery (Polymer 3):

import '@silverlinkz/sl-gallery';

Legacy import (Polymer 2 / Bower):

<link rel="import" href="bower_components/sl-gallery/sl-gallery.html">

Create an sl-gallery element, and add sl-gallery-image elements for each image:

      title="Example Title 01">
      title="Another Title 02">
      title="Photo Title 03"
      caption="Ipsa ut distinctio aperiam quia delectus, illum voluptates non.">
      title="Photo Title 04"
      caption="Necessitatibus tempora ea eius placeat. Sed culpa numquam voluptatibus possimus, eaque vel!">

The small attribute is used for the thumbnail image and preloading the gallery slideshow image. If the small attribute is missing, the gallery will use the src for the thumbnail image.

The title, caption, and small attributes are optional, and you can also set the src attribute dynamically.


Link to this version
ImportedReleased 31 March 2019MIT License
Framework Support
Polymer 3.0+
Browser Independent
Install with
npm install @silverlinkz/sl-gallery"@2.3.2"
Run the above npm command in your project folder. If you have any issues installing, please contact the author.
Release notes - Version 2.3.2


  • @jsilvermist/fullscreen-api#^0.2.0
  • @polymer/app-layout#^3.0.1
  • @polymer/iron-iconset-svg#^3.0.1
  • @polymer/iron-image#^3.0.1
  • @polymer/paper-icon-button#^3.0.1
  • @polymer/paper-spinner#^3.0.1
  • @polymer/polymer#^3.0.5