Single Page Web Applications with AngularJS (Coursera)

Single Page Web Applications with AngularJS (Coursera)

Do you want to write powerful, maintainable, and testable front end applications faster and with less code? Then consider joining this course to gain skills in one of the most popular Single Page Application (SPA) frameworks today, AngularJS. Developed and backed by Google, AngularJS is a very marketable skill to acquire.

Class Deals by MOOC List - Click here and see Coursera's Active Discounts, Deals, and Promo Codes.

In this course, we will explore the core design of AngularJS 1.x (latest version of AngularJS 1), its components and code organization techniques. We will enhance the functionality of our web app by utilizing dependency injection to reuse existing services as well as write our own. We will create reusable HTML components that take advantage of AngularJS data binding as well as extend HTML syntax with a very powerful feature of AngularJS called directives. We’ll set up routing so our SPA can have multiple views. We will also learn how to unit test our functionality. At the end of this course, you will build a fully functional, well organized and tested web application using AngularJS and deploy it to the cloud.

Syllabus

WEEK 1
Introduction to AngularJS
In this module, we are going to start by going over how grading works for this course, will introduce some recommended books, as well as give you the information on how to find all of the source code that you will see throughout the course.
We will then dive into the development environment setup for both Mac and Windows. The core of this module will be the introduction not only to the basics of AngularJS, but more importantly, the concepts that back AngularJS as a good solution for developing front-end web applications. To become a good software developer and not just with AngularJS, you will need to understand these concepts. But for becoming a good AngularJS developer, these concepts are essential, because they will allow you to understand the issues the framework is addressing and therefore get a good grasp on the solutions AngularJS is offering.

WEEK 2
Filters, Digest Cycle, Controller Inheritance, and Custom Services
We will start this module by learning how to use Angular filters to manipulate our data into the format we want and learn how to create our own custom filters. We will then dive deep into the digest cycle, which is the process AngularJS uses to magically update our web page with the bound data from our ViewModel or the controller. Understanding this process is crucial in getting comfortable with AngularJS. We'll also see some cases where we'll need to assist that process somewhat and understand why that is. After that, we'll learn one of the most fundamental concepts in the Javascript programming language, which is Prototypal Inheritance. Clear understanding of that topic is a must before we talk about inheritance between AngularJS controllers in our application. We'll finish off the module by learning how to create our own custom Angular services as well as how to configure them. With custom Angular services we'll be able to share data across different controllers or other components in our application. We will also learn a few useful Angular directives that allow us to place looping and conditional logic direction into our HTML. You'll see that by the end of this module, you'll have the skills to create a fairly sophisticated web application that starts to use some of the more advanced software architecture techniques.

WEEK 3
Under Construction - available in week 4 (or earlier)
In this module, we start by introducing the idea of Component-based architecture. We will then delve into the AngularJS component API. The component API is something that was just recently added into Angular 1 and it's not only supposed to improve your application through the use of Component-based architecture, but also prepare you for an upgrade to Angular version 2, which uses components almost exclusively. We will then learn about the AngularJS event system and how to split up our application into smaller modules that can then be glued together to produce our final application. We'll finish off the module by diving fairly deep into Routing between views in your application and, specifically, into the use of the ui-router module, which is one of the most popular open source routing solutions within the AngularJS ecosystem. In fact, it's so popular that even the main Google documentation for routing in Angular links to ui-router. Routing is a very important topic. Without it, your Single Page Application is stuck displaying just 1 view, without an elegant way to display other views.

WEEK 5
Under Construction - available in week 5 (or earlier)
Welcome to module 5! This is the last module in the course. We'll start this module by learning just how easy it is to validate forms with Angular. We will then delve into unit testing our AngularJS code. We will go over how to set up tests for every type of major Angular artifact: controller, service, directive, and component, as well as how to test services that access the network through the HTTP service. However, the last part of the module is the most fun. We will take the site that was developed for our real client in my previous course and re-write the entire thing using AngularJS. However, the coding fun doesn't have to stop there. After you finish the required part of the course, you can move on to the optional bonus part where we take our newly developed AngularJS application and enhance with it even more features that will allow the restaurant owners to administer their own data. We'll go over setting up authentication, editing restaurant menu items, uploading menu item pictures and so on.

Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

AJAX for Web Developers (Coursera) Coursera
Coursera Instructor Network

AJAX for Web Developers (Coursera)

The "AJAX for Web Developers" course explores how modern websites update parts of a web page without the need to reload the entire page, providing a fluid and fast user experience. This course covers the relationship between client apps or websites and servers, the distinction between full page loads and AJAX, and the best use-cases for each.

Sep 21st 2026
3 Weeks
Building Web Applications in PHP (Coursera) Coursera
University of Michigan

Building Web Applications in PHP (Coursera)

