If you are starting a web project
for a team
today. What do you need to do?
If you are starting a web project
for a team
today. What do you need to do decide on?
What else?
What else?
What else?
What else?
What else?
where to put the code? Polyrepo vs Monorepo?
Publishing? Share code?
Build performance?
CI/CD
What if there is a tool...?
Nx - The Easy Choice
@devupconf - STL 2022
Chau Tran
twitter.com/@nartc1410
github.com/nartc
and all the Sponsors (https://www.devupconf.org/sponsors)
and all the Sponsors (https://www.devupconf.org/sponsors)
What is
?
What is
?
Smart
,
What is
?
Smart
,
Fast
What is
?
Smart
,
Fast
,
and
Extensible
What is
?
Smart
,
Fast
,
and
Extensible
Build system
What is
?
Smart
,
Fast
,
and
Extensible
Build system
Smart
Extensible
Fast
Smart
Extensible
Fast
Smart
Extensible
Fast
Plugins
Smart
Extensible
Fast
Plugins
Smart
Extensible
Fast
Plugins
Smart
Extensible
Fast
Plugins
Smart
Extensible
Fast
Plugins
Smart
Extensible
Fast
Plugins
nx generate @nrwl/angular:application app-two
nx generate @nrwl/angular:library lib-one
nx lint lib-one
nx test app-two
Smart
Extensible
Fast
Plugins
nx migrate @nrwl/workspace
Smart
Extensible
Fast
Plugins
Smart
Extensible
Fast
Plugins
Smart
Extensible
Fast
Plugins
Smart
Extensible
Fast
Plugins
nx generate @your-org/your-workspace:library lib-one
nx run lib-one:publish # where publish is @your-org/your-workspace:publish
Smart
Extensible
Fast
Plugins
Smart
Extensible
Fast
Plugins
Smart
Extensible
Fast
Workspace
Analysis
Smart
Extensible
Fast
Workspace
Analysis
Backend
Smart
Extensible
Fast
Workspace
Analysis
Backend
Service
Service
Service
Smart
Extensible
Fast
Workspace
Analysis
Backend
Service
Service
Service
Smart
Extensible
Fast
Workspace
Analysis
Backend
Service
Service
Service
Models
Validations
Smart
Extensible
Fast
Workspace
Analysis
Backend
Service
Service
Service
Models
Validations
Smart
Extensible
Fast
Workspace
Analysis
Client UI
Smart
Extensible
Fast
Workspace
Analysis
Client UI
Design Library
Smart
Extensible
Fast
Workspace
Analysis
Client UI
Design Library
Smart
Extensible
Fast
Workspace
Analysis
Client UI
Design Library
Blog UI
Admin UI
Smart
Extensible
Fast
Workspace
Analysis
Client UI
Design Library
Blog UI
Admin UI
Smart
Extensible
Fast
Workspace
Analysis
Client UI
Design Library
Blog UI
Admin UI
Client E2E
Blog E2E
Admin E2E
Smart
Extensible
Fast
Workspace
Analysis
Client UI
Design Library
Blog UI
Admin UI
Client E2E
Blog E2E
Admin E2E
Smart
Extensible
Fast
Workspace
Analysis
Client UI
Design Library
Blog UI
Admin UI
Client E2E
Blog E2E
Admin E2E
Validations
Models
Smart
Extensible
Fast
Workspace
Analysis
Client UI
Design Library
Blog UI
Admin UI
Client E2E
Blog E2E
Admin E2E
Validations
Models
Smart
Extensible
Fast
Workspace
Analysis
Client UI
Design Library
Blog UI
Admin UI
Client E2E
Blog E2E
Admin E2E
Smart
Extensible
Fast
Workspace
Analysis
Main library
Docs Site
Example 2
Example 3
Example 1
Smart
Extensible
Fast
Workspace
Analysis
Smart
Extensible
Fast
Workspace
Analysis
Smart
Extensible
Fast
Project Graph
Smart
Extensible
Fast
Workspace
Analysis
Smart
Extensible
Fast
Workspace
Analysis
Smart
Extensible
Fast
Workspace
Analysis
Smart
Extensible
Fast
Workspace
Analysis
Smart
Extensible
Fast
Workspace
Analysis
Smart
Extensible
Fast
Workspace
Analysis
Smart
Extensible
Fast
Workspace
Analysis
Smart
Extensible
Fast
Workspace
Analysis
Slow because of too much code?
Slow because of too much code?
Not really. We have cache
Caching
Caching
Nx is easy
because it filters the noises of decision fatigue away from the consumers
Nx is easy
because it provides powerful toolings to projects of any size by default, and customizable.
but...Nx is also complicated
but...Nx is also complicated
PS: Nx and Lerna are a thing now which might make Nx less complicated. Find me after if you're interested.
Demo
Resources
https://nx.dev
https://nx.app
https://www.youtube.com/c/Nrwl_io
Resources
https://nx.dev
https://nx.app
https://www.youtube.com/c/Nrwl_io
Credits
Miro - https://twitter.com/meeroslav
Laura - https://twitter.com/ltciro
Diana - https://twitter.com/dicaro87
Thank you
Nx - The easy choice
By Chau Tran
Nx - The easy choice
How Nx helps team get started, scale, and maintain projects
- 632