~/talk

Building graphs in Jetpack Compose with Canvas

Talkat droidcon New York 2023 · 2023-09-14..09-15· [android, web-animation]
links:none on file
slides:none on file

Builds custom line and bar charts with Jetpack Compose Canvas using a composable base that computes coordinates and accepts pluggable draw lambdas via the strategy pattern. Implements a scrubber, moving labels and highlighting by splitting drawing into separate canvases to avoid full recomposition; initial work exposes a recomposition bug at about 1000 points but 80% of app charts now use the new framework and the approach proves performant and extensible.

AI-written summary · about

  1. 0:00Introduction
  2. 1:05What is Jetpack Compose
  3. 2:06Why build custom charts
  4. 7:29Basic line chart tutorial
  5. 9:14Third party vs custom solution
  6. 11:43Designing the charting framework
  7. 16:20Architecture with strategy pattern
  8. 17:02Implementation at Fundrise
  9. 18:27Performance optimizations
  10. 19:56Recomposition tricks
  11. 20:16Accessibility and testability
  12. 21:42Handling chart behaviors
  13. 23:30Lessons learned and summary
  14. 24:53Takeaways and resources
  15. 25:56Q&A
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.