SlideShare a Scribd company logo
Building Angular Apps with Nx
Anastasia Necheporenko
Thanks to my team,
especially S. Mulyava
2
www.luxoft.com
Roadmap
Multi-repository Mono-repository Nrwl Nx
3
www.luxoft.com
Large application with multiple repositories
Main App – Repo 1 Another App – Repo 11
Module 1 –
Repo 2
Module 2 –
Repo 3
Module 3 –
Repo 4
Module 4 –
Repo 6
Module 7 –
Repo 9
…
Shared UI –
Repo 5
Shared BL –
Repo 10
4
www.luxoft.com
Multiple repositories. Advantages
 Isolation
 Module`s Versioning
 Local small codebase
5
www.luxoft.com
Having multiple repositories. Disadvantages
- Hard to find all affected places
- Specific rules for each repo
- Code duplication
- Managing dependencies
The diamond dependency problem
6
www.luxoft.com
Monorepo comes into play
 Easy code sharing
 Change`s affect is clear
 Easy best practice transitions between teams
 Single set of dependencies
7
www.luxoft.com
Monorepo. What are drawbacks ?
- No code boundaries
- ‘Heavy’ project (build, unit tests)
- Mess in code organization
- Immediately shared errors
8
www.luxoft.com
Nrwl Nx – open-source tool for Monorepo
Victor Savkin
Sources: https://medium.com/@vsavkin
Jeff Cross
https://medium.com/@jeffbcross
9
www.luxoft.com
Nx ecosystem
 Dependency graph
 Smart rebuilds of affected projects
 Computation caching
 Editor plugins
 Code generators
 Improved version migration process
10
www.luxoft.com
Nx - support for modern tools
11
www.luxoft.com
Time to show code
12
www.luxoft.com
Not everything is perfect
- Structure pattern has to be followed
- Documentation required
- Several types of configurational files
- Cost of migration to Nx
- Cross-team collaboration on agreed-upon patters can be difficult
- The codebases are forced to stay in sync
Thank You!

More Related Content

What's hot (20)

PPTX
Mono Repo
Zacky Pickholz
 
PDF
Understanding MicroSERVICE Architecture with Java & Spring Boot
Kashif Ali Siddiqui
 
PPTX
Jenkins CI presentation
Jonathan Holloway
 
PDF
Introduction to Docker Compose
Ajeet Singh Raina
 
PDF
React new features and intro to Hooks
Soluto
 
PPTX
Introduction Node.js
Erik van Appeldoorn
 
PDF
Micro Frontends Architecture - Jitendra kumawat (Guavus)
Tech Triveni
 
PPTX
Advantages and disadvantages of a monorepo
IanDavidson56
 
PPTX
Why kubernetes matters
Platform9
 
PPTX
Maven Basics - Explained
Smita Prasad
 
PDF
Monorepo at Pinterest
Suman Karumuri
 
PPT
Jenkins Overview
Ahmed M. Gomaa
 
PPTX
Software architecture for high traffic website
Tung Nguyen Thanh
 
ODP
Introduction to ReactJS
Knoldus Inc.
 
PPTX
Getting started with Docker
Ravindu Fernando
 
PDF
Angular Framework présentation PPT LIGHT
tayebbousfiha1
 
PPTX
Jenkins presentation
Valentin Buryakov
 
PPTX
React Architecture & Best Practices.pptx
AleksandarKondov
 
PPTX
React workshop presentation
Bojan Golubović
 
PPTX
Micro frontend
Amr Abd El Latief
 
Mono Repo
Zacky Pickholz
 
Understanding MicroSERVICE Architecture with Java & Spring Boot
Kashif Ali Siddiqui
 
Jenkins CI presentation
Jonathan Holloway
 
Introduction to Docker Compose
Ajeet Singh Raina
 
React new features and intro to Hooks
Soluto
 
Introduction Node.js
Erik van Appeldoorn
 
Micro Frontends Architecture - Jitendra kumawat (Guavus)
Tech Triveni
 
Advantages and disadvantages of a monorepo
IanDavidson56
 
Why kubernetes matters
Platform9
 
