Best way to re-create 2D image grid implementation

I understand that this is quite a broad question, but I came across this website which, if I can trust the console output, uses Threejs in order to implement a 2D grid of images which can be pannend and zoomed. I’ve been looking to create something exactly like this where images are retrieved from a server, and dynamically loaded into a grid.

There are (obviously) a ton of resources on creating 3D effects, but not much on 2D effects so I was looking for some pointers or resources on how to recreate this effect.

Thanks in advance!

I think need 2d billboard via instancedBufferGeometry or instancedMesh with changed shader which scalling UV for zoom in out. Or use css in three.js
https://threejs.org/examples/?q=css

Thanks, that’s a good start! I’ll have to admit that I’m quite new to Three js. Do you maybe know of a good example I could use as a starting point? It seem like I need something like Orbit Controls but without having one fixed target and panning along the x and y axis