introduce locking
download preview image from repo
fix scanning streams
async preview loading