Can someone ELI5 what State and State Management is?

If you're approaching state management it is important to grasp the generic concepts and problems that go with it.

So first of all what is a state and why do we need "management" for that.
A state is something that defines some kind of information regarding your application which usually changes over time. Let's say you want to give access to some features only to logged in users. So the easy approach would be to just define a variable somewhere, which keeps track of that. Probably the variable would initialize with false and then changes to true after the user logs in.
This is where the management part kicks in. Generally some parts of your application just consume the state while others may change it. The implementation of this will have heavily impact what your application will look like in the end.

How is the state distributed throughout the application?
How will state consumers know that some state or maybe just some part of it has changed? And in what way do they react to state changes?
How do you change the state over time? Will there be conflicts at some point in time, where two different parts of the application might interfere with each other?

In Angular we usually use a reactive approach via rxjs for this. So if a state is something that changes over time, then it is just some form of stream. This is where rxjs kicks in. Observables/Subjects in any form are just streams which we can use to distribute our state throughout the application. A simple approach is to implement some service which defines the state through a BehaviorSubject. The service can then be injected to whereever you want to consume (subscribe) the state.
For state changes the service might provide a setState method, which should be the only one place where you change the state (Subject.next).

If things get more complicated there are lot's of state management libs which introduce more layers of abstraction. If all of this is completely new for you, I suggest the service approach first.

Keep in mind that this is just a very short explanation but maybe it helps.

/r/Angular2 Thread