Angular 6 for enterprise-ready web applications deliver production-ready and cloud-scale Angular web apps

A hands-on guide with a minimalist and flexible approach that enables quick learning and rapid delivery of cloud-ready enterprise applications with Angular 6 About This Book Explore tools and techniques to push your web app to the next level Master Angular app design and architectural considerations...

Descripción completa

Detalles Bibliográficos
Otros Autores: Uluca, Doguhan, author (author)
Formato: Libro electrónico
Idioma:Inglés
Publicado: Birmingham : Packt 2018.
Edición:1st edition
Materias:
Ver en Biblioteca Universitat Ramon Llull:https://discovery.url.edu/permalink/34CSUC_URL/1im36ta/alma991009631729106719
Tabla de Contenidos:
  • Cover
  • Title Page
  • Copyright and Credits
  • Packt Upsell
  • Contributors
  • Table of Contents
  • Preface
  • Chapter 1: Setting Up Your Development Environment
  • CLI package managers
  • Install Chocolatey for Windows
  • Installing Homebrew for macOS
  • Git and GitHub Desktop
  • Why use GitHub?
  • Why use GitHub Desktop?
  • Installing Git and GitHub Desktop
  • Node.js
  • Existing Node.js Installation
  • Installing Node.js
  • Visual Studio Code
  • Installing Visual Studio Code
  • Automation for Windows and macOS
  • Summary
  • Further reading
  • Chapter 2: Create a Local Weather Web Application
  • Introduction to Angular
  • Angular's philosophy
  • What's new in Angular 6?
  • Angular in Full-Stack Architecture
  • Wireframe design
  • High level architecture
  • Folder structure
  • Set up your development directory
  • Generate your Angular application
  • Installing Angular CLI
  • Initializing Angular app
  • Publishing Git Repository using GitHub Desktop
  • Inspecting and updating package.json
  • Commiting code using VS Code
  • Running your Angular app
  • Optimizing VS Code for Angular
  • IDE settings
  • IDE extensions
  • Coding style
  • Planning a feature road map using Waffle
  • Setting up a Waffle project
  • Creating issues for your Local Weather app
  • Crafting UI elements using components and interfaces
  • Adding an Angular component
  • Define your model using interfaces
  • Using Angular Services and HttpClient to retrieve data
  • Creating a new Angular Service
  • Inject dependencies
  • Discover OpenWeatherMap APIs
  • Storing environment variables
  • Implementing an HTTP GET operation
  • Retrieving service data from a component
  • Transform data using RxJS
  • Understanding Reactive programming
  • Implementing Reactive transformations
  • Summary
  • Chapter 3: Prepare Angular App for Production Release
  • Angular unit tests
  • Unit test execution.
  • Declarations
  • Providers
  • Imports
  • Test doubles
  • Jasmine specs
  • Angular e2e tests
  • e2e test execution
  • e2e spec
  • Troubleshooting common Angular errors
  • Debugging with Chrome Developer Tools
  • Optimizing Chrome Dev Tools
  • Troubleshooting network issues
  • Investigating console errors
  • Karma, Jasmine, and Unit Testing errors
  • NetworkError
  • Generic ErrorEvents
  • Debugging with Visual Studio Code
  • Null guarding in Angular
  • Property initialization
  • Safe navigation operator
  • Null guarding with *ngIf
  • Containerizing the app using Docker
  • Installing Docker
  • Setting up Docker scripts
  • Docker extension in VS Code
  • NPM Scripts in VS Code
  • Deploying containerized app
  • Zeit Now
  • Configuring the Now CLI tool
  • Deploying
  • Summary
  • Chapter 4: Staying Up to Date with Angular Updates
  • A brief history of web frameworks
  • Updating Node
  • n - Node version manager for macOS
  • Updating npm and Global npm packages
  • Global Npm packages
  • Npm fails to install a global tool on Windows
  • Updating Angular
  • Angular update guide
  • Take stock of your current version
  • Using Angular Update Guide
  • Updating your Angular app
  • Pre-upgrade checklist
  • Before updating
  • During the Update
  • Incompatible peer dependencies
  • Continuing the update
  • After the update
  • Post Update Checklist
  • Manual update
  • Testing performance
  • Addressing security vulnerabilities
  • Updating your web server
  • Updating Docker image
  • Summary
  • Chapter 5: Enhance Angular App with Angular Material
  • Angular Material
  • Angular Material setup and performance
  • Installing Angular Material
  • Automatically
  • Manually
  • Understanding Material's components
  • Manually configuring Angular Material
  • Importing modules
  • Importing theme
  • Adding Material Icon font
  • Angular Flex Layout
  • Responsive layouts.
  • Installing Angular Flex Layout
  • Layout basics
  • Flex Layout APIs for DOM containers
  • Flex Layout APIs for DOM elements
  • Flex Layout APIs for any element
  • Adding Material Components to your app
  • Angular Material schematics
  • Modifying landing page with Material Toolbar
  • Representing weather in Material Card
  • Accessibility
  • Card header and content
  • Material typography
  • Applying typography
  • Updating the tagline as center-aligned caption
  • Updating Current Weather card layout
  • Implementing Layout Scaffolding
  • Aligning elements
  • Styling elements
  • Fine-tuning styles
  • Tweaking to match design
  • Updating unit tests
  • Custom themes
  • Advanced themes
  • Updating Angular Material
  • Take stock of your current versions
  • Check on the latest available versions
  • Updating Angular Material
  • Summary
  • Chapter 6: Reactive Forms and Component Interaction
  • Interactive prototype
  • MockFlow WireFramePro
  • Building the mock-up
  • Home screen
  • Search results
  • Settings pane
  • Adding interactivity
  • Exporting the functional prototype
  • Searching with user input
  • Adding Angular Reactive Forms
  • Adding and verifying components
  • Adding search to weather service
  • Implementing search
  • Limiting user inputs with throttle/debounce
  • Implementing input validation and error messaging
  • Template driven forms with two-way binding
  • Enabling component interaction
  • Global events
  • Child-parent relationships with event emitters
  • Parent-child relationships with input binding
  • Sibling interactions with subjects
  • Summary
  • Chapter 7: Create a Router-First Line-of-Business App
  • Angular cheat sheet
  • Binding
  • Built-in directives
  • Common pipes
  • Starter commands, major components, and CLI scaffolds
  • Configure Angular CLI autocomplete
  • Router-first architecture
  • Creating LemonMart.
  • Creating a Router-first app
  • Configuring Angular.json and Package.json
  • Configuring Material and Styles
  • Designing LemonMart
  • Identifying user roles
  • Identifying high-level modules with site map
  • Generating router-enabled modules
  • Designing the home route
  • Setting up default routes
  • RouterLink
  • Router outlet
  • Branding, Custom, and Material Icons
  • Branding
  • Color palette
  • Implementing browser manifest and icons
  • Custom icons
  • Material icons
  • Angular Augury
  • Component Tree
  • Break point debugging
  • Router Tree
  • NgModules
  • Submodules with lazy loading
  • Configuring submodules with components and routes
  • Eager loading
  • Lazy loading
  • Completing the walking skeleton
  • Manager module
  • User module
  • POS and inventory modules
  • POS module
  • Inventory module
  • Inspect router tree
  • Common Testing Module
  • Summary
  • Chapter 8: Continuous Integration and API Design
  • Continuous Integration
  • Containerizing build environment
  • Builder
  • Debugging build environment
  • Tester
  • Configuring a headless browser for Angular
  • Configuring testing environment
  • Web server
  • CircleCI
  • Code coverage report
  • API design
  • Designing around major data components
  • Defining entities
  • Swagger
  • Defining a Swagger YAML file
  • Creating a Swagger server
  • OpenAPI 3.0 with unofficial tooling
  • Swagger 2.0 with official tooling
  • Enable Cross-Origin Resource Sharing (CORS)
  • Verifying and publishing Swagger server
  • Summary
  • Chapter 9: Design Authentication and Authorization
  • Wrapping up mock-ups
  • Design authentication and authorization workflow
  • Add auth service
  • Implement a basic authentication service
  • Implementing the login component
  • Conditional navigation
  • Common validations
  • UI service
  • Caching with cookie and localStorage
  • JSON Web Token life cycle
  • HTTP interceptor.
  • Side navigation
  • Log out
  • Role-based routing after login
  • Router Guards
  • Auth Guard
  • Auth Service Fake and Common Testing Providers
  • Summary
  • Chapter 10: Angular App Design and Recipes
  • User class and object-oriented programming
  • Reusing components
  • User service with caching, GET and POST
  • User profile with multi-step auth-enabled responsive forms
  • Form groups
  • Stepper and responsive layout
  • Calculated properties and DatePicker
  • Type ahead support
  • Dynamic form arrays
  • ViewUser component
  • Review component and Save form
  • Resolve guard
  • Reusable component with binding and route data
  • Master/detail view auxiliary routes
  • Data table with pagination
  • Updating Unit Tests
  • Summary
  • Chapter 11: Highly-Available Cloud Infrastructure on AWS
  • Creating a secure AWS account
  • Securing secrets
  • Right-sizing infrastructure
  • Optimizing instance
  • Simple load testing
  • Deploy to AWS ECS Fargate
  • Configuring ECS Fargate
  • Creating a Fargate Cluster
  • Creating container repository
  • Creating task definition
  • Creating elastic load balancer
  • Creating cluster service
  • Configuring the DNS
  • Getting the DNS Name
  • Prep Angular app
  • Adding npm Scripts for AWS
  • Publish
  • AWS Billing
  • Summary
  • Chapter 12: Google Analytics and Advanced Cloud Ops
  • Collecting Analytics
  • Adding Google Tag Manager to Angular App
  • Set up Google Tag Manager
  • Setting up Google Analytics
  • Configuring Google Analytics Tag in Tag Manager
  • Budgeting and scaling
  • Calculating per user cost
  • Advanced load testing
  • Reliable Cloud Scaling
  • Cost per user in a scalable environment
  • Calculating target server utilization
  • Pre-scheduled provisioning
  • Blue-Green deployments
  • Revising estimates with metrics
  • Measuring actual use
  • Creating a custom event
  • Adding custom events in Angular.
  • Advanced Analytics events.