This is a Restaurant Website with frontend made using Angularjs & with backend made using Nodejs
- Bower : Package Manager for the Web
- Grunt & Gulp : Task Automation
- Yo : Web App scaffolding
- Yeoman : Workflow designed around using Yo, Bower and Gulp
- Single page application
- Model – view- controller Task runners:
- Minification : Removing unnecessary characters to reduce size
- Concatenation : Removing unnecessary characters to reduce size
- Js Hint : Checks for syntax errors for potential error.
- Uglification : Minification + Mangling (reduce local variables to single letters)
- Rechecking for errors
- Images: Optimization of images to reduce size
- Watch : To keep a watch on all the above if a change happens we don’t have to manually do it again.
- Server &/ Livereload : Serves up the compiled code (Live Reload).Automatically reload anytime when anything changes.
- Building site for deployment.
Software Design pattern that implements inversion of control for resolving dependencies.
- Dependency : Object that can be used(a service). 2. Injection : Passing of a dependency to a dependent object so that it can use it. Client doesn’t need to build an object.
- Creating Angular templates
- SPA(Single paged applications) : (i) No need to reload the entire page. (ii) Most resources are retrieved with a single page load. (iii) Redraw parts og the page when needed without requiring a full round trip.
- Data binding : one way & two way
- MVC/MVVM/MVW framework support
- Views ->Tempaltes + controller + Model
- Location & Routing
(i) Serves up data using REST Api. (ii) Supplies the static HTML pages , Angular templates & resources. Rendering of view is completely based on client side (i) Templating & Routing(How we move from one template to another)
Deep Linking : Hyperlink that specifies a link to a searchable or indexed piece of web content. Ex: http://www. confusion.food/index.html#/menu/0
Note:Any change following the hash in the url doesn’t lead to page reload . If anything to the right of the hash changes, browser doesn’t cause any page reload.(SPAs property).
-
Exposes the current URL in the browser address bar.
-
Synchronises the URL with the browser when the user:
(i) Changes the address bar. (ii)Clicks on the back/Forward buttons (iii)Clicks on a link
- Allows you to manipulate the hash portion of a URL.
=> Routing : Mapping the path portion of a URL to a handler for that particular route using ngRoute module. Ex: https://www.confusion.food/index.html#/menu/0 (link wil not work)
=> Networking: Json-server => Promise function: When we initiate asynchronous operation, promise comes back & tells what happened.
=> RESTful API => Unit Testing: Karma & Jasmine => End 2 End Testing: Protractor