Maven Basics - Explained
Smita Prasad
 
Monorepo at Pinterest
Suman Karumuri
 
Jenkins Overview
Ahmed M. Gomaa
 
Software architecture for high traffic website
Tung Nguyen Thanh
 
Introduction to ReactJS
Knoldus Inc.
 
Getting started with Docker
Ravindu Fernando
 
Angular Framework présentation PPT LIGHT
tayebbousfiha1
 
Jenkins presentation
Valentin Buryakov
 
React Architecture & Best Practices.pptx
AleksandarKondov
 
React workshop presentation
Bojan Golubović
 
Micro frontend
Amr Abd El Latief
 

Similar to 'BUILDING ANGULAR APPS WITH NX' by Anastasia Necheporenko (11)

PDF
Angular based enterprise level frontend architecture
Himanshu Tamrakar
 
PPTX
Nx, Nrwl, and Angular Schematics are related tools
Sunny gupta
 
PPTX
GDG Morgantown, WV: Write code you can depend on!
Logan Spears
 
PDF
SFScon 2020 - Juri Strumpflohner - Beyond Basics - Scaling Development acros...
South Tyrol Free Software Conference
 
PDF
Custom angular libraries
MattVaughn9
 
PDF
AngularJS in Production (CTO Forum)
Alex Ross
 
PDF
Predictable reactive state management for enterprise apps using NGRX/platform
Ilia Idakiev
 
PDF
Leverage Nx Library thesis in Angular Architecture
Hoa Nguyen (Rin)
 
PDF
Multi modularized project setup with gulp, typescript and angular.js
David Amend
 
PPTX
Angular kickstart slideshare
SaleemMalik52
 
PPT
Top java script frameworks ppt
Omkarsoft Bangalore
 
Angular based enterprise level frontend architecture
Himanshu Tamrakar
 
Nx, Nrwl, and Angular Schematics are related tools
Sunny gupta
 
GDG Morgantown, WV: Write code you can depend on!
Logan Spears
 
SFScon 2020 - Juri Strumpflohner - Beyond Basics - Scaling Development acros...
South Tyrol Free Software Conference
 
Custom angular libraries
MattVaughn9
 
AngularJS in Production (CTO Forum)
Alex Ross
 
Predictable reactive state management for enterprise apps using NGRX/platform
Ilia Idakiev
 
Leverage Nx Library thesis in Angular Architecture
Hoa Nguyen (Rin)
 
Multi modularized project setup with gulp, typescript and angular.js
David Amend
 
Angular kickstart slideshare
SaleemMalik52
 
Top java script frameworks ppt
Omkarsoft Bangalore
 
Ad

More from OdessaJS Conf (20)

PPTX
'GraphQL Schema Design' by Borys Mohyla. OdessaJS'2021
OdessaJS Conf
 
PDF
'How i came up with my talk' by Yurii Artiukh. OdessaJS'2021
OdessaJS Conf
 
PDF
"Is there life in react without redux" by Babich Sergiy. OdessaJS'2021
OdessaJS Conf
 
PPTX
Олексій Павленко. CONTRACT PROTECTION ON THE FRONTEND SIDE: HOW TO ORGANIZE R...
OdessaJS Conf
 
PPTX
Андрій Троян. Розробка мікросервісів з NestJS. OdessaJS'2021
OdessaJS Conf
 
PPTX
Олексій Гончар "Використання Electron в розробці корпоративної відео-мессeндж...
OdessaJS Conf
 
PDF
Максим Климишин "Що такого особливого у пропозиції вартості шаблону Micro Fro...
OdessaJS Conf
 
PDF
Павло Галушко. GOOD CODE MYTHS. OdessaJS'2021
OdessaJS Conf
 
PPTX
"NODEJS & GRAPHQL COOKBOOK. LET’S TALK ABOUT MICRO-SERVICES" by Антон Чередні...
OdessaJS Conf
 
PPTX
'IS THERE JAVASCRIPT ON SWAGGER PLUGINS?' by Dmytro Gusev
OdessaJS Conf
 
