Anatomy of a large Angular application

Build it and they’ll… have an easier time developing.

Do I really need a strategy?

Where do I put this piece of code?

How do I modify data?

How come this event changed my data and state?

Why does modifying a piece of code suddenly break more than half of my unit tests?

Setting a direction

Steer the ship in that… uh, general… direction

The bare necessities

Separating concerns

A good application standing on the shoulders of verticals

A facade can (…) reduce dependencies of outside code on the inner workings of a library, since most code uses the facade, thus allowing more flexibility in developing the system.

Keeping the flow of data unidirectional

Managing UI state using data

Transpiling code

Having a build process in place

A typical build process


Real world example

Heroes of Warcraft is a trademark and Hearthstone is a trademark or registered trademark of Blizzard Entertainment, Inc., in the U.S. and/or other countries.

The devil is in the detail

Back to the drawing board



Love podcasts or audiobooks? Learn on the go with our new app.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store