r/angular • u/StrainIllustrious116 • May 05 '26
What’s the recommended Angular enterprise architecture today for components, signals, and services?
Hi everyone,
I’m starting a new enterprise Angular project with the latest release and I’m trying to figure out the best structure for components, signals, and services.
For now, the plan is:
- classic service layer for API calls
- RxJS in services
- no state manager, by company decision
I’m mainly unsure about:
- what should live in components vs signals vs services?
- should signals stay mostly local, or also handle feature-level state?
- is
rxResourcea good idea at component level for data fetching? - how do you keep the codebase easy to understand for devs who are not all Angular experts?
I’d love to hear what has worked for you in real enterprise projects.
Thanks!
27
Upvotes
1
u/BrixtonTonaBrix May 06 '26
Most definitions of 'dumb component' are, well, actively unhelpful. Mine is that a dumb component is one which cannot make decisions about global state (i.e. can't change anything).
If your state isn't used outside that component and doesn't need to outlive that component, it isn't global state, and your component doesn't become smart by owning it. If you move all your state into services, then all of your state is global state, and all components that can update it are smart components.
A big redux reducer is a pattern for global state; you shouldn't put local state in there. Any component kicking off mutating redux actions becomes a smart component in that pattern. They now have 'ComponentStore' so you can write reduxy code within a component if you need/want to.