Navigation without page loads.
WHAT IT DOES
Changes the view and the address without a full page load.
WHAT THAT PROVIDES
Faster navigation, and preserved state.
WHAT IT MUST STILL DO
Update the address Support back and forward Allow direct entry of any address Allow links to be opened in new tabs
WHAT BREAKS MOST OFTEN
Direct entry of a deep address.
WHY
Static hosting must be configured to serve the application for any path.
WHAT THE SYMPTOM IS
The homepage working and every other address returning not found.
WHAT ELSE TO HANDLE
Scroll position on navigation and on returning Focus, which should move to the new content Announcing the change to assistive technology
WHY THAT LAST POINT
Without a page load, a screen reader has no indication anything happened.
WHAT TO USE FOR LINKS
Real addresses, always, with the framework's navigation handling applied.
WHAT NOT TO USE
Elements that only respond to clicks.
WHAT TO PROVIDE
A not-found view for unmatched addresses.