Book Image

Angular Projects

By : Zama Khan Mohammed
Book Image

Angular Projects

By: Zama Khan Mohammed

Overview of this book

<p>Angular is one of the best frameworks, not only for building web applications, but also for building applications on other platforms such as desktop and mobile. It is packed with amazing web tools that allow developers to become more productive and make the development experience a happier one </p><p>This book will be your practical guide when it comes to building optimized web apps using Angular. The book explores a number of popular features, including the experimental Ivy rendered, lazy loading, and differential loading, among others, in the projects. It starts with the basics of Angular and its tools, which will help you to develop and debug Angular applications. You will learn how to create an SPA using Angular Router, and optimize it by code splitting and Preloading Routes. We will then build a form-heavy application and make forms reactive by using Reactive Forms. After that, we will learn how to build a Progressive Web App, and a server-side rendering app, as well as a MonoRepo app. Furthermore, we will also dive into building mobile apps using Ionic and NativeScript. Finally, we end the book by creating a component library for our application using Angular CDK and then testing it. </p><p>By the end of this book, you’ll have gained comprehensive insights into using Angular, along with hands-on experience in creating intuitive real-world applications.</p>
Table of Contents (19 chapters)
Title Page
Copyright and Credits
Dedication
Foreword

What this book covers

Chapter 1, Setting Up the Development Environment, starts off the book by setting up the development environment, and covering the basics of TypeScript, the Angular CLI, and other tools required for this book and for the effective development of Angular applications.

Chapter 2, Building a Flashcard Game Using Angular, is aimed at novice Angular developers, going through basic concepts regarding Angular components, services, and some other fundamental concepts such as important decorators, template-driven forms, observables, and change detection.

Chapter 3, Building a Personal Blog Using Angular Router and WordPress, shows how you can create multi-environment systems, communicate with APIs, create multiple routes, and optimize an application using lazy loaded routes and different prefetching strategies.

Chapter 4, Building an Inventory Application Using Reactive Forms, covers building complex forms using reactive forms and introduces you to using third-party Angular component libraries. We will also learn how to optimize a bundle by first analyzing it and optimizing it if possible.

Chapter 5, Building a PWA E-Commerce Application Using Angular Service Worker, introduces Progressive Web Apps (PWA) and then goes through building an application, adding to PWA capabilities by adding Angular service workers, and other PWA capabilities.

Chapter 6, Building an Auditing Application Using Angular and Ionic, introduces Ionic Framework to build native applications. You will develop apps with Firebase and ngx-formly for real-time communication and creating dynamic JSON forms, respectively.

Chapter 7, Building a Server-Side Rendering Application Using Angular, takes the personal blog app we created and renders it on the server side to optimize the application for performance and search engine optimization.

Chapter 8, Building an Enterprise Portal Using Nx, NgRx, and Redux, introduces you to using Nx to create an enterprise portal as a monorepo application. We will convert an app developed using the Angular CLI, upgrade it to an Nx workspace, add a new admin portal, and use NgRx to handle the whole authentication flow using it. Lastly, we'll use ngx-charts to add D3 visualization.

Chapter 9, Building a Multi-Language NativeScript Application with Angular, goes over creating a native app using NativeScript Angular, introducing the different layouts available, and then using an Angular module and a NativeScript module. The ngx-translate Angular module will allow you to add multiple language support to the application.

Chapter 10, Building a Component Library Using Angular CDK and Elements, teaches how you can create a reusable component library with a component that is accessible by using the Angular CDK and then publish it to npm. You will also learn about Angular elements and how to use them in any JavaScript non-Angular application.

Chapter 11, Testing an Angular Application Using Jasmine, Jest, and Protractor, covers testing strategies a developer can use to test applications and teaches different testing strategies by writing tests for components, services, and pipes. We will also look at how we can mock HTTP calls for Jasmine tests using Jest, snapshot testing, and end-to-end testing, and learn about test coverage and error handling.