Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Enterprise Angular with Nx: Sustainable Archite...
Search
Manfred Steyer
PRO
May 06, 2021
Programming
440
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Enterprise Angular with Nx: Sustainable Architectures & Fast Builds @JAX 2021
Manfred Steyer
PRO
May 06, 2021
More Decks by Manfred Steyer
See All by Manfred Steyer
Beyond Chatbots: Agentic UI with Open Standards @AGNTcon 2026 in Amsterdam
manfredsteyer
PRO
0
110
Next-Level Frontends: Agentic Web UIs Under the Hood
manfredsteyer
PRO
0
76
Agentic UI with Open Standards @ngGraz Sep 2026
manfredsteyer
PRO
0
91
Agentic UI with Open Standards @GDG Salzburg, Bgl & Prishtina
manfredsteyer
PRO
0
77
Generative UI & AI-Assistants for Your Angular Solutions
manfredsteyer
PRO
1
520
Generative UI & AI-Assistants for Your Angular Solutions
manfredsteyer
PRO
0
220
Nostalgia Meets Technology: Super Mario with TypeScript
manfredsteyer
PRO
0
300
Signal Forms: Details & Live Coding @enterJS 2026 in Mannheim
manfredsteyer
PRO
0
310
Strategic Design in the Frontend: Moduliths & Micro Frontends @DDDEurope
manfredsteyer
PRO
0
220
Other Decks in Programming
See All in Programming
そのリトライ、死んだコネクションを使い回していませんか ── GoのHTTPクライアントとHTTP/2を実プロダクト障害から学び直す
myus4a
0
220
Starting & Sustaining Code-Based E2E Testing for Non-Coding QA Teams( #jasstniigata )
teyamagu
PRO
1
500
手動確認はもう限界 〜XCUITestでCustom URL Schemeの遷移を起動種別ごとに自動テストする〜 / Testing Custom URL Schemes with XCUITest
otouto
0
330
スマート反転とウェブアクセシビリティ
camiha
0
210
【高い買い物LT会】初任給で話題の国産フィジカルAIを買った話
akagami
PRO
0
170
AI が書く Go コードの品質を劇的に向上させる Linter: “declscope”
mpyw
0
380
巨大モノリシックアプリ モダン化大作戦
ktcryomm
1
1.1k
Jetpack Compose メカニズム
skydoves
0
470
Java 27新機能 / Java 27 new features
kishida
2
170
SREの越境 / SRE Collaboration
y0hgi
2
270
パズルゲームの作り方 / how to make puzzle games
kaityo256
PRO
2
160
The Good Stuff, Not the Slop: Engineering High-Quality Android Apps with Modern AI Tooling
danybony
1
260
Featured
See All Featured
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
710
Six Lessons from altMBA
skipperchong
29
4.5k
GraphQLの誤解/rethinking-graphql
sonatard
75
12k
Agile that works and the tools we love
rasmusluckow
331
22k
Music & Morning Musume
bryan
48
7.4k
The Invisible Side of Design
smashingmag
301
52k
Color Theory Basics | Prateek | Gurzu
gurzu
1
470
YesSQL, Process and Tooling at Scale
rocio
174
15k
Darren the Foodie - Storyboard
khoart
PRO
4
3.9k
What's in a price? How to price your products and services
michaelherold
247
13k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
4.9k
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
830
Transcript
@BASTAcon & @ManfredSteyer ManfredSteyer Manfred Steyer, ANGULARarchitects.io Enterprise Angular with
Nx: Sustainable Architectures & 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 What to Cache? ng build ng lint ng test
ng e2e
@ManfredSteyer Where to Cache? 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 DEMO
@ManfredSteyer Nx Console for Visual Studio Code
@ManfredSteyer • • • •
@ManfredSteyer
@ManfredSteyer Booking Booking Boarding Boarding Shared Shared Feature Feature Feature
Feature Feature Feature Feature Feature Feature Feature UI UI UI UI UI UI UI UI UI UI UI UI UI UI UI UI UI UI Domain Domain Domain Domain Domain Domain Domain Domain Domain Domain Domain Domain Util Util Util Util Util Util Util Util Util Util Util Util @ManfredSteyer Smart Comp. Dumb Comp.
@ManfredSteyer Booking Booking Boarding Boarding Shared Shared Feature Feature Feature
Feature Feature Feature Feature Feature Feature Feature UI UI UI UI UI UI UI UI UI UI UI UI UI UI UI UI UI UI Domain Domain Domain Domain Domain Domain Domain Domain Domain Domain Domain Domain Util Util Util Util Util Util Util Util Util Util Util Util @ManfredSteyer
@ManfredSteyer Automate
@ManfredSteyer Usage
@ManfredSteyer DEMO
@ManfredSteyer Free eBook ANGULARarchitects.io/book
@ManfredSteyer • • • •
@ManfredSteyer
@ManfredSteyer d Slides & Examples Remote and In-House http://softwarearchitekt.at/workshops