Live-Coding With Simon (Part II) - Simon Lightfoot & Kevin Moore
summary
Live-coding shows a working infinite canvas for two‑dimensional panning implemented as a custom render object + custom element that builds during layout and uses a ChangeNotifier controller to update an origin offset; widgets whose rects lie outside a computed viewport are removed offscreen widgets from the element tree so memory stays low. Code runs (gist via QR), uses debug paint boundaries for debugging, targets Figma‑scale counts (think thousands—ten‑thousand items), and mentions Boxy and render‑sliver tradeoffs as simpler or more complex alternatives.
AI-written summary · about
chapters (16)
- 0:00Introduction
- 1:47Debugging custom painter
- 3:10Widget vs element trees
- 9:10Widgets vs custom paint
- 13:45Infinite canvas needs
- 17:58Flutter’s three trees
- 23:13Flutter source code
- 31:23Parent data relationships
- 35:35Layout constraints
- 40:11Custom layout mixins
- 44:03Render object lifecycle
- 51:46Element callbacks
- 1:00:16Frame callbacks
- 1:04:05Q&A slivers
- 1:08:00When to use custom
- 1:10:49Q&A closing
related talks
01h 03mThat's how we scroll in Flutter
37mFlutter Development
32mCode Meets Art: Flutter for Creative Coding
01h 13mFlutter — live coding declarative UI
50mFlutter: The Wizards of Widgets
35mHow Custom RenderObjects can make your life easier
50mBuild a multiplayer drawing experience with full-stack Dart
42mGet Animated with Flutter!
