Tero Parviainen has written this amazing article. Making your own Angular.js
Its amazing how much you can make with frameworks like angular.js without understanding it. But learning how it works is going to help you use it better and make better apps.
Im finding with my scala server side programming that I dont need a big framework. With techniques like passing functions Im able to easily remove boiler plate. Im applying this to well understood backend problems, like verifying database operations and handling errors.
The world of front end frameworks is newer and less well understood. Hence why I found Tero's work is so useful. If we learn whats going on inside the framework, we apply the ideas elsewhere.