Single-page applications: one HTML shell, client-side routing, and the trade-offs that come with them.
A single-page application loads one HTML document and then updates the content dynamically with JavaScript as the user navigates, instead of requesting a fresh page from the server each time. Routing is handled on the client, typically using the History API so the URL still changes, and data is fetched in the background through APIs. This makes transitions feel fast and app-like, since only the changed parts of the page are updated.
The trade-offs are what interviewers focus on: SPAs can have a slower initial load because a large JavaScript bundle must download and execute before content appears, and they can be harder for search engines and link previews to read. Approaches like server-side rendering, static generation, code splitting and lazy loading address these problems. Also consider accessibility, since you have to manage focus and announce route changes yourself when the browser no longer does it automatically.
What you'll walk away knowing