add image gallery and lazy loading