Angular is broken out into several main concepts. I won’t spend time breaking them all down as you can find a full list here: https://docs.angularjs.org/guide/concepts however here are what I consider the most important elements you need to know about to get started with Angular.
Model: Data shown to the user.
View: What the user sees.
Controller: Business logic behind views
Data Binding: Syncing data between the model and the view.
Module: A way to contain specific functionality within an application
As you can see from the above screen shots we are simply looping over items in the todoList model. Because of the way Angular binds data manipulating the todos object will directly alter the view by appending more items. For instance, we could have a form field in our view and on submit append to the todos model.
As you can see in the above example we have added in the form element with the ng-submit directive that is calling the addTodo function in our TodoListController. On our controller, we have added the addTodo function that simply pushes the text into our todos model.