
Define a clear goal to finish the course and earn the Udemy certificate. Engage with exercises and quizzes, and rely on instructor support to become a professional Angular web developer.
Install Angular and set up the development environment, build the first app and an appointment web app, and learn components, data binding, the Angular CLI, and the overall development process.
Build an appointment app from scratch to learn the fundamentals of Angular components and data binding, with features to add, list, remove, and persist appointments in the browser's local storage.
Install NodeJS, NPM, and the Angular CLI to build an Angular app, or develop in the browser with StackBlitz; for a full local setup, use NodeJS and Visual Studio Code.
Install Node.js and npm from nodejs.org, verify with node -v, then install Visual Studio Code from code.visualstudio.com and prepare to install the Angular CLI for your first project.
In this lesson we will install the Angular CLI (command line interface). Here is the command that we will use:
npm i @angular/cli@16.1.6 --location=global
Explore how an Angular application is structured and updated with hot reload. Inspect key files like angular.json and package.json, and the app component to understand components and selectors.
Create your first Angular component with the CLI, generate appointment list, understand module declarations in app module, and render the component via its selector app-appointment-list in the root app component.
Learn to implement one-way data binding in Angular by binding a string appointment property to the template using interpolation, and understand how change detection updates the view.
Create and export a TypeScript appointment interface in a models folder, define a typed object with id: number, title: string, and date: date, and bind it in the template.
If you want to copy the styles instead, you can find the file in the github repository here:
https://github.com/JannickLeismann/angular-course-appointment-app/blob/main/src/app/appointment-list/appointment-list.component.html
Create a new Angular project named Hotel Dash app with routing, run ng serve -o, clean the template to keep the router outlet, and begin building components, modules, and services.
Create a reservations interface in Angular to model hotel bookings, stored in a models folder with id, check-in/out dates, guest name, and email, and an optional room number.
Attach an ng submit listener to reservation form and implement on submit. Create inputs for check-in date, check-out date, name, email, and room number with form control names and validation.
Create and manage reservations with an Angular reservation service that stores data in an array and implements CRUD operations (get all, get one, add, update, delete) via dependency injection.
Learn to use ng-template with a local template reference and an ng if directive to conditionally render the reservations list or a no reservation message, improving user experience.
Learn to style a reservation form component using Bootstrap classes, including form-control, btn-primary, form-label, validation messages, and responsive grid layout for fields like check-in, check-out, guest info.
Style the reservation list as an HTML table with thead and tbody, looping rows with ngFor to display guest name, email, room, check-in, and check-out using Bootstrap table and buttons.
Master modern web architecture with angular, learning how front-end apps use http requests and observables to interact with backend APIs via restful services and asynchronous data flow.
Turn your hotel reservation platform into an Angular app using a real mock API with Mockoon, and learn to send HTTP requests via observables in a service for production-ready apps.
Use Mockoon to create a mock backend API for an Angular front end, exposing a /reservations endpoint on port 3000 that returns Hello world.
Prepare an Angular app to connect to a mock backend API, replacing local storage with a backend data flow via the Http client and observables.
Import the http client module, configure the base api url http://localhost:3000, and send a get request to /reservations returning an observable of reservations to be subscribed in ngOnInit.
Show how the product list component fetches products on init by injecting the product service, subscribing to the getProducts observable, and binding results to a products array for ngFor rendering.
Add a hover effect to product cards by scaling the mat-card and showing a pointer cursor. Implement a 0.2 second transition and introduce a container class to offset content.
Here is your exercise:
Create the checkout flow
add a new POST endpoint at mockoon /checkout
add a new method in the cart service to post the cart items to this endpoint
add a new method in the component to call the services method
connect the button (in the html template) to the components method via a click event
Have fun! :-)
Extend your product list with search and filter features using Angular Material form controls. Implement a case insensitive search by name and filter by price with input and select components.
Learn to add sorting in Angular by using the Angular Material select, tracking sort order, and sorting the filtered product list by price low-to-high or high-to-low.
Explore reactive development concepts like states, stores, and reducers on day five of the angular course. Build a reactive book management web app using angr with hands-on learning.
Learn how NgRx solves the problem of coordinating data across components with a single source of truth and a flux pattern for reactive Angular apps.
You can find the source code here:
There are some commits for different steps of the project development. Pick the one you are interested in:
https://github.com/JannickLeismann/angular-course-book-management-ngrx/commits/master
Create add book and remove book actions for the book entity using create action and props. Connect these actions to the reducer to process adding and deleting books.
Set up the global store by registering the book reducer in the root store module, tying actions and current state to a new state.
Apply the app state interface to enforce type safety across the store, ensuring the book property is an array and maintaining immutability in reducers.
Set up a home route to display the book list, render books with async pipe, and add or remove books by dispatching actions to the store.
Explore NgRx effects by building a book service and two actions for success and failure. Connect reducers and component subscriptions to manage data flow.
Learn to set up angular effects by creating a book effects class, injecting actions$ and a book service, and implementing an add book effect with createEffect and ofType.
Master unit testing in angular using jasmine and karma, testing components, services, and pipes, writing specs with describe and it, and running ng test for regression prevention.
Create your first unit test in Angular by scaffolding a new project, writing a spec for the app component, and using Jasmine expectations to verify a defined title.
Create a real-world unit test by building a user service in Angular, implementing getUsers that returns an observable of sample users, and testing that the service returns users.
Create and test an Angular user list component. Implement ngOnInit to fetch users from a service, render with ngFor, and include a refresh button with unit tests.
Isolate an Angular unit test for a user list component by spying on the user service's getUsers method with Jasmine and returning mock data via RxJS of, configured in beforeEach.
Learn angular signals, a reactive wrapper that notifies consumers and enhances change detection with a push approach, illustrated by a dark mode toggle and total price from price and quantity.
Use Angular signals and effects to run code when the signal value changes, update a label with the theme, and toggle dark mode through a constructor-based effect.
Master a real-world angular signals workflow by importing the common module, using signal and computed, and filtering a products array with ng4 and ng for.
Summing up, this course allows you to learn Angular in depth, from scratch, and in only 6 days. It's the best Angular course choice for every busy developer or individual in general.
Enroll in this course now and learn how to:
Create comprehensive front-end applications using Angular
Use Angular components, modules, and services to create maintainable applications
Use the most important features of the Angular framework to build real-world applications
Communicate with web servers for posting, getting, or deleting data from within your angular application
Use the latest features like Angular Signals and Effects
What's inside this course:
Setting up Development Environment for Angular projects
Typescript Overview
Angular CLI
Components
Modules
Services (Injection and provider scopes)
Validation
Data Binding
Adding Packages
Routing
Template Driven Form Binding (NgModel)
Pipes
Angular Material
Building web apps with user experience (ux) in mind
In addition, you will easily apply and understand more advanced concepts like:
NgRx for building reactive web applications
State management using actions, reducers, store, effects, and selectors
Reactive extensions like observables for asynchronous tasks
Unit Testing using Karma and Jasmine
HTTP RESTful API communication
Setting up Mock servers using Mockoon
Global Error Handling
Directives
Sending Data to Child Components (Input binding)
Sending Data to Parent Components (output binding)
Smart vs Presentational Components
Component and Directive Selectors
Angular Signals
Angular Effects
30 Day Full Money Back Guarantee
This course comes with a 30-day full money-back guarantee. Take the course, watch every lecture, and do the exercises, and if you feel like this course is not for you, ask for a full refund within 30 days. All your money back, no questions asked.
Enroll now, take the fast lane, and master Angular in only 6 days.