Hello everyone, my name is Rostislav, I hold the position of Front Lead at DomClick. I want to share with you the experience of creating a Front Core team and immediately answer the following questions:
- Is such a team necessary in the company?
Front Core, , , β .
- ?
. , , P&L , β . , , , .
- ?
β , . , .
- ?
β , .
Front Core , frontend β .
, , -, . - , , , UX- , , , , . .
. : , , npm-. storybook, API, , , . Web Core, , .
- UI-KIT
:
- ;
- ;
- ;
- (UX);
- , .
:
- β , , , .
- UI-KIT β , .
- () β UI-KIT .
- β . , , , .
, -. , , . , , . UI-KIT.
β .
. .
, .
. React β . Typescript , . -? -, , . -, .
:
, , . , . SemVer, .. -; API β -; API , β -.
β .
: UI-KIT, . tree shaking, , .
:
- , UX . - - UI-KIT, Web Core-.
:
- UI-KIT , , API . - * - , .
- .
β UI-KIT . SemVer.
:
- .
- UI-KIT .
:
- , .
ncu --filter /@ui-kit/ -mu && npm i
,@ui-kit
β scope .
, . npm-, , .
, Rush β . ? Lerna , , . . Rush : change- , , changelog, , . Rush Git . , .
Rush:
ESM ESNext tree-shaking Rollup, Webpack 5, . , . : , . , , . : browserlist , , . SSR-, NodeJS, CommonJS-.
CSS- Sass .
:
. , , , . . css-modules generateScopedName:'[local]-${projectManifest.version}'
, projectManifest
β package.json. .
. styles-framework, , , , . .
, CSS in JS. , , .
, SVG-. CDN , . ( ) , . React-, SVG-. , SVG- IconComponent, fill
currentColor
SVG-o, , .
, , . : open-source , , , , , . , -, .
, ? , , , .
user-agent . .
:
:
- ( ).
- , .
, :
- API .
- . open source-, , . , , «».
- . , , - .
- . .
- . . - API, - , - . . , .
.
, , .
. CHANGELOG.md, Rush.
Readme Readme, .
frontend (React)-, product ownerβ. PO . , -, UI-KIT , , UX/UI. , , .
Web Core . , , .. . , . . , - . ! !