Fullstack TypeScript Development
Course Description
This course covers how to deliver full stack web applications using TypeScript as the development language. It will cover writing Node.js applications using TypeScript and also Nest.js, the enterprise framework for creating enterprise grade backend applications and apis.
The course will use Prisma for Object Relational Mapping and will cover both code-first and data-first strategies for interacting with relational and NOSQL (MongoDB) databases.
The front-end will be provided by Angular which uses TypeScript or React which can be written using TypeScript.
Finally the course will cover the use of NX to create a monorepo for both the frontend and backend projects
5 Days
Contact us for pricing
Prerequisites
Web Application Development Fundamentals - HTML, CSS, JavaScriptSome familiarity with with back end development using other technologies (Java, ASP.NET, etc)
An understanding of Node.js and the Node.js ecosystem
TypeScript
History of TypeScriptDeclaring types
Inferring types
Creating a constructor
Default values for parameters
Understanding nulls, undefined, unassigned variables
Null coalescing operator
Null forgiving operator
Using generics
Async and await
Backend Web Development
Understanding Node.js:Node Package Manager - npm
Package.json
Dependencies and developer dependencies
Writing Node.js Applications Using TypeScript
Create a simple node.js backend using TypescriptSetting up a TypeScript project
Adding express and @types/express
Creating a simple API endpoint using a file for persistence
Nest.js
Introduction to Nest.jsCreating a Nest.js project
Model View Controller pattern
Inversion of control and dependency injection
Externalising configuration
Logging
Nest.js Authorisation
Creating an auth endpointThe register method
Storing hashed passwords - the bcrypt library
JWT authentication
@nestjs/jwt
Nest.js middleware
Nest.js guards
Prisma
Object Relational MappingAdding prisma dependencies
Initialising an schema
Setting the connection string
Understanding the migration and pull operations
Generating the PrismaClient
Code First ORM using Prisma
Creating the schemaCreating a migration
Testing read and write operations
Data First ORM
Pull the schema from an existing databaseReviewing the schema
Create the PrismaClient
Test read and write operations
Make a change to the schema
Create a migration
Verify changes have been applied to database
Frontend
Understanding Component Frameworks:What are components?
Why use components?
Which component framework should I use?
Angular and React Comparison
Writing a Frontend Application:
Scaffold the application
Create some simple front end components
Making Ajax Calls
Authentication & Authorization
MonoRepo
Introducing MonoRepos:What is a MonoRepo?
Why use a MonoRepo?
Creating your own MonoRepo
Using Nx:
Introduction to NX
Why use a build tool like Nx
Creating a mono repo for our application
Sharing classes between frontend and backend
Building the application
Deploying your application
Full stack web developmentJavaScriptTypeScriptNest.jsAngularReactPrismaORMObject Relational MappingModern Web Development