~/talk

Scaling an application without microfrontends

github:Nodge
slides:none on file

Yandex Direct runs a frontend with several million lines of code and scales without microfrontends by imposing strict module boundaries, one-way imports and a small public API per module, plus code/style/data isolation and controlled global effects. Deployment uses a shared runtime for modules (TypeScript, React, Redux etc.) and automated enforcement with ESLint, stylelint and dependency-cruiser. The approach follows feature sliced design, uses CQRS-like data access, CSS Modules or scoped styles, and trades runtime size for developer ergonomics.

AI-written summary · about

  1. 0:00intro
  2. 0:22preamble
  3. 1:18contents
  4. 1:59about maksim
  5. 2:44frontend of yandex direct
  6. 3:19the scalability issue
  7. 4:38complexity in a regular monolith
  8. 5:02the source of complexity
  9. 5:52how about adding a microfrontend?
  10. 6:26advantages of microfrontends
  11. 8:05microfrontends make every project better?
  12. 8:33the cost of microfrontends
  13. 9:59glorious monolith
  14. 12:02the path to the glorious monolith
  15. 13:07requirements for modules
  16. 13:30module structure
  17. 14:48one-way imports for segments
  18. 15:54the benefits of segments
  19. 16:33module isolation
  20. 17:46code isolation
  21. 18:57entrypoint
  22. 19:27public api
  23. 21:31the size of public api
  24. 22:35styles isolation
  25. 23:22options to isolate styles
  26. 23:57example rules for css modules
  27. 25:15data isolation
  28. 28:15runtime for modules
  29. 29:15runtime example
  30. 30:08the size of runtime
  31. 31:07breaking code into modules
  32. 33:08feature sliced design
  33. 34:59summary
  34. 36:36what's next?
  35. 37:21thank you!
~/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.