James,
Good question. I too would welcome any insights.
At the moment, am using very similar approach to the
scotch.io examples in link you provided. For form specific validation like simply required, then ng-required attribute on select form elements, and the standard HTML5 required attribute is usually enough. Most resources I have studied on AngularJS appear to be doing something very similar but perhaps the community can offer different ideas.
Are you using JS server side in Node etc? For that, have started adopting
https://github.com/chriso/validator.js Find this works nicely for most situations, and can be further supported with lodash / underscore utility methods. Could conceivably use that client side too.
Best regards,
Richard.