This book introduces AngularJS through a sample project that builds gradually. Learn about the basic concepts that allow you to create effective applications, including modules, scopes, services, and directives. A separate chapter is devoted to connecting to a REST-based web service. In addition, the tools Bower, Grunt, Karma, and Yo are presented, which help in development and can even make certain tasks unnecessary. With Yeoman, the authors outline a workflow that defines how these tools can be employed to create a productive environment for developers. The authors have implemented a large number of projects using AngularJS, and many of the insights from these practical experiences are included in this book in the form of tip boxes. After reading this guide, you will be able to understand how to use each of the modules in AngularJS and how their interaction works; develop modular, structured, and easy-to-maintain client-side web applications; and create quality AngularJS applications through the use of test-driven development methods.