~/talk

Moving from Flow to TypeScript — How the Yandex Zen Migration Went and Why the New Stack Is Better

links:none on file
slides:none on file

Yandex Zen migrated its frontend type system from Flow to TypeScript because Flow caused memory leaks, slow IDE responses, and poor third‑party typings. The team built both systems with Babel 7, created a custom validator to count .d.ts files and handle ignores, enabled strict TypeScript mode, and protected branches to run the compiler on PRs; about 90% of ~2,413 files (~2,144 files, ~190k lines) were converted. The migration yielded stable PR checks, faster autocomplete, and improved external type support and bug discovery, at the cost of manual rewrites and some human errors.

AI-written summary · about

  1. 0:00Migration introduction
  2. 1:05Why Flow initially
  3. 2:13Flow problems over time
  4. 5:54Switching to TypeScript
  5. 7:19Migration strategies
  6. 8:03TypeScript build setup
  7. 9:08Strict TypeScript PR checks
  8. 11:20Gradual rewrite rules
  9. 13:13Manual migration pros/cons
  10. 14:59Benefits after switch
  11. 16:49Progress and current state
  12. 18:17Key takeaways
  13. 18:39Q&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.