How to host an angularjs app in domain

Angularjs

Angularjs Problem Overview


Currently Learning to create a simple AngularJs App.

This is my first MVC app, so my questions may be very basic.

  1. I understand that we require nodejs to run the Angularjs App, so will the hosting provider have the node.js installed with their server?

  2. If so, which does the hosting provider support: the Angularjs, Emberjs, or Knockoutjs? Currently my client have hostgator and netfirms.

  3. While reading some posts, I learned a few terms which they use with Angular js like Yo, Grunt, Bower, so I just wanted to know what is this used for?.

  4. Can anybody tell how exactly you host the AngularJs app?

Angularjs Solutions


Solution 1 - Angularjs

If you're deploying a client-side only Angular application (ie. you don't have custom server code), then you might want to check out Firebase Hosting. It's specifically designed for hosting client-side applications that use Angular, Ember, React, etc.

Firebase's Hosting will let you deploy from command line without managing your own servers (no NodeJS), and it handles SSL, CDN, and other best practices for you.

(Disclaimer: I work for Firebase)

Solution 2 - Angularjs

AngularJS doesn't require node.js to work, you can even use it from the google CDN without having the script hosted on your server. Node.js is used mostly for the testing, like if you want to do e2e test with Karma for example. It's a good point if you have it, but you can host an app on a simple server without node.js, and test it locally for example

Actually, any server on the internet (a good old apache for example) will be able to host an angular app, as all the work will be done on the client side

Node.js, however, is required for the question 3. Yeoman (the Yo command), grunt and bower are part of the workflow sometimes used to build an angular app. But, these are not required either. It allows you to create quickly a skeleton for a new app, test it an deploy it. It's explained on their website, http://yeoman.io/

Those tools require node.js to work, but they're not a requirement for an angular app to work. It can be useful to have them somewhere if you plan on building many angular app in the future, but you will be able to host thoses apps even without any of these tools.

How to host your angular app ? Like any other HTML page. You can even copy this code and save it to your hard drive :

<html ng-app>
<head>
  <script src='https://ajax.googleapis.com/ajax/libs/angularjs/1.0.7/angular.min.js'></script>
</head>
<body>
  {{"hello"+" world"}}
</body>
</html>

then open it, it will work !

Solution 3 - Angularjs

NodeJS isn't a requirement for AngularJS. Angular is a client-side library.

Angular's team uses NodeJS to help you do things like test your javascript, or pull down files and set up everything you need to run a little web server.

So all you really need for an "AngularJS app" is 2 files: angular.js and some HTML file.

<html ng-app>
<head>
<script src="angular.js"></script>
</head>
<body ng-init="what = 'gas'">
   Now you're cooking with {{what}}!
</body>
</html>

Beyond that, any web server that will host static files will do for the most part.

Solution 4 - Angularjs

> I understand that we require nodejs to run the Angularjs App, so will > the hosting provider have the node.js installed with their server?

No, AngularJS doesnot require Node.js to run. It is just that tutorial you are using to learn AngularJS might be using Node.js for their examples.

AngularJS is a client side technology, so it does not need any specific server to run. And since you are using ASP.Net MVC as your development platform, you'll need an ASP.Net hosting for deploying your app.

You can take a look at my recent ASP.Net MVC / AngularJS development here: http://bipolarapp.bitsstech.com and this app is hosted at Windows Azure.

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionPCAView Question on Stackoverflow
Solution 1 - AngularjsAndrew LeeView Answer on Stackoverflow
Solution 2 - AngularjsDotDotDotView Answer on Stackoverflow
Solution 3 - AngularjsBen LeshView Answer on Stackoverflow
Solution 4 - AngularjsAmit MittalView Answer on Stackoverflow