Hai, nama saya Vanya. Saya memecahkan masalah arsitektur di frontend di Tinkoff Business dan sekarang saya akan memberi tahu Anda salah satunya.
Beberapa tahun yang lalu, kami memiliki aplikasi monolitik besar yang telah berkembang menjadi lusinan aplikasi yang lebih kecil dari waktu ke waktu. Dalam artikel ini saya akan memberi tahu Anda masalah apa yang kami alami secara teratur di monolit, bagaimana kami menyelesaikannya dan apakah layak untuk "menggergaji" bagian depan kami.

Sinkronisasi
«» , , -. , iframe . .
(- ), . , -.

, : « - !». .
?
, , - . :
|
| |
, | , . | |
| , — , — | , . |
(ownership) . , . - 5, 10, - (), | , . , , - | , . git flow |
| — , state-, , , . « » |
|
| , , , , . — - ? — . , , . ? :) | , , , . |
| , . , ( ). :
| , , codemod . 100% |
, — | - , , . , | - |
, «» , . , , , - , «» , .
?
- , :-) , :
. -, . Frame Manager, .
. , , window.myVar .my-bar. , - . , .
. : . vendor.js , vendor1.js, vendor2.js . . , — . № 4, , , url' .
, , , , , . : , ?
. , :
. , . , , . , .
foundation. () libs . : - , ?
— . , . , Nx Workspace. , . , . , , .
: foundation package.json. . , , tsconfig.json.
git submodule / subtree — , , , - . : . — .
— npm-, . , . : auth 1.0.0 2.0.0, , - , 2.0.1, , , - . -, -/ . . — Lerna.
SPA. SPA, , , , , . , . , Frame Manager, . , , . : window.myVar, localStorage, sessionStorage, CustomEvent, postMessage .
(SSR), . . . , , iframe, SSR.
.
. . , npm-.
, , - , , , . : « , , ?» :
. , ? , . ?
.
ci pipeline, .
: Nx. apps/, libs/. , . ci pipeline pipeline , IaC.
tl;dr
, Frame Manager.

. , . tips&tricks, :
, ? , , , , , :)
«», . , , , , , , .
, . -, , — , , : .
— , , , . /.
, . , , , . , .
P. S.
, , , , , .