Implementation of a TileSource for OpenSeadragon based on geotiff.js, enabling local and remote TIFF files to be viewed without using an image server.
See it in action at https://pearcetm.github.io/GeoTIFFTileSource/demo.html
In order to generate a GeoTIFF file compatible with this library, you can for instance use sharp, a High performance Node.js image processing library.
import sharp from 'sharp'
sharp('input.jpg', {limitInputPixels:false})
.tiff({tile:true, pyramid:true})
.toFile('output.tiff')
.then(console.log)
.catch(console.error);
Many options are available.
Check sharp documentation on TIFF output format.
This library works by loading only parts of the remote TIFF file (which may be huge). For this, the remote http server has to be compatible. Most production-ready http servers are compatible, but some development servers (such as python3 -m http.server
or PHP built-in development web server) are not.