Created for Nine Lives Foundation. Captures intake information convenient for our veterinarian.
This project was an excellent application of AngularJS and supporting technologies. It illustrates the use of the following:
- AngularJS
- Querying JSON-over-HTTP APIs using Angular's $http service
- Use of Bootstrap for look and feel, navigation, and mobile form factor support
- Use of Angular Bootstrap for form controls
- Separation of concerns using MVC architecture
- Use of bower as a package manager
- Use of Angular Growl for notifications
- Use of Angular Cookie for cookie expiration
- Use of Angular UI Router for state-based routing and authentication enforcement
- Use of promises for asynchronous queries
- How to create and inject Angular constants, services and factories
- Use of Github Pages for hosting a pure Javascript/CSS/HTML application
- How to use the excellent RescueGroups.org animal shelter management API
In the process, I came up to speed on best practices for these technologies:
- Using Bootstrap's grid layout and glyphicons
- Using Bootstrap's required fields feature
- Using these Angular Bootstrap's directives: Tooltips, Alerts, Typeahead
- Using the right patterns for the select tag and ng-options
- How to use Angular's $filter service in controller code
- How to create my own form validators
- How to reduce the burden of many injected services by creating my own injector container
- How to use base64 encoding and decoding to obfuscate certain fields
- How to adapt the RescueGroups.org PHP examples to Angular