SPAs should do more than server-rendered apps, not less
Sam and Ryan chat about why frontend frameworks should make it easy for SPAs to replicate the behavior of a server-rendered web app. They also discuss various data-fetching scenarios, how a client-side app can stay in sync with the server's database, and share a few thoughts on module unification and dependency management.
Topics include:
0:00 - Module unification
- 1:20 - Component resolution
- 5:45 - Why we don't use angle brackets
9:35 - SPAs should do everything a server app can do
- 10:15 - Ember's Router
- 11:00 - Replicating the server's "fresh data" behavior
- 17:15 - Reloading stale data
23:50 - Fetching data
- 23:50 - Getting Mirage working with React and Vue
- 26:10 - Data loading components
- 29:41 - Knowing what queries are currently rendered
- 32:15 - Using cache keys to track what data is loaded
- 35:00 - Pushing data into the client with web sockets
- 39:00 - Describing Twitter's UI in queries
- 44:00 - When will data loading be abstracted away?
49:45 - Dependabot workflow
- 50:20 - Can you merge a PR from a bot if all the tests pass?
- 53:20 - Trust, but verify