Universally Speaking
summary
Built a clone of the Asteroids site using Angular Universal with an Express server (generated via ng add @nguniversal/express-engine), solved server errors like window/document undefined by using dependency-injected platform-specific providers and optional services, removed WebGL on the server, and stopped double API calls by shipping serialized state to the client using TransferState with NgRx plus a timestamped cache. Server render shows thousands of asteroid rows (good for SEO/social previews) but adds TTFB and operational complexity.
AI-written summary · about
chapters (10)
- 0:00Start
- 20:24Platform-specific modules
- 22:25Avoiding the DOM
- 23:01Components
- 23:47Be explicit about it
- 26:17Check the platform...
- 28:58Just turn it off
- 34:39State Transfer + Store
- 38:47Performance
- 39:11Complexity








