Transitioning from Django to AngularJS

This write-up is made for quickly let you understand AngularJS and able to participate in the development of Horizon in Openstack by using AngularJS.

Prerequisite

Since AngularJS is actually a javascript library, you should know how to use JavaScript before you start the development. A great source to learn javascript is through http://www.w3schools.com/js/.

Besides the basic javascript syntax you should also understand the list of feature of javascript:

  • Function Hoisting
  • Callback Pattern
  • Module Pattern
  • Static Members

Leanring Curve

Although AngularJS web app is entirely client-side application, but you can write AngularJS application without intergrating with a back end at all and still have a dynamic, responsive web app. It is learning curve is steeper than normal front-end technique.

Write-up Structure

Since this write-up aims to quickly let you know how to develop AngularJS with openstack, I will skip the detail of JavaScript and AngularJS (maybe I will create an independent pages for tutorial). But now let’s install a devstack environment and testify the AngularJS portion. The write-up will follow this structure:

  • Boot A VM in Cloud
  • Install and initial devstack on the VM
  • Running the devstack and be able to play with the dashboard
  • Using Django to add a function to the dashboard
  • Instead of Django, using AngularJS to achieve that functionality