Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Enterprise Angular with Nx: Robust Architectur...
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Manfred Steyer
PRO
April 19, 2021
Programming
270
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Enterprise Angular with Nx: Robust Architectures and Fast Builds @iJS London 2021
Manfred Steyer
PRO
April 19, 2021
More Decks by Manfred Steyer
See All by Manfred Steyer
Generative UI & AI-Assistants for Your Angular Solutions
manfredsteyer
PRO
1
370
Generative UI & AI-Assistants for Your Angular Solutions
manfredsteyer
PRO
0
170
Nostalgia Meets Technology: Super Mario with TypeScript
manfredsteyer
PRO
0
250
Signal Forms: Details & Live Coding @enterJS 2026 in Mannheim
manfredsteyer
PRO
0
270
Strategic Design in the Frontend: Moduliths & Micro Frontends @DDDEurope
manfredsteyer
PRO
0
190
Agentic UI
manfredsteyer
PRO
0
280
Signal Forms: Beyond the Basics @ngBaguette 2026 in Paris
manfredsteyer
PRO
0
320
Agentic UI beyond Chats Architecture Patterns & Open Standards @ngMunich 05/2026
manfredsteyer
PRO
0
270
Agentic AI in the Frontend: Architectures with Open Standards @iJS London 2026
manfredsteyer
PRO
0
200
Other Decks in Programming
See All in Programming
Building a Meta Ray-Ban display app
akkeylab
0
160
Go 1.27 における memory allocation の高速化
andpad
0
240
【やさしく解説 設計編・中級 #6】良いアーキテクチャとは ~ 一本の登り道の、行き先 ~
panda728
PRO
0
220
FDEが実現するAI駆動経営の現在地
gonta
2
290
数百円から始めるRuby電子工作
tarosay
0
160
プロポーザルを書いてもらう
pvcresin
0
550
Claude CodeとAgentCore Gatewayを繋ぐ際の認証認可 / Authentication and authorization when connecting Claude Code with AgentCore Gateway
har1101
2
300
生成AIで帳票OCRが「簡単に」作れる時代になった?
kon_shou
0
1.1k
仕様書を書く前にハーネスを作る - Agent Native開発は「探索を速く、判定を固く」
gotalab555
4
1.7k
複数の Claude Code が"放置"されてしまう問題をCLI ダッシュボードを自作して解決した話
sumihiro3
1
700
今さら聞けない .NET CLI
htkym
0
200
jsmini JavaScript Engine を作ってみた話
yosuke_furukawa
PRO
0
330
Featured
See All Featured
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
210
Automating Front-end Workflow
addyosmani
1369
210k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.9k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1.3k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2.3k
Into the Great Unknown - MozCon
thekraken
41
2.7k
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
670
Prompt Engineering for Job Search
mfonobong
0
410
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
1
400
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
470
Leo the Paperboy
mayatellez
8
2.1k
Transcript
@BASTAcon & @ManfredSteyer ManfredSteyer Manfred Steyer, ANGULARarchitects.io Enterprise Angular with
Nx: Robust Architectures and Fast Builds
@BASTAcon & @ManfredSteyer
@BASTAcon & @ManfredSteyer
@BASTAcon & @ManfredSteyer
@ManfredSteyer
@ManfredSteyer Manfred Steyer
@ManfredSteyer
@ManfredSteyer Monorepo Structure
@ManfredSteyer Advantages Everyone uses the latest versions No version conflicts
Sharing Libs: Easy
@ManfredSteyer Moving back and forth Npm Registry
@ManfredSteyer Two Flavors • Like Workspaces/Solutions in different IDEs Project
Monorepo • E. g. used at Google or Facebook Company-wide Monorepo
@ManfredSteyer Creating a Workspace with the CLI npm install -g
@angular/cli ng new workspace cd workspace ng generate app my-app ng generate lib my-lib ng serve --project my-app ng build --project my-app
@ManfredSteyer Tooling & Generator https://nrwl.io/nx
@ManfredSteyer Visualize Module Structure
@ManfredSteyer Creating a Workspace with the CLI npm install -g
@angular/cli ng new workspace cd workspace ng generate app my-app ng generate lib my-lib ng serve --project my-app ng build --project my-app
@ManfredSteyer Creating a Workspace with Nx npm install -g @angular/cli
npm init nx-workspace myworkspace cd workspace ng generate app my-app ng generate lib my-lib ng serve --project my-app ng build --project my-app
@ManfredSteyer Creating a Workspace with NX npm install -g @angular/cli
npm init nx-workspace myworkspace cd workspace ng generate app my-app ng generate lib my-lib --directory my-domain ng serve --project my-app ng build --project my-app
@ManfredSteyer DEMO
@ManfredSteyer
@ManfredSteyer
@ManfredSteyer Tagging Apps and Libs (nx.json) "booking": { "tags": ["domain:booking",
"type:app"] }, "booking-feature-search": { "tags": ["domain:booking", "type:feature"] },
@ManfredSteyer Tagging Apps and Libs (nx.json) "booking": { "tags": ["domain:booking",
"type:app"] }, "booking-feature-search": { "tags": ["domain:booking", "type:feature"] },
@ManfredSteyer Linting (.eslintrc) { "sourceTag": "domain:booking", "onlyDependOnLibsWithTags": ["domain:booking", "domain:shared"] }
@ManfredSteyer DEMO
@ManfredSteyer
@ManfredSteyer Options File System Nx Cloud Custom Cache
@ManfredSteyer Configuration (nx.json) "tasksRunnerOptions": { "default": { "runner": "@nrwl/workspace/tasks-runners/default", […]
} },
@ManfredSteyer Configuration (nx.json) "tasksRunnerOptions": { "default": { "runner": "@nrwl/workspace/tasks-runners/default", "options":
{ "cacheableOperations": ["build", "lint", "test", "e2e"], […] } } },
@ManfredSteyer Using nx build app-or-lib --with-deps
@ManfredSteyer Prerequisite for Incremental Builds ng g lib lib-name --buildable
@ManfredSteyer DEMO
@ManfredSteyer Also Test and Lint-Results Can be Cached nx build
app-or-lib --with-deps nx lint app-or-lib --with-deps nx test app-or-lib --with-deps nx e2e app-or-lib --with-deps
@ManfredSteyer Nx Console for Visual Studio Code
@ManfredSteyer • • • •
@ManfredSteyer Free eBook ANGULARarchitects.io/book
@ManfredSteyer • • • •
@ManfredSteyer
@ManfredSteyer d Slides & Examples Remote and In-House http://softwarearchitekt.at/workshops