gitextract_1lrcw1wg/ ├── README.md ├── chapter1/ │ ├── recipe1/ │ │ ├── css/ │ │ │ └── bootstrap.css │ │ ├── index.html │ │ └── js/ │ │ └── angular.js │ ├── recipe2/ │ │ ├── css/ │ │ │ └── bootstrap.css │ │ ├── index.html │ │ ├── jquery_example.html │ │ └── js/ │ │ └── angular.js │ ├── recipe3/ │ │ ├── css/ │ │ │ └── bootstrap.css │ │ ├── index.html │ │ └── js/ │ │ ├── angular.js │ │ └── app.js │ ├── recipe4/ │ │ ├── css/ │ │ │ └── bootstrap.css │ │ ├── index.html │ │ └── js/ │ │ └── angular.js │ └── recipe5/ │ ├── css/ │ │ └── bootstrap.css │ ├── index.html │ └── js/ │ ├── angular.js │ └── app.js ├── chapter10/ │ └── recipe1/ │ └── contacts/ │ ├── README.md │ ├── app.js │ ├── package.json │ ├── public/ │ │ ├── css/ │ │ │ ├── app.css │ │ │ └── bootstrap.css │ │ └── js/ │ │ ├── app.js │ │ ├── controllers/ │ │ │ ├── ContactsEditCtrl.js │ │ │ ├── ContactsIndexCtrl.js │ │ │ ├── ContactsShowCtrl.js │ │ │ └── MainCtrl.js │ │ ├── controllers.js │ │ ├── directives.js │ │ ├── filters.js │ │ ├── lib/ │ │ │ └── angular/ │ │ │ ├── angular-cookies.js │ │ │ ├── angular-loader.js │ │ │ ├── angular-resource.js │ │ │ ├── angular-sanitize.js │ │ │ ├── angular.js │ │ │ └── version.txt │ │ └── services.js │ ├── routes/ │ │ ├── api.js │ │ └── index.js │ └── views/ │ ├── layout.jade │ └── partials/ │ ├── .gitignore │ ├── edit.jade │ ├── index.jade │ └── show.jade ├── chapter2/ │ ├── recipe1/ │ │ ├── css/ │ │ │ └── bootstrap.css │ │ ├── index.html │ │ └── js/ │ │ ├── angular.js │ │ └── app.js │ ├── recipe2/ │ │ ├── css/ │ │ │ └── bootstrap.css │ │ ├── index.html │ │ └── js/ │ │ ├── angular.js │ │ └── app.js │ ├── recipe3/ │ │ ├── css/ │ │ │ └── bootstrap.css │ │ ├── index.html │ │ └── js/ │ │ ├── angular.js │ │ └── app.js │ ├── recipe4/ │ │ ├── css/ │ │ │ └── bootstrap.css │ │ ├── index.html │ │ └── js/ │ │ ├── angular.js │ │ └── app.js │ ├── recipe5/ │ │ ├── css/ │ │ │ └── bootstrap.css │ │ ├── index.html │ │ └── js/ │ │ ├── angular.js │ │ └── app.js │ ├── recipe6/ │ │ ├── css/ │ │ │ └── bootstrap.css │ │ ├── index.html │ │ └── js/ │ │ ├── angular.js │ │ └── app.js │ └── recipe7/ │ ├── README.md │ ├── app/ │ │ ├── css/ │ │ │ ├── .gitignore │ │ │ └── app.css │ │ ├── img/ │ │ │ └── .gitignore │ │ ├── index-async.html │ │ ├── index.html │ │ ├── js/ │ │ │ └── controllers.js │ │ ├── lib/ │ │ │ └── angular/ │ │ │ ├── angular-cookies.js │ │ │ ├── angular-loader.js │ │ │ ├── angular-resource.js │ │ │ ├── angular-sanitize.js │ │ │ ├── angular.js │ │ │ └── version.txt │ │ └── partials/ │ │ ├── .gitignore │ │ ├── partial1.html │ │ └── partial2.html │ ├── config/ │ │ ├── testacular-e2e.conf.js │ │ └── testacular.conf.js │ ├── logs/ │ │ └── .gitignore │ ├── scripts/ │ │ ├── e2e-test.bat │ │ ├── e2e-test.sh │ │ ├── test.bat │ │ ├── test.sh │ │ ├── watchr.rb │ │ └── web-server.js │ └── test/ │ ├── e2e/ │ │ ├── runner.html │ │ └── scenarios.js │ ├── lib/ │ │ └── angular/ │ │ ├── angular-mocks.js │ │ ├── angular-scenario.js │ │ └── version.txt │ └── unit/ │ └── controllersSpec.js ├── chapter3/ │ ├── recipe1/ │ │ ├── css/ │ │ │ └── bootstrap.css │ │ ├── index.html │ │ └── js/ │ │ └── angular.js │ ├── recipe2/ │ │ ├── css/ │ │ │ └── bootstrap.css │ │ ├── index.html │ │ └── js/ │ │ ├── angular.js │ │ └── app.js │ ├── recipe3/ │ │ ├── README.md │ │ ├── app/ │ │ │ ├── css/ │ │ │ │ ├── .gitignore │ │ │ │ └── app.css │ │ │ ├── img/ │ │ │ │ └── .gitignore │ │ │ ├── index-async.html │ │ │ ├── index.html │ │ │ ├── js/ │ │ │ │ └── app.js │ │ │ ├── lib/ │ │ │ │ └── angular/ │ │ │ │ ├── angular-cookies.js │ │ │ │ ├── angular-loader.js │ │ │ │ ├── angular-resource.js │ │ │ │ ├── angular-sanitize.js │ │ │ │ ├── angular.js │ │ │ │ └── version.txt │ │ │ ├── partials/ │ │ │ │ ├── .gitignore │ │ │ │ ├── partial1.html │ │ │ │ └── partial2.html │ │ │ └── widget.html │ │ ├── config/ │ │ │ ├── testacular-e2e.conf.js │ │ │ └── testacular.conf.js │ │ ├── logs/ │ │ │ └── .gitignore │ │ ├── scripts/ │ │ │ ├── e2e-test.bat │ │ │ ├── e2e-test.sh │ │ │ ├── test.bat │ │ │ ├── test.sh │ │ │ ├── watchr.rb │ │ │ └── web-server.js │ │ └── test/ │ │ ├── e2e/ │ │ │ ├── runner.html │ │ │ └── scenarios.js │ │ └── lib/ │ │ └── angular/ │ │ ├── angular-mocks.js │ │ ├── angular-scenario.js │ │ └── version.txt │ ├── recipe4/ │ │ ├── css/ │ │ │ └── bootstrap.css │ │ ├── index.html │ │ └── js/ │ │ ├── angular.js │ │ └── app.js │ ├── recipe5/ │ │ ├── css/ │ │ │ └── bootstrap.css │ │ ├── index.html │ │ └── js/ │ │ ├── angular.js │ │ └── app.js │ ├── recipe6/ │ │ ├── css/ │ │ │ └── bootstrap.css │ │ ├── index.html │ │ └── js/ │ │ ├── angular.js │ │ └── app.js │ ├── recipe7/ │ │ ├── css/ │ │ │ └── bootstrap.css │ │ ├── index.html │ │ └── js/ │ │ ├── angular.js │ │ └── app.js │ └── recipe8/ │ ├── README.md │ ├── app/ │ │ ├── css/ │ │ │ ├── .gitignore │ │ │ └── bootstrap.css │ │ ├── img/ │ │ │ └── .gitignore │ │ ├── index-async.html │ │ ├── index.html │ │ ├── js/ │ │ │ └── app.js │ │ ├── lib/ │ │ │ └── angular/ │ │ │ ├── angular-cookies.js │ │ │ ├── angular-loader.js │ │ │ ├── angular-resource.js │ │ │ ├── angular-sanitize.js │ │ │ ├── angular.js │ │ │ └── version.txt │ │ └── partials/ │ │ ├── .gitignore │ │ ├── partial1.html │ │ └── partial2.html │ ├── config/ │ │ ├── testacular-e2e.conf.js │ │ └── testacular.conf.js │ ├── logs/ │ │ └── .gitignore │ ├── scripts/ │ │ ├── e2e-test.bat │ │ ├── e2e-test.sh │ │ ├── test.bat │ │ ├── test.sh │ │ ├── watchr.rb │ │ └── web-server.js │ └── test/ │ ├── e2e/ │ │ ├── runner.html │ │ └── scenarios.js │ ├── lib/ │ │ ├── angular/ │ │ │ ├── angular-mocks.js │ │ │ ├── angular-scenario.js │ │ │ └── version.txt │ │ └── jasmine-jquery.js │ └── unit/ │ └── directivesSpec.js ├── chapter4/ │ ├── recipe1/ │ │ ├── css/ │ │ │ └── bootstrap.css │ │ ├── index.html │ │ └── js/ │ │ ├── angular-locale_de.js │ │ └── angular.js │ ├── recipe2/ │ │ ├── css/ │ │ │ └── bootstrap.css │ │ ├── index.html │ │ └── js/ │ │ ├── angular.js │ │ └── app.js │ ├── recipe3/ │ │ ├── css/ │ │ │ └── bootstrap.css │ │ ├── index.html │ │ └── js/ │ │ ├── angular.js │ │ └── app.js │ └── recipe4/ │ ├── README.md │ ├── app/ │ │ ├── css/ │ │ │ ├── .gitignore │ │ │ └── bootstrap.css │ │ ├── img/ │ │ │ └── .gitignore │ │ ├── index-async.html │ │ ├── index.html │ │ ├── js/ │ │ │ └── app.js │ │ ├── lib/ │ │ │ └── angular/ │ │ │ ├── angular-cookies.js │ │ │ ├── angular-loader.js │ │ │ ├── angular-resource.js │ │ │ ├── angular-sanitize.js │ │ │ ├── angular.js │ │ │ └── version.txt │ │ └── partials/ │ │ ├── .gitignore │ │ ├── partial1.html │ │ └── partial2.html │ ├── config/ │ │ ├── testacular-e2e.conf.js │ │ └── testacular.conf.js │ ├── logs/ │ │ └── .gitignore │ ├── scripts/ │ │ ├── e2e-test.bat │ │ ├── e2e-test.sh │ │ ├── test.bat │ │ ├── test.sh │ │ ├── watchr.rb │ │ └── web-server.js │ └── test/ │ ├── e2e/ │ │ ├── runner.html │ │ └── scenarios.js │ ├── lib/ │ │ ├── angular/ │ │ │ ├── angular-mocks.js │ │ │ ├── angular-scenario.js │ │ │ └── version.txt │ │ └── jasmine-jquery.js │ └── unit/ │ └── filtersSpec.js ├── chapter5/ │ ├── recipe1/ │ │ ├── README.md │ │ ├── app/ │ │ │ ├── css/ │ │ │ │ ├── .gitignore │ │ │ │ └── app.css │ │ │ ├── data/ │ │ │ │ └── posts.json │ │ │ ├── img/ │ │ │ │ └── .gitignore │ │ │ ├── index-async.html │ │ │ ├── index.html │ │ │ ├── js/ │ │ │ │ └── controllers.js │ │ │ └── lib/ │ │ │ └── angular/ │ │ │ ├── angular-cookies.js │ │ │ ├── angular-loader.js │ │ │ ├── angular-resource.js │ │ │ ├── angular-sanitize.js │ │ │ ├── angular.js │ │ │ └── version.txt │ │ ├── config/ │ │ │ ├── testacular-e2e.conf.js │ │ │ └── testacular.conf.js │ │ ├── logs/ │ │ │ └── .gitignore │ │ ├── scripts/ │ │ │ ├── e2e-test.bat │ │ │ ├── e2e-test.sh │ │ │ ├── test.bat │ │ │ ├── test.sh │ │ │ ├── watchr.rb │ │ │ └── web-server.js │ │ └── test/ │ │ ├── e2e/ │ │ │ ├── runner.html │ │ │ └── scenarios.js │ │ ├── lib/ │ │ │ └── angular/ │ │ │ ├── angular-mocks.js │ │ │ ├── angular-scenario.js │ │ │ └── version.txt │ │ └── unit/ │ │ └── controllersSpec.js │ ├── recipe2/ │ │ ├── README.md │ │ ├── app.js │ │ ├── package.json │ │ ├── public/ │ │ │ ├── css/ │ │ │ │ ├── app.css │ │ │ │ └── bootstrap.css │ │ │ └── js/ │ │ │ ├── app.js │ │ │ ├── controllers.js │ │ │ ├── directives.js │ │ │ ├── filters.js │ │ │ ├── lib/ │ │ │ │ └── angular/ │ │ │ │ ├── angular-cookies.js │ │ │ │ ├── angular-loader.js │ │ │ │ ├── angular-resource.js │ │ │ │ ├── angular-sanitize.js │ │ │ │ ├── angular.js │ │ │ │ └── version.txt │ │ │ └── services.js │ │ └── views/ │ │ ├── index.jade │ │ └── layout.jade │ ├── recipe3/ │ │ ├── css/ │ │ │ └── bootstrap.css │ │ ├── index.html │ │ └── js/ │ │ ├── angular-resource.js │ │ ├── angular.js │ │ └── app.js │ ├── recipe4/ │ │ ├── README.md │ │ ├── app/ │ │ │ ├── css/ │ │ │ │ ├── .gitignore │ │ │ │ └── app.css │ │ │ ├── data/ │ │ │ │ ├── first.json │ │ │ │ ├── second.json │ │ │ │ └── third.json │ │ │ ├── img/ │ │ │ │ └── .gitignore │ │ │ ├── index.html │ │ │ ├── js/ │ │ │ │ └── controllers.js │ │ │ └── lib/ │ │ │ └── angular/ │ │ │ ├── angular-cookies.js │ │ │ ├── angular-loader.js │ │ │ ├── angular-resource.js │ │ │ ├── angular-sanitize.js │ │ │ ├── angular.js │ │ │ └── version.txt │ │ ├── config/ │ │ │ ├── testacular-e2e.conf.js │ │ │ └── testacular.conf.js │ │ ├── logs/ │ │ │ └── .gitignore │ │ ├── scripts/ │ │ │ ├── e2e-test.bat │ │ │ ├── e2e-test.sh │ │ │ ├── test.bat │ │ │ ├── test.sh │ │ │ ├── watchr.rb │ │ │ └── web-server.js │ │ └── test/ │ │ ├── e2e/ │ │ │ ├── runner.html │ │ │ └── scenarios.js │ │ ├── lib/ │ │ │ └── angular/ │ │ │ ├── angular-mocks.js │ │ │ ├── angular-scenario.js │ │ │ └── version.txt │ │ └── unit/ │ │ └── controllersSpec.js │ └── recipe5/ │ ├── README.md │ ├── app/ │ │ ├── css/ │ │ │ ├── .gitignore │ │ │ └── app.css │ │ ├── img/ │ │ │ └── .gitignore │ │ ├── index-async.html │ │ ├── index.html │ │ ├── js/ │ │ │ └── controllers.js │ │ └── lib/ │ │ └── angular/ │ │ ├── angular-cookies.js │ │ ├── angular-loader.js │ │ ├── angular-resource.js │ │ ├── angular-sanitize.js │ │ ├── angular.js │ │ └── version.txt │ ├── config/ │ │ ├── testacular-e2e.conf.js │ │ └── testacular.conf.js │ ├── logs/ │ │ └── .gitignore │ ├── scripts/ │ │ ├── e2e-test.bat │ │ ├── e2e-test.sh │ │ ├── test.bat │ │ ├── test.sh │ │ ├── watchr.rb │ │ └── web-server.js │ └── test/ │ ├── e2e/ │ │ ├── runner.html │ │ └── scenarios.js │ ├── lib/ │ │ └── angular/ │ │ ├── angular-mocks.js │ │ ├── angular-scenario.js │ │ └── version.txt │ └── unit/ │ └── controllersSpec.js ├── chapter6/ │ ├── recipe1/ │ │ ├── README.md │ │ ├── app/ │ │ │ ├── css/ │ │ │ │ ├── .gitignore │ │ │ │ └── app.css │ │ │ ├── img/ │ │ │ │ └── .gitignore │ │ │ ├── index-async.html │ │ │ ├── index.html │ │ │ ├── js/ │ │ │ │ └── app.js │ │ │ ├── lib/ │ │ │ │ └── angular/ │ │ │ │ ├── angular-cookies.js │ │ │ │ ├── angular-loader.js │ │ │ │ ├── angular-resource.js │ │ │ │ ├── angular-sanitize.js │ │ │ │ ├── angular.js │ │ │ │ └── version.txt │ │ │ └── partials/ │ │ │ ├── .gitignore │ │ │ ├── person_details.html │ │ │ └── person_list.html │ │ ├── config/ │ │ │ ├── testacular-e2e.conf.js │ │ │ └── testacular.conf.js │ │ ├── logs/ │ │ │ └── .gitignore │ │ ├── scripts/ │ │ │ ├── e2e-test.bat │ │ │ ├── e2e-test.sh │ │ │ ├── test.bat │ │ │ ├── test.sh │ │ │ ├── watchr.rb │ │ │ └── web-server.js │ │ └── test/ │ │ ├── e2e/ │ │ │ ├── runner.html │ │ │ └── scenarios.js │ │ └── lib/ │ │ └── angular/ │ │ ├── angular-mocks.js │ │ ├── angular-scenario.js │ │ └── version.txt │ ├── recipe2/ │ │ ├── README.md │ │ ├── app.js │ │ ├── package.json │ │ ├── public/ │ │ │ ├── css/ │ │ │ │ ├── app.css │ │ │ │ └── bootstrap.css │ │ │ └── js/ │ │ │ ├── app.js │ │ │ ├── controllers.js │ │ │ ├── directives.js │ │ │ ├── filters.js │ │ │ ├── lib/ │ │ │ │ └── angular/ │ │ │ │ ├── angular-cookies.js │ │ │ │ ├── angular-loader.js │ │ │ │ ├── angular-resource.js │ │ │ │ ├── angular-sanitize.js │ │ │ │ ├── angular.js │ │ │ │ └── version.txt │ │ │ └── services.js │ │ └── views/ │ │ ├── index.jade │ │ ├── layout.jade │ │ └── partials/ │ │ ├── index.jade │ │ └── show.jade │ ├── recipe3/ │ │ ├── README.md │ │ ├── app/ │ │ │ ├── css/ │ │ │ │ ├── .gitignore │ │ │ │ └── app.css │ │ │ ├── img/ │ │ │ │ └── .gitignore │ │ │ ├── index.html │ │ │ ├── js/ │ │ │ │ └── app.js │ │ │ ├── lib/ │ │ │ │ └── angular/ │ │ │ │ ├── angular-cookies.js │ │ │ │ ├── angular-loader.js │ │ │ │ ├── angular-resource.js │ │ │ │ ├── angular-sanitize.js │ │ │ │ ├── angular.js │ │ │ │ └── version.txt │ │ │ └── partials/ │ │ │ ├── .gitignore │ │ │ ├── help.html │ │ │ ├── index.html │ │ │ └── show.html │ │ ├── config/ │ │ │ ├── testacular-e2e.conf.js │ │ │ └── testacular.conf.js │ │ ├── logs/ │ │ │ └── .gitignore │ │ ├── scripts/ │ │ │ ├── e2e-test.bat │ │ │ ├── e2e-test.sh │ │ │ ├── test.bat │ │ │ ├── test.sh │ │ │ ├── watchr.rb │ │ │ └── web-server.js │ │ └── test/ │ │ ├── e2e/ │ │ │ ├── runner.html │ │ │ └── scenarios.js │ │ └── lib/ │ │ └── angular/ │ │ ├── angular-mocks.js │ │ ├── angular-scenario.js │ │ └── version.txt │ └── recipe4/ │ ├── README.md │ ├── app/ │ │ ├── css/ │ │ │ ├── .gitignore │ │ │ └── app.css │ │ ├── img/ │ │ │ └── .gitignore │ │ ├── index.html │ │ ├── js/ │ │ │ └── app.js │ │ ├── lib/ │ │ │ └── angular/ │ │ │ ├── angular-cookies.js │ │ │ ├── angular-loader.js │ │ │ ├── angular-resource.js │ │ │ ├── angular-sanitize.js │ │ │ ├── angular.js │ │ │ └── version.txt │ │ └── partials/ │ │ ├── .gitignore │ │ ├── help.html │ │ ├── index.html │ │ ├── login.html │ │ └── show.html │ ├── config/ │ │ ├── testacular-e2e.conf.js │ │ └── testacular.conf.js │ ├── logs/ │ │ └── .gitignore │ ├── scripts/ │ │ ├── e2e-test.bat │ │ ├── e2e-test.sh │ │ ├── test.bat │ │ ├── test.sh │ │ ├── watchr.rb │ │ └── web-server.js │ └── test/ │ ├── e2e/ │ │ ├── runner.html │ │ └── scenarios.js │ └── lib/ │ └── angular/ │ ├── angular-mocks.js │ ├── angular-scenario.js │ └── version.txt ├── chapter7/ │ ├── recipe1/ │ │ ├── css/ │ │ │ └── bootstrap.css │ │ ├── index.html │ │ └── js/ │ │ ├── angular.js │ │ └── app.js │ ├── recipe2/ │ │ ├── css/ │ │ │ └── bootstrap.css │ │ ├── index.html │ │ └── js/ │ │ ├── angular.js │ │ └── app.js │ ├── recipe3/ │ │ ├── css/ │ │ │ └── bootstrap.css │ │ ├── index.html │ │ └── js/ │ │ ├── angular.js │ │ └── app.js │ ├── recipe4/ │ │ ├── css/ │ │ │ └── bootstrap.css │ │ ├── index.html │ │ └── js/ │ │ ├── angular.js │ │ └── app.js │ ├── recipe5/ │ │ ├── css/ │ │ │ └── bootstrap.css │ │ ├── index.html │ │ └── js/ │ │ ├── angular.js │ │ └── app.js │ └── recipe6/ │ ├── css/ │ │ └── bootstrap.css │ ├── index.html │ └── js/ │ ├── angular-ui.js │ ├── angular.js │ └── app.js ├── chapter8/ │ ├── recipe1/ │ │ ├── css/ │ │ │ └── bootstrap.css │ │ ├── index.html │ │ └── js/ │ │ ├── angular.js │ │ └── app.js │ ├── recipe2/ │ │ ├── css/ │ │ │ └── bootstrap.css │ │ ├── index.html │ │ └── js/ │ │ ├── angular.js │ │ └── app.js │ ├── recipe3/ │ │ ├── css/ │ │ │ └── bootstrap.css │ │ ├── index.html │ │ └── js/ │ │ ├── angular.js │ │ └── app.js │ ├── recipe4/ │ │ ├── css/ │ │ │ └── bootstrap.css │ │ ├── index.html │ │ └── js/ │ │ ├── angular.js │ │ └── app.js │ ├── recipe5/ │ │ ├── css/ │ │ │ └── bootstrap.css │ │ ├── index.html │ │ └── js/ │ │ ├── angular.js │ │ └── app.js │ ├── recipe6/ │ │ ├── css/ │ │ │ └── bootstrap.css │ │ ├── index.html │ │ └── js/ │ │ ├── angular.js │ │ └── app.js │ ├── recipe7/ │ │ ├── css/ │ │ │ └── bootstrap.css │ │ ├── index.html │ │ └── js/ │ │ ├── angular-ui-bootstrap-modal.js │ │ ├── angular.js │ │ └── app.js │ └── recipe8/ │ ├── css/ │ │ └── bootstrap.css │ ├── index.html │ └── js/ │ ├── angular-resource.js │ ├── angular.js │ └── app.js └── chapter9/ └── recipe1/ └── contacts/ ├── .gitignore ├── Gemfile ├── README.rdoc ├── Rakefile ├── app/ │ ├── assets/ │ │ ├── javascripts/ │ │ │ ├── angular/ │ │ │ │ ├── app.js.erb │ │ │ │ ├── controllers/ │ │ │ │ │ ├── .gitkeep │ │ │ │ │ ├── ContactsEditCtrl.js │ │ │ │ │ ├── ContactsIndexCtrl.js │ │ │ │ │ ├── ContactsShowCtrl.js │ │ │ │ │ └── MainCtrl.js │ │ │ │ ├── filters/ │ │ │ │ │ └── .gitkeep │ │ │ │ └── services/ │ │ │ │ ├── .gitkeep │ │ │ │ └── Contact.js │ │ │ └── application.js │ │ ├── stylesheets/ │ │ │ ├── application.css │ │ │ └── bootstrap_and_overrides.css │ │ └── templates/ │ │ ├── .gitkeep │ │ └── contacts/ │ │ ├── edit.html │ │ ├── index.html │ │ └── show.html │ ├── controllers/ │ │ ├── application_controller.rb │ │ ├── contacts_controller.rb │ │ └── layouts_controller.rb │ ├── helpers/ │ │ ├── application_helper.rb │ │ └── contacts_helper.rb │ ├── mailers/ │ │ └── .gitkeep │ ├── models/ │ │ ├── .gitkeep │ │ └── contact.rb │ └── views/ │ └── layouts/ │ └── application.html.erb ├── config/ │ ├── application.rb │ ├── boot.rb │ ├── database.yml │ ├── environment.rb │ ├── environments/ │ │ ├── development.rb │ │ ├── production.rb │ │ └── test.rb │ ├── initializers/ │ │ ├── backtrace_silencers.rb │ │ ├── inflections.rb │ │ ├── mime_types.rb │ │ ├── secret_token.rb │ │ ├── session_store.rb │ │ └── wrap_parameters.rb │ ├── locales/ │ │ └── en.yml │ └── routes.rb ├── config.ru ├── db/ │ ├── migrate/ │ │ └── 20130221092802_create_contacts.rb │ ├── schema.rb │ └── seeds.rb ├── doc/ │ └── README_FOR_APP ├── lib/ │ ├── assets/ │ │ └── .gitkeep │ └── tasks/ │ └── .gitkeep ├── public/ │ ├── 404.html │ ├── 422.html │ ├── 500.html │ └── robots.txt ├── script/ │ └── rails ├── spec/ │ └── javascripts/ │ └── angular/ │ └── .gitkeep ├── test/ │ ├── fixtures/ │ │ ├── .gitkeep │ │ └── contacts.yml │ ├── functional/ │ │ ├── .gitkeep │ │ └── contacts_controller_test.rb │ ├── integration/ │ │ └── .gitkeep │ ├── performance/ │ │ └── browsing_test.rb │ ├── test_helper.rb │ └── unit/ │ ├── .gitkeep │ ├── contact_test.rb │ └── helpers/ │ └── contacts_helper_test.rb └── vendor/ ├── assets/ │ ├── javascripts/ │ │ ├── .gitkeep │ │ ├── angular-resource.js │ │ ├── angular.js │ │ └── underscore.js │ └── stylesheets/ │ └── .gitkeep └── plugins/ └── .gitkeep