Көпөңірлік мемлекеттік платформа
Frontend Architect · Lean Solutions · 2022 – қазір
Angular 22 Nx TypeScript Tailwind v4 Elf Transloco GitLab CI
- өңір: әрқайсысында портал мен админка
- 17
- кітапхана
- 49
- менің коммиттерім
- 1 164
- менің біріктірілген MR-ым
- 436
- Angular нұсқасы
- 6 → 22
Платформа сандармен
Мәселе
Әр өңір алдыңғысынан көшірілген жеке Angular жобасы болды. Бір өңірге жасалған функцияны қалған өңірлердің бәріне қолмен көшіруге тура келетін. CI/CD болмады.
Не істедім
Өңірлік қосымшаларды бір Nx монорепозиторийіне біріктірдім: ортақ кітапханалардан ( ui,ui-widgets,data-access,feature-*) құралған 10+ қоғамдық портал мен админ-панель, тәуелділік шекаралары бақыланадыTailwind CSS v4 токендерінде ішкі UI кітапханасы мен дизайн-жүйе жасадым GitLab CI-ды нөлден баптадым: бір пайплайн барлық staging қосымшасын линттейді, тестілейді, жинайды және деплойлайды Стекті Angular 6-дан 22-ге жаңарттым (signals, standalone компоненттер, жаңа control flow)
Нәтижелер
- код ортақ кітапханаларда; әр өңірлік қосымша — жұқа қабық (~200 мың жолдың ~18 мыңы)
- ~90%
- жаңа өңірді іске қосуға: өз мәтіндері, логотипі мен favicon-ы бар жаңа қосымша қабығы
- ~5 мин
- барлық staging қосымшасына автоматты деплой; бұрын пайплайн болмаған
- ~7 мин
Ортақ кітапханалар: ~90% 10+ қосымша қабығы: ~18 мың жол
| Бұрын | Қазір | |
|---|---|---|
| Жаңа функция | Бұрын: әр өңірлік репозиторийге қолмен көшірілді | Қазір: бір рет жазылады, барлық өңірге шығады |
| Жаңа өңір | Бұрын: алдыңғы жобаның көшірмесі | Қазір: ~5 минут: жаңа қосымша қабығы |
| Staging деплойы | Бұрын: пайплайн болмаған | Қазір: ~7 минут, толық автоматты |
| Angular | Бұрын: 6 | Қазір: 22 |
Медиа
Төменнен кітапхана таңдаңыз
Кітапхананы өзгерту:
Блогта толығырақ
- Көшірілген 10+ Angular-жобадан бір Nx-монорепозиторийге
- Nx-монорепозиторийге нөлден CI: «пайплайн жоқтан» барлық staging-қолданбаларға 7 минутқа дейін
- Angular 6 → 22: жаңарту жолы және неден сүрінесің
- Үлкен монорепозиторийде Tailwind v3 → v4 миграциясы
- Angular-монорепозиторийдегі Sentry: «пайдаланушылар шағымданбайды» дегеннен бір топтағы 6889 оқиғаға дейін
- Қайталанатын қателерден қорғаныс ретінде өз ESLint-ережелерің
- Өздері жөндейтін ESLint-ережелер: fixer, suggestions және Angular-шаблондар