A component approach in pure JavaScript. Splitting of image gallery code and view code with individual scope. Features: slide, fit, zoom, pan, full screen, key control.