Thumbnail gallery, which can be used for Instagram.
A carousel including thumbnails. This uses two JavaScript libraries; Tiny Slider and PhotoSwipe.
<template id="photoswipe">
<div class="pswp" tabindex="-1" role="dialog" aria-hidden="true">
<div class="pswp__bg"></div>
<div class="pswp__scroll-wrap">
<div class="pswp__container">
<div class="pswp__item"></div>
<div class="pswp__item"></div>
<div class="pswp__item"></div>
</div>
<div class="pswp__ui pswp__ui--hidden">
<div class="pswp__top-bar">
<div class="pswp__counter"></div>
<button class="pswp__button pswp__button--close" title="Close (Esc)"></button>
<button class="pswp__button pswp__button--share" title="Share"></button>
<button class="pswp__button pswp__button--fs" title="Toggle fullscreen"></button>
<button class="pswp__button pswp__button--zoom" title="Zoom in/out"></button>
<div class="pswp__preloader">
<div class="pswp__preloader__icn">
<div class="pswp__preloader__cut">
<div class="pswp__preloader__donut"></div>
</div>
</div>
</div>
</div>
<div class="pswp__share-modal pswp__share-modal--hidden pswp__single-tap">
<div class="pswp__share-tooltip"></div>
</div>
<button class="pswp__button pswp__button--arrow--left" title="Previous">
</button>
<button class="pswp__button pswp__button--arrow--right" title="Next">
</button>
<div class="pswp__caption">
<div class="pswp__caption__center"></div>
</div>
</div>
</div>
</div>
</template>
<div class="gallery gallery--carousel">
<ul class="gallery__list">
<li class="gallery__item" data-src="http://picsum.photos/1156/650" data-video="" data-width="1156" data-height="650">
<div class="media">
<div class="media__content">
<img src="http://picsum.photos/1156/650" alt="" title="" />
</div>
</div>
<p class="gallery__description">Libero eos cum.</p>
</li>
<li class="gallery__item" data-src="http://picsum.photos/1156/650" data-video="" data-width="1156" data-height="650">
<div class="media">
<div class="media__content">
<img src="http://picsum.photos/1156/650" alt="" title="" />
</div>
</div>
<p class="gallery__description">Natus perspiciatis ducimus quo cumque tenetur sed amet.</p>
</li>
<li class="gallery__item" data-src="http://picsum.photos/1156/650" data-video="" data-width="1156" data-height="650">
<div class="media">
<div class="media__content">
<img src="http://picsum.photos/1156/650" alt="" title="" />
</div>
</div>
<p class="gallery__description">Eveniet explicabo in neque unde ea officiis rerum.</p>
</li>
<li class="gallery__item" data-src="http://picsum.photos/1156/650" data-video="" data-width="1156" data-height="650">
<div class="media">
<div class="media__content">
<img src="http://picsum.photos/1156/650" alt="" title="" />
</div>
</div>
<p class="gallery__description">Voluptates nulla commodi et esse.</p>
</li>
<li class="gallery__item" data-src="http://picsum.photos/1156/650" data-video="" data-width="1156" data-height="650">
<div class="media">
<div class="media__content">
<img src="http://picsum.photos/1156/650" alt="" title="" />
</div>
</div>
<p class="gallery__description">Provident ea rem et exercitationem qui corrupti.</p>
</li>
<li class="gallery__item" data-src="http://picsum.photos/1156/650" data-video="" data-width="1156" data-height="650">
<div class="media">
<div class="media__content">
<img src="http://picsum.photos/1156/650" alt="" title="" />
</div>
</div>
<p class="gallery__description">Consequatur voluptatibus ad quia.</p>
</li>
<li class="gallery__item" data-src="http://picsum.photos/1156/650" data-video="" data-width="1156" data-height="650">
<div class="media">
<div class="media__content">
<img src="http://picsum.photos/1156/650" alt="" title="" />
</div>
</div>
<p class="gallery__description">Perspiciatis quis expedita expedita non vero.</p>
</li>
<li class="gallery__item" data-src="http://picsum.photos/1156/650" data-video="" data-width="1156" data-height="650">
<div class="media">
<div class="media__content">
<img src="http://picsum.photos/1156/650" alt="" title="" />
</div>
</div>
<p class="gallery__description">Mollitia eveniet soluta dolorum architecto illo ut voluptas.</p>
</li>
<li class="gallery__item" data-src="http://picsum.photos/1156/650" data-video="" data-width="1156" data-height="650">
<div class="media">
<div class="media__content">
<img src="http://picsum.photos/1156/650" alt="" title="" />
</div>
</div>
<p class="gallery__description">Sed vel ea sunt quia.</p>
</li>
<li class="gallery__item" data-src="http://picsum.photos/1156/650" data-video="" data-width="1156" data-height="650">
<div class="media">
<div class="media__content">
<img src="http://picsum.photos/1156/650" alt="" title="" />
</div>
</div>
<p class="gallery__description">Sunt libero voluptatem.</p>
</li>
<li class="gallery__item" data-src="http://www.youtube.com/embed/dP15zlyra3c?html5=1" data-video="http://www.youtube.com/embed/dP15zlyra3c?html5=1&enablejsapi=1" data-width="" data-height="">
<div class="media">
<div class="media__content">
<iframe src="http://www.youtube.com/embed/dP15zlyra3c?html5=1&enablejsapi=1"></iframe>
</div>
</div>
</li>
</ul>
<ul class="gallery__thumbnails">
<li class="gallery__item">
<a href="http://picsum.photos/1156/650">
<div class="media">
<div class="media__content">
<img src="http://picsum.photos/400/225" alt="" title="" />
</div>
</div>
</a>
</li>
<li class="gallery__item">
<a href="http://picsum.photos/1156/650">
<div class="media">
<div class="media__content">
<img src="http://picsum.photos/400/225" alt="" title="" />
</div>
</div>
</a>
</li>
<li class="gallery__item">
<a href="http://picsum.photos/1156/650">
<div class="media">
<div class="media__content">
<img src="http://picsum.photos/400/225" alt="" title="" />
</div>
</div>
</a>
</li>
<li class="gallery__item">
<a href="http://picsum.photos/1156/650">
<div class="media">
<div class="media__content">
<img src="http://picsum.photos/400/225" alt="" title="" />
</div>
</div>
</a>
</li>
<li class="gallery__item">
<a href="http://picsum.photos/1156/650">
<div class="media">
<div class="media__content">
<img src="http://picsum.photos/400/225" alt="" title="" />
</div>
</div>
</a>
</li>
<li class="gallery__item">
<a href="http://picsum.photos/1156/650">
<div class="media">
<div class="media__content">
<img src="http://picsum.photos/400/225" alt="" title="" />
</div>
</div>
</a>
</li>
<li class="gallery__item">
<a href="http://picsum.photos/1156/650">
<div class="media">
<div class="media__content">
<img src="http://picsum.photos/400/225" alt="" title="" />
</div>
</div>
</a>
</li>
<li class="gallery__item">
<a href="http://picsum.photos/1156/650">
<div class="media">
<div class="media__content">
<img src="http://picsum.photos/400/225" alt="" title="" />
</div>
</div>
</a>
</li>
<li class="gallery__item">
<a href="http://picsum.photos/1156/650">
<div class="media">
<div class="media__content">
<img src="http://picsum.photos/400/225" alt="" title="" />
</div>
</div>
</a>
</li>
<li class="gallery__item">
<a href="http://picsum.photos/1156/650">
<div class="media">
<div class="media__content">
<img src="http://picsum.photos/400/225" alt="" title="" />
</div>
</div>
</a>
</li>
<li class="gallery__item">
<a href="http://www.youtube.com/embed/dP15zlyra3c?html5=1">
<div class="media">
<div class="media__content">
<img src="http://picsum.photos/400/225" alt="" title="" />
</div>
</div>
</a>
</li>
</ul>
</div>
<template id="photoswipe">
{{{ template }}}
</template>
<div class="{{modifier 'gallery' modifiers}}">
<ul class="gallery__list">
{{#each gallery }}
<li class="gallery__item" data-src="{{ gallery.media.src }}" data-video="{{ gallery.media.video }}" data-width="{{ gallery.media.width }}" data-height="{{ gallery.media.height }}">
{{ render '@media' gallery merge=true }}
{{#if text}}
<p class="gallery__description">{{ text }}</p>
{{/if}}
</li>
{{/each}}
</ul>
<ul class="gallery__thumbnails">
{{#each gallery }}
<li class="gallery__item">
<a href="{{ gallery.media.src }}">{{ render '@media' thumbnail merge=true }}</a>
</li>
{{/each}}
</ul>
</div>