PPTX
'ETHEREUM SMART CONTRACTS ON JS' by Yaroslav Dvorovenko
OdessaJS Conf
 
PPTX
'GOLANG USAGE IN DEVELOPMENT OF NODE.JS APPLICATIONS (NODE.JS: IN GO WE TRUST...
OdessaJS Conf
 
PPTX
'MICROFRONTENDS WITH REACT' by Liliia Karpenko
OdessaJS Conf
 
PDF
'Web performance metrics' BY ROMAN SAVITSKYI at OdessaJS'2020
OdessaJS Conf
 
PDF
'STORY OF ANOTHER ANIMATION' by YURII ARTYUKH at OdessaJS'2020
OdessaJS Conf
 
PDF
'JavaScript was invented in Odessa' by DMITRIY GUSEV at OdessaJS'2020
OdessaJS Conf
 
PDF
'Why svelte' by BORYS MOHYLA at OdessaJS'2020
OdessaJS Conf
 
PDF
'Effective node.js development' by Viktor Turskyi at OdessaJS'2020
OdessaJS Conf
 
PDF
'Tensorflow.js in real life' by Pavlo Galushko at OdessaJS'2020
OdessaJS Conf
 
PDF
'React+d3=LOVE' by Illia Olenchenko at OdessaJS'2020
OdessaJS Conf
 
'GraphQL Schema Design' by Borys Mohyla. OdessaJS'2021
OdessaJS Conf
 
'How i came up with my talk' by Yurii Artiukh. OdessaJS'2021
OdessaJS Conf
 
"Is there life in react without redux" by Babich Sergiy. OdessaJS'2021
OdessaJS Conf
 
Олексій Павленко. CONTRACT PROTECTION ON THE FRONTEND SIDE: HOW TO ORGANIZE R...
OdessaJS Conf
 
Андрій Троян. Розробка мікросервісів з NestJS. OdessaJS'2021
OdessaJS Conf
 
Олексій Гончар "Використання Electron в розробці корпоративної відео-мессeндж...
OdessaJS Conf
 
Максим Климишин "Що такого особливого у пропозиції вартості шаблону Micro Fro...
OdessaJS Conf
 
Павло Галушко. GOOD CODE MYTHS. OdessaJS'2021
OdessaJS Conf
 
"NODEJS & GRAPHQL COOKBOOK. LET’S TALK ABOUT MICRO-SERVICES" by Антон Чередні...
OdessaJS Conf
 
'IS THERE JAVASCRIPT ON SWAGGER PLUGINS?' by Dmytro Gusev
OdessaJS Conf
 
'ETHEREUM SMART CONTRACTS ON JS' by Yaroslav Dvorovenko
OdessaJS Conf
 
'GOLANG USAGE IN DEVELOPMENT OF NODE.JS APPLICATIONS (NODE.JS: IN GO WE TRUST...
OdessaJS Conf
 
'MICROFRONTENDS WITH REACT' by Liliia Karpenko
OdessaJS Conf
 
'Web performance metrics' BY ROMAN SAVITSKYI at OdessaJS'2020
OdessaJS Conf
 
'STORY OF ANOTHER ANIMATION' by YURII ARTYUKH at OdessaJS'2020
OdessaJS Conf
 
'JavaScript was invented in Odessa' by DMITRIY GUSEV at OdessaJS'2020
OdessaJS Conf
 
'Why svelte' by BORYS MOHYLA at OdessaJS'2020
OdessaJS Conf
 
'Effective node.js development' by Viktor Turskyi at OdessaJS'2020
OdessaJS Conf
 
'Tensorflow.js in real life' by Pavlo Galushko at OdessaJS'2020
OdessaJS Conf
 
'React+d3=LOVE' by Illia Olenchenko at OdessaJS'2020
OdessaJS Conf
 
Ad

Recently uploaded (20)

PDF
Newgen Beyond Frankenstein_Build vs Buy_Digital_version.pdf
darshakparmar
 
PDF
HubSpot Main Hub: A Unified Growth Platform
Jaswinder Singh
 
PDF
Complete JavaScript Notes: From Basics to Advanced Concepts.pdf
haydendavispro
 