In this course, you'll explore the basic structure of a web application, and how a web browser interacts with a web server. You'll be introduced to the request/response cycle, including GET/POST/Redirect. You'll also gain an introductory understanding of Hypertext Markup Language (HTML), as well as the basic syntax and data structures of the PHP language, variables, logic, iteration, arrays, error handling, and superglobal variables, among other elements.

Sep 14th 2026
5-12 Weeks
Programming Mobile Applications for Android Handheld Systems: Part 2 (Coursera) Coursera
University of Maryland, College Park

Programming Mobile Applications for Android Handheld Systems: Part 2 (Coursera)

This course introduces you to the design and implementation of Android applications for mobile devices. You will build upon concepts from the prior course, including handling notifications, using multimedia and graphics and incorporating touch and gestures into your apps.

Sep 28th 2026
5-12 Weeks
Microwave engineering and antennas (Coursera) Coursera
Eindhoven University of Technology

Microwave engineering and antennas (Coursera)

This unique Master-level course provides you with in-depth know-how of microwave engineering and antennas. The course combines both passive and active microwave circuits as well as antenna systems. Future applications, like millimeter-wave 5G/beyond-5G wireless communications or automotive radar, require experts that can co-design highly integrated antenna systems that include both antennas and microwave electronics. We will provide you with the required theoretical foundation as well as hands-on experience using state-of-the-art design tools. The web lectures are supported by many on-line quizzes in which you can practice the background theory.

Sep 28th 2026
5-12 Weeks
Fundamentals Of NgRx (Coursera) Coursera
Board Infinity

Fundamentals Of NgRx (Coursera)

Welcome to the "Fundamentals of ngRX" course, your gateway to becoming a proficient ngRx developer. This course is designed to equip you with the skills and knowledge required to harness the full potential of ngRx in your Angular projects. With a focus on core concepts, advanced state management, ngRx Data, and building real-world applications, you'll gain a comprehensive understanding of ngRx and its practical implementation.

Sep 28th 2026
2 Weeks
Python Scripting: Files, Inheritance, and Databases (Coursera) Coursera
LearnQuest

Python Scripting: Files, Inheritance, and Databases (Coursera)

This course is the third course in a series that aims to prepare you for a role working as a programmer. In this course, you will be introduced to the three main concepts in programming: Files, Inheritance and external libaries. Labs will allow the students to apply the material in the lectures in simple computer programs designed to re-enforce the material in the lesson.

Sep 14th 2026
4 Weeks
Inheritance and Data Structures in Java (Coursera) Coursera
University of Pennsylvania

Inheritance and Data Structures in Java (Coursera)

This course provides a comprehensive look at Java inheritance, including access modifiers and overriding methods. Students are introduced to abstract classes, and will learn how to read and write to files, use regular expressions for parsing text, and how to leverage complex data structures like collections and maps. Additionally, this course offers strategies for catching errors and debugging code, including an overview of Eclipse’s debugging tool.

Sep 14th 2026
4 Weeks
Foundations of Objective-C App Development (Coursera) Coursera
University of California, Irvine

Foundations of Objective-C App Development (Coursera)

An introduction to the Objective-C programming language. This will prepare you for more extensive iOS app development and build a foundation for advanced iOS development topics. Objective-C programming requires a Mac laptop or desktop computer. An iOS device is optional if the learner is willing to working exclusively with the simulator. Some learners have been able to work with an OS X virtual machine on Windows, but explaining how to do that is beyond the scope of this course.

Sep 14th 2026
4 Weeks
Learn React Router 6 (Coursera) Coursera
Scrimba

Learn React Router 6 (Coursera)

Learn React Router v6, the most popular routing library for React applications and one of the most downloaded React support libraries ever. In this course, you’ll learn the most important parts of the React Router (v6) library while building an app called “VanLife”, an app for renting decked-out travel vans for your next road trip adventure.

Sep 21st 2026
3 Weeks
How to Get Into Web Development (Coursera) Coursera
University of Leeds

How to Get Into Web Development (Coursera)

Adding web development to your skillset is an excellent career move if you are into coding and you seek career growth and advancement. In this online course, you will explore the web development specialisations - front-end, back-end and full-stack development, and understand the different roles in a web development team.

Sep 28th 2026
2 Weeks
Intel® Network Academy - Network Transformation 102 (Coursera) Coursera
Intel Corporation

Intel® Network Academy - Network Transformation 102 (Coursera)

Welcome to the Intel® Network Academy – a comprehensive training program on network transformation. In this program, we will be covering the topic areas of software defined infrastructure (SDI) network functions virtualization (NFV), software-defined networking (SDN) and beyond. Network Transformation 102 covers topics such as VNF Operations & Development, Cryptography, and Hyperscan technology, students will dive into the benefits of Intel hardware and software and explore how to accelerate compute-intensive operations with Intel® QuickAssist Technology (Intel® QAT).

Sep 28th 2026
4 Weeks