Building Platforms with Angular
summary
A large Angular app with roughly 200,000 lines of JS and templates (over 25 MB compiled before compression) uses Angular plus Google Closure, d3 and CodeMirror, and ships across dozens of teams. It implements lazy loading with placeholder wildcard routes, a new injector and route.reload to keep initial downloads small, enforces API boundaries with Closure package visibility and unique namespaces, migrates pages one-by-one, and protects changes with Jasmine/Karma pre-submit and Protractor post-submit tests plus screenshot comparison for missing directives.
AI-written summary · about
chapters (23)
- 0:00Start
- 0:25Large App Challenges
- 1:14Libraries Used
- 1:46Project Size
- 2:23Team Structure
- 4:52Lazy Routes
- 5:41Route Registration
- 6:08Cleanup
- 7:31Why share?
- 8:26UI Components
- 8:51Shared Services
- 9:42Package-level Visibility
- 10:31Code-level Visibility
- 10:59Namespacing
- 11:36Scope Inheritance
- 12:41Using Flags
- 13:45Page-by-Page Changes
- 14:13Upgrading Angular
- 14:46Adopting Angular
- 16:51Presubmit Checks
- 18:05Subtle Failures
- 19:02Screenshot Comparison
- 20:00Takeaways
related talks
53mScaling large Angular apps
19mPerformance Lessons from the World's Largest Angular Application
21mUsing Angular on a €3.5 Million Project
32mAngular as strategy for collaboration and scale
19mThe Angular Journey - today and tomorrow – Radoslav Kirov
28mDebugging the Performance of 4,860 Angular Apps
41mKeynote address
24mEngineering Complex Web-Apps using Angular and RequireJS
