I'm pretty sure Github does this when navigating from page to page. Makes sense—The browser has no way of knowing the progress of the HTTP request.
It seems to me that most progress bars are lies.
It seems to me that most progress bars are lies.
One approach is to remember how long a similar task took, and present progress based on the expected time will be similar.