~/talk

How to design a Dart package with hooks

Talkat Fluttercon Europe 2025 · 2025-09-24..09-26· [developer-experience]
links:none on file
slides:none on file

Using package:intl4x as the example, the talk shows how the new build and link hook system plus usage recording actually bundles native ICU4X binaries, offers link.dart tree-shaking via @RecordUse to collect used symbols, and cuts platform assets from tens of megabytes down to kilobytes. It recommends splitting raw FFI bindings and a nicer API, offering fetch (download releases on GitHub) and checkout modes, versioning artifacts with hashes, downloading only needed targets, and designing APIs to let tree-shaking work statically.

AI-written summary · about

  1. 0:00Dart package design with hooks
  2. 1:03Build and link hooks
  3. 5:19Dart package structure best practices
  4. 6:42Native assets user options
  5. 7:45GitHub as CDN for binaries
  6. 8:48Versioning and integrity
  7. 9:29Tree shaking to fight bloat
  8. 11:35APIs for tree shaking
  9. 12:57Summary
~/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.