This example uses a ReadableStream to update a progress bar while a remote image is downloaded with a declarative fetch() request. Users probably prefer seeing images load progressively with inline <img> tags, and progress bars may be better suited for larger, non-image fetch() requests.

The Service Worker example shows progress indicators while inline images load natively with <img> tags.