# angular-phonecat **Repository Path**: yakun0622/angular-phonecat ## Basic Information - **Project Name**: angular-phonecat - **Description**: No description available - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2015-07-30 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # AngularJS Phone Catalog Tutorial Application ## Overview This application takes the developer through the process of building a web-application using angular. The application is loosely based on the **Google Phone Gallery**, which no longer exists. Here is a historical reference: [Google Phone Gallery on WayBack](http://web.archive.org/web/20131215082038/http://www.android.com/devices/). Each tagged commit is a separate lesson teaching a single aspect of angular. The full tutorial can be found at http://docs.angularjs.org/tutorial. ## Prerequisites ### Git - A good place to learn about setting up git is [here][git-github]. - Git [home][git-home] (download, documentation). ### Node.js and Tools - Get [Node.js][node-download]. - Install the tool dependencies (`npm install`). ## Workings of the application - The application filesystem layout structure is based on the [angular-seed] project. - There is no dynamic backend (no application server) for this application. Instead we fake the application server by fetching static json files. - Read the Development section at the end to familiarize yourself with running and developing an angular application. ## Commits / Tutorial Outline You can check out any point of the tutorial using git checkout step-? To see the changes which between any two lessons use the git diff command. git diff step-?..step-? ### step-0 - Add ngApp directive to bootstrap the app. - Add simple template with an expression. ### step-1 - Add static html list with two phones into index.html. We will convert this static page into dynamic one with the help of angular. ### step-2 - Convert the static html list into dynamic one by: - creating `PhoneListCtrl` controller for the application. - extracting the data from HTML, moving it into the controller as an in-memory dataset. - converting the static HTML document into an Angular template with the use of the `ngRepeat` directive which iterates over the dataset of phones. `ngRepeat` clones its contents for each instance in the dataset and renders it into the view. - Add a simple unit test to show off how to write tests and run them with Karma. ### step-3 - Add a search box to demonstrate how: - the data-binding works on input fields. - to use the `filter` filter. - `ngRepeat` automatically shrinks and grows the number of phones in the view. - Add an end-to-end test to: - show how end-to-end tests are written and how to run them with Protractor. - prove that the search box and the repeater are correctly wired together. ### step-4 - Add `age` property to each phone in the data model. - Add a `