PDF
[Newgen] NewgenONE Marvin Brochure 1.pdf
darshakparmar
 
PDF
Reverse Engineering of Security Products: Developing an Advanced Microsoft De...
nwbxhhcyjv
 
PDF
Blockchain Transactions Explained For Everyone
CIFDAQ
 
PPTX
Webinar: Introduction to LF Energy EVerest
DanBrown980551
 
PDF
July Patch Tuesday
Ivanti
 
PDF
Chris Elwell Woburn, MA - Passionate About IT Innovation
Chris Elwell Woburn, MA
 
PDF
Empower Inclusion Through Accessible Java Applications
Ana-Maria Mihalceanu
 
PDF
SWEBOK Guide and Software Services Engineering Education
Hironori Washizaki
 
PDF
Jak MŚP w Europie Środkowo-Wschodniej odnajdują się w świecie AI
dominikamizerska1
 
PDF
How Startups Are Growing Faster with App Developers in Australia.pdf
India App Developer
 
PDF
Log-Based Anomaly Detection: Enhancing System Reliability with Machine Learning
Mohammed BEKKOUCHE
 
PDF
Transcript: New from BookNet Canada for 2025: BNC BiblioShare - Tech Forum 2025
BookNet Canada
 
PDF
Python basic programing language for automation
DanialHabibi2
 
PDF
The Builder’s Playbook - 2025 State of AI Report.pdf
jeroen339954
 
PPTX
AI Penetration Testing Essentials: A Cybersecurity Guide for 2025
defencerabbit Team
 
PDF
CIFDAQ Market Insights for July 7th 2025
CIFDAQ
 
PPTX
AUTOMATION AND ROBOTICS IN PHARMA INDUSTRY.pptx
sameeraaabegumm
 
Newgen Beyond Frankenstein_Build vs Buy_Digital_version.pdf
darshakparmar
 
HubSpot Main Hub: A Unified Growth Platform
Jaswinder Singh
 
Complete JavaScript Notes: From Basics to Advanced Concepts.pdf
haydendavispro
 
[Newgen] NewgenONE Marvin Brochure 1.pdf
darshakparmar
 
Reverse Engineering of Security Products: Developing an Advanced Microsoft De...
nwbxhhcyjv
 
Blockchain Transactions Explained For Everyone
CIFDAQ
 
Webinar: Introduction to LF Energy EVerest
DanBrown980551
 
July Patch Tuesday
Ivanti
 
Chris Elwell Woburn, MA - Passionate About IT Innovation
Chris Elwell Woburn, MA
 
Empower Inclusion Through Accessible Java Applications
Ana-Maria Mihalceanu
 
SWEBOK Guide and Software Services Engineering Education
Hironori Washizaki
 
Jak MŚP w Europie Środkowo-Wschodniej odnajdują się w świecie AI
dominikamizerska1
 
How Startups Are Growing Faster with App Developers in Australia.pdf
India App Developer
 
Log-Based Anomaly Detection: Enhancing System Reliability with Machine Learning
Mohammed BEKKOUCHE
 
Transcript: New from BookNet Canada for 2025: BNC BiblioShare - Tech Forum 2025
BookNet Canada
 
Python basic programing language for automation
DanialHabibi2
 
The Builder’s Playbook - 2025 State of AI Report.pdf
jeroen339954
 
AI Penetration Testing Essentials: A Cybersecurity Guide for 2025
defencerabbit Team
 
CIFDAQ Market Insights for July 7th 2025
CIFDAQ
 
AUTOMATION AND ROBOTICS IN PHARMA INDUSTRY.pptx
sameeraaabegumm
 

'BUILDING ANGULAR APPS WITH NX' by Anastasia Necheporenko

Editor's Notes

  • #7: Shared code - Keeps your code DRY across your entire organization. Reuse validation code, UI components, and types across the codebase. Reuse code between the backend, the frontend, and utility libraries.
  • #12: npx create-nx-workspace --preset=angular 1) Lib – heavy, apps-lightweight and runnable
  • #13: Structure pattern has to be followed – one side view, organization inside lib is your choice