SPA example creating tabs that reflect and update location.hash.
When a user clicks a tab, the page does not reload and the URL is appended by a hash. The hash is used to save state, so when the user clicks the back or forward button, the active/inactive tabs, menu, and URL are updated to reflect the change.