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
Modern Angular with Lightweight Stores: New Rul...
Search
Manfred Steyer
PRO
October 10, 2024
Programming
0
590
Modern Angular with Lightweight Stores: New Rules and Options
Manfred Steyer
PRO
October 10, 2024
Tweet
Share
More Decks by Manfred Steyer
See All by Manfred Steyer
AI Assistants for YourAngular Solutions @Angular Graz, March 2026
manfredsteyer
PRO
0
12
AI Assistants for Your Angular Solutions @ngVienna March 2026
manfredsteyer
PRO
0
23
AI Assistants for Your Angular Solutions
manfredsteyer
PRO
0
130
Nostalgia Meets Technology: Super Mario with TypeScript
manfredsteyer
PRO
0
80
Full Cycle Reactivity in Angular: SignalStore mit Signal Forms und Resources
manfredsteyer
PRO
0
62
Premier Disciplin for Micro Frontends Multi Version/ Framework Scenarios @OOP 2026, Munic
manfredsteyer
PRO
0
220
Beyond the Basics: Signal Forms
manfredsteyer
PRO
0
120
360° Signals in Angular: Signal Forms with SignalStore & Resources @ngLondon 01/2026
manfredsteyer
PRO
0
210
All About Angular‘s New Signal Forms
manfredsteyer
PRO
0
38
Other Decks in Programming
See All in Programming
go directiveを最新にしすぎないで欲しい話──あるいは、Go 1.26からgo mod initで作られるgo directiveの値が変わる話 / Go 1.26 リリースパーティ
arthur1
2
540
Codexに役割を持たせる 他のAIエージェントと組み合わせる実務Tips
o8n
3
1.3k
15年目のiOSアプリを1から作り直す技術
teakun
1
620
「やめとこ」がなくなった — 1月にZennを始めて22本書いた AI共創開発のリアル
atani14
0
370
Unity6.3 AudioUpdate
cova8bitdots
0
120
encoding/json/v2のUnmarshalはこう変わった:内部実装で見る設計改善
kurakura0916
0
400
Swift ConcurrencyでよりSwiftyに
yuukiw00w
0
260
Claude Code の Skill で複雑な既存仕様をすっきり整理しよう
yuichirokato
1
360
技術検証結果の整理と解析をAIに任せよう!
keisukeikeda
0
110
ふつうのRubyist、ちいさなデバイス、大きな一年 / Ordinary Rubyists, Tiny Devices, Big Year
chobishiba
1
430
SourceGeneratorのマーカー属性問題について
htkym
0
180
new(1.26) ← これすき / kamakura.go #8
utgwkk
0
2.2k
Featured
See All Featured
エンジニアに許された特別な時間の終わり
watany
106
240k
The Curious Case for Waylosing
cassininazir
0
270
We Are The Robots
honzajavorek
0
190
Balancing Empowerment & Direction
lara
5
940
Testing 201, or: Great Expectations
jmmastey
46
8.1k
The #1 spot is gone: here's how to win anyway
tamaranovitovic
2
980
How to train your dragon (web standard)
notwaldorf
97
6.6k
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
110
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
630
AI Search: Where Are We & What Can We Do About It?
aleyda
0
7.1k
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
470
HU Berlin: Industrial-Strength Natural Language Processing with spaCy and Prodigy
inesmontani
PRO
0
260
Transcript
AngularArchitects.io | @ManfredSteyer Modern Angular with Lightweight Stores: New Rules
and Options
"Krapfen"
None
None
Small Change => Huge Impact
What if we changed for a lightweight store?
Lightweight Stores Component Lightweight Store method() Observables, Signals, etc. sync/
async
Two Reasons for a Store Manage State Streamline Dataflow
None
None
None
Stores Streamline Reactive Flow Component Lightweight Store method() Observables, Signals,
etc. sync/ async Currently: Main Use Case for Signas
Some Lightweight Stores … Akita Elf Pinia NGRX Signal Store
How do Lightweight Stores Change Architecture Rules?
Agenda 1) Baseline Architecture 2) How Large Should a Store
be? 3) Where To Put The Store? 4) Global and/or Local State? 5) Preventing Cycles, Redundancies, and Inconsistencies
About me… Manfred Steyer, ANGULARarchitects.io (Remote) Angular Workshops and Consulting
Google Developer Expert for Angular Blog, Books, Articles, and Talks about Angular Manfred Steyer
Baseline Architecture
Stack NGRX Signal Store Angular Nx Monorepo
Booking Boarding Shared Feature Feature Feature Feature Feature UI UI
UI UI UI UI UI UI UI Data Data Data Data Data Data Util Util Util Util Util Util Enterprise Monorepo Patterns, Nrwl 2018: https://tinyurl.com/y2jjxld7 @ManfredSteyer Smart Comp. Dumb Comp.
Nx Libs: Modularization Incremental CI/CD Build Cache Parallelization in Builds
Sheriff: Module Boundaries on a per-folder basis @softarc/eslint-plugin-sheriff Works with
and without Nx
Nx & Sheriff Folders: Modularization Incremental CI/CD Build Cache Parallelization
in Builds Sheriff
Demo
How Granular Should it be?
Feature Sub- Feature
Where to put the Store?
Booking Boarding Shared Feature Feature Feature Feature Feature UI UI
UI UI UI UI UI UI UI Domain Domain Domain Domain Domain Domain Util Util Util Util Util Util Enterprise Monorepo Patterns, Nrwl 2018: https://tinyurl.com/y2jjxld7 @ManfredSteyer Feature
Feature UI Data Util Redux Feature Slice
Feature UI Data Util Lightweight Stores Cmp Cmp Lightweight Stores
can live everywhere! Component vs. Module Exposed vs. Hidden
Demo
Global vs. Local State?
Global vs. Local FeatureStore DomainStore FeatureService UtilityStore
Global vs. Local FeatureStore DomainStore UtilityStore
Demo
Cycles, Redundancies, and Inconsistencies
Let's think it through … • Layering • Redux DevTools
Demo
Free eBook (6th Edition) angularArchitects.io/ebook
Conclusion Lightweight Stores … … size of a (sub-)feature …
can live everywhere … orchestrated by a feature service … leverage layering to prevent cycles … Use DevTools!
Conclusion Architecture … … vertically sliced by domains … horizontally
by layers … enforced by Sheriff or Nx … fast builds with Nx
"Krapfen"
ManfredSteyer AngularArchitects.io Slides & Examples Remote Company Workshops and Consulting
http://angulararchitects.io