Typescript: The Ultimate Bootcamp - Helicopter View
Setting Up the Development Environment - Node Git and IDE
Why Typescript? Understand the Key Benefits of the Language
Quiz - Understanding the benefits of the Typescript language
Compiling Your First Typescript Program
Quiz - Understand the basics of the Typescript compiler
The Typescript compiler noEmitOnError flag
Running a Typescript Program in a Browser
Understanding the differences between const let and var
Quiz - Understand the differences between const let and var
Typescript primitive types - numbers strings and booleans
Typescript Template Strings
Understanding Type Inference - The most powerful feature of Typescript
When to use Typescript Type Annotations and Why
Typescript Static Type System vs Javascript Dynamic Type System
Typescript Primitive Types - Objects
Typescript Nested Object Types
Understanding the Differences Between Null and Undefined
Typescript Optional Chaining - How To Avoid Null-Related Errors
Understanding The Typescript Null Coalescing Operator
Typescript Optional Chaining - Best Practices For When To Use It Or Not
Typescript Primitive Types - Arrays
Typescript Enums - Our First Custom Type
Understanding The Typescript Any Type - And Why You Should Avoid It
Avoid Implicit Any Types With The noImplicitAny Compiler Flag
Understanding Typescript Union Types - Nullable Variables
Typescript Non Null Assertion Operator
Typescript Strict Null Checks and the strictNullChecks Compiler Flag
Understanding Typescript Literal Types - When Are They Useful?
Understanding Typescript Type Aliases - Our First Custom Type
Typescript Interfaces - Defining Custom Object Types
Typescript Type Aliases vs Interfaces - When to Use Which And Why?
Understanding Typescript Type Assertions
Arrow Functions vs Normal Functions - Understanding The This Context
Typescript Default Function Parameters
The Typescript Object Spread Operator
Typescript Object Destructuring
Typescript Array Spread and Destructuring Operators
Typescript Rest Function Arguments
Debugging Typescript In The Browser - Step-By-Step Tutorial
Debugging Typescript In Node - Step-By-Step Tutorial
Typescript Shorthand Object Creation Notation
Typescript Tuples - How To Use Them?
Understanding The Typescript Unknown Type
Understanding Typescript Type Narrowing and Type Predicates
Understanding Typescript Never Type
Typescript Intersection Types
Introduction to tsconfig.json - The target Property
Using a Custom Name for the Compiler Configuration File
Controlling What Files To Compile - The files tsconfig.json property
Controlling What Files To Compile - include and exclude
The tsconfig.json outdir and rootDir properties
The tsconfig.json module property
Choosing What Libraries To Include Wth tsconfig.json lib and nolib properties
Typescript Compiler baseUrl Option
Understanding typeRoots types and the skipLibCheck Compiler Options
Including Plain Javascript in a Typescript project - allowJs and checkJs
Typescript Compiler - Miscellaneous Options
Introduction To Typescript Classes
Writing Our First Typescript Class - The Constructor
Typescript Classes - Member Variables
Typescript Read-Only Class Member Variables
Typescript Getters and Setters
Does Typescript Support Multiple Constructors?
Understanding The This Keyword When Used In a Class
Understanding Typescript Static Variables
Understanding Typescript Static Class Methods
Introduction To Object Oriented Inheritance
The Extends Keyword - Creating a Child Class
Understanding the Protected Keyword
Typescript Abstract Classes
Objected-Oriented Interfaces
The Singleton In Typescript - An Object-Oriented Design Pattern
New Section - Introduction To Typescript Generics
Commonly Used Generic Libraries
The Typescript Optional Interface
The Typescript Read Only Interface
Introduction To Generic Functions
Generic Functions With Multiple Generic Parameters
Typescript Generics - Type Constraints and the extends Keyword
Typescript Generics - Understanding the keyof Operator
Typescript Generic Classes
Introduction To Typescript Decorators - How Do They Work?
Introduction To Typescript Method Decorators
Understanding The MethodDecorator Function Signature
Typescript Method Decorators - Step-By-Step Implementation
Applying Multiple Typescript Decorators To The Same Method
Typescript Class Decorators
Typescript Property Decorators
New Section - Building a Secure Node REST API From Scratch In Typescript
Kickstarting Our Node Project With npm init
Setting Up An Express Server From Scratch
Writing Our First Express Endpoint
How To Add Hot-Reload To Our Typescript Development Environment
Parsing Command Line Arguments in a Node Program
Adding Support For Multiple Environments Using dotenv
Making The Server Port Number Configurable
Setting Up The Winston Logging Library
Setting a Cloud SQL Database With Heroku and Postgres
Setting Up a Database Connection With TypeORM
Setting Up Our First TypeORM Model
Modelling a One To Many Relationship in TypeORM
Generating a Database Schema Using TypeORM
Trying Out TypeORM - Populating The Database
Populating a Database With TypeORM - Repositories
Writing a Database Cleanup Script With TypeORM
Implementing a Data Retrieval Express Endpoint Using TypeORM
Eager Fetching a One To Many Relationship Using TypeORM
Error Handling In Asynchronous Express Endpoints
Overridding the Express Default Error Handling Behavior
Adding CORS Capabilities To An Express Server
Filtering Query Results In TypeORM - Part 1
Filtering Query Results In TypeORM - Part 2
Implementing The Find Course Lessons Endpoint
Performing a SQL Join With TypeORM
Setting Up an Express JSON Body Parser
Implementing an Express PATCH Update Endpoint
Controlling The Transaction Isolation Level With TypeORM
Implementing a POST Create Entity Endpoint
Implementing an Express DELETE Endpoint
New Section Introduction - Securing a Node REST API With Typescript
Setting Up The TypeORM Users Entity
Populating the USERS Table With User Credentials
Creating Password Digests Using the Node Crypto Module
Hashing a Password To Store It In The Database
Implementation of a Create User POST Endpoint
Implementing a Login Endpoint - Initial Skeleton
Login Endpoint - Validating The User Password
Understanding JWTs - JSON Web Tokens
Setting Up The jsonwebtoken Node Library
Creating And Signing An Authentication JWT
Designing an Express Authentication Middleware
Step-By-Step Implementation of an Authentication Middleware
Role Based Authorization Using an Express Middleware