Go to Preview Lesson
Go to Preview Lesson
LESSON 4.8
Adding Eager Loading
LESSON 4.9
Shaping the Data
The newline Guide to Fullstack ASP.NET Core and React
MODULE 1
Introduction
LESSON 1.1
Introduction
LESSON 1.2
Technologies Used in this Course
LESSON 1.3
Setting up the Environment
LESSON 1.4
Setting up VS Code
MODULE 2
Preparing Our Server
LESSON 2.1
Module Introduction
LESSON 2.2
Creating WebAPI Project using DOTNET CLI
LESSON 2.3
Reviewing the Project Files
LESSON 2.4
Reviewing the API Controllers
LESSON 2.5
Exploring Postman
LESSON 2.6
Adding Course Model to our Project
LESSON 2.7
What is Entity Framework?
LESSON 2.8
Adding Entity Framework
LESSON 2.9
Adding our First Migration
LESSON 2.10
Creating a Database
LESSON 2.11
Seeding Data in our Database
LESSON 2.12
Adding our First Controller
LESSON 2.13
Module 1 Summary
MODULE 3
Setting up our client
LESSON 3.1
Setting up the React Project
LESSON 3.2
Reviewing our React Project
LESSON 3.3
React Concepts
LESSON 3.4
Why TypeScript?
LESSON 3.5
Fetching Data
LESSON 3.6
Installing SASS to our Project
LESSON 3.7
Installing React Router
LESSON 3.8
Adding Routes and Refactoring
LESSON 3.9
Installing Ant Design
LESSON 3.10
Adding Base Styles
LESSON 3.11
Creating Navbar
LESSON 3.12
Adding Side-drawer to our Navbar
LESSON 3.13
Setting up Axios
LESSON 3.14
Giving Types to Axios
LESSON 3.15
Making Course Component
MODULE 4
Using Repository pattern
LESSON 4.1
Introducing Repository Pattern
LESSON 4.2
Adding Repository and Interface
LESSON 4.3
Writing Repository Methods
LESSON 4.4
Adding More Properties to our Course Model
LESSON 4.5
Adding Configuration to our Migration
LESSON 4.6
Seeding New Data
LESSON 4.7
Adding Code to Get Data from Category Table
LESSON 4.8
Adding Eager Loading
LESSON 4.9
Shaping the Data
LESSON 4.10
Setting AutoMapper to our Project
MODULE 5
Generic Repository pattern
LESSON 5.1
Implementing Generic Repository
LESSON 5.2
Implementing Generic Repository Methods
LESSON 5.3
Introducing Specification Pattern
LESSON 5.4
Creating Specification Evaluator
LESSON 5.5
Implementing Specification Methods
LESSON 5.6
Using Specification Methods in Controllers
LESSON 5.7
Specification Pattern Walkthrough
MODULE 6
Error Handling
LESSON 6.1
Creating Errors Controller
LESSON 6.2
Handling Errors
LESSON 6.3
Creating a Not found Endpoint
LESSON 6.4
Creating Exception Middleware
LESSON 6.5
Working on Validation Error Response
MODULE 7
Sorting, Filtering, Pagination
LESSON 7.1
Adding Sorting Feature to the API
LESSON 7.2
Adding Filter Feature to the API
LESSON 7.3
Adding Pagination to the API
LESSON 7.4
Finishing pagination to the API
LESSON 7.5
Adding Search Functionality
LESSON 7.6
Fixing Some Warnings
MODULE 8
Creating Pages in the frontend
LESSON 8.1
Refactoring the Frontend
LESSON 8.2
Adding Categories Bar
LESSON 8.3
Adding Show Courses Component
LESSON 8.4
Creating Categories Page
LESSON 8.5
Creating Description Page
LESSON 8.6
Designing Description Page
MODULE 9
Adding Basket Feature
LESSON 9.1
Creating Basket Entity
LESSON 9.2
Making Migration to the Database
LESSON 9.3
Creating Basket Controller
LESSON 9.4
Creating Remove Item Method
LESSON 9.5
Setting up Axios for the Basket
LESSON 9.6
Creating Basket Page
LESSON 9.7
Designing Basket Page
LESSON 9.8
Using React Context
LESSON 9.9
Fetching the Basket on App Start
LESSON 9.10
Refactoring and Adding Basket Items Count
LESSON 9.11
Adding Basket Summary
LESSON 9.12
Adding "Add to Cart" Button in the Description Page
MODULE 10
State management with Redux
LESSON 10.1
Installing Redux
LESSON 10.2
Creating Action in Redux
LESSON 10.3
Introducing Redux Toolkit
LESSON 10.4
Creating Basket Slice
LESSON 10.5
Refactoring App to Use Redux Toolkit
LESSON 10.6
Using Asynchronous Calls in Redux
LESSON 10.7
Using Asynchrnous Calls in Redux Part 2
LESSON 10.8
Using Entity Adapters
LESSON 10.9
Redux Devtools
LESSON 10.10
Using Selectors in Entity Adapters
LESSON 10.11
Fetching Single Product
LESSON 10.12
Creating Category Slice
LESSON 10.13
Adding Search Filters
LESSON 10.14
Adding Course Params to Redux
LESSON 10.15
Adding Frontend Pagination
MODULE 11
Identity
LESSON 11.1
Setting up identity
LESSON 11.2
Configuring Identity and Migration
LESSON 11.3
Creating Users Controller
LESSON 11.4
Json Web Tokens
LESSON 11.5
Creating Token Service
LESSON 11.6
Using Token Service
LESSON 11.7
Validating the Token
LESSON 11.8
Setting up Frontend for Identity
LESSON 11.9
Building Login and Register Component
LESSON 11.10
Finalizing Login page
LESSON 11.11
Adding User Slice
LESSON 11.12
Creating Login Dropdown
LESSON 11.13
Persisting User Login
LESSON 11.14
Adding FetchBasketSlice
LESSON 11.15
Changing Basket Logic
LESSON 11.16
Changing Basket Logic Frontend
LESSON 11.17
Creating Private Route Component
MODULE 12
Payments
LESSON 12.1
Setting up Stripe
LESSON 12.2
Creating Stripe Payment Service
LESSON 12.3
Creating Payments Controller
LESSON 12.4
Adding Stripe to Frontend
LESSON 12.5
Building Checkout Component
LESSON 12.6
Getting Payment Intent from the Server
LESSON 12.7
Making Payment Function
LESSON 12.8
Making Clear Basket Endpoint
LESSON 12.9
Purchase Courses Endpoint
LESSON 12.10
Storing User Secrets
LESSON 12.11
Current User Endpoint
LESSON 12.12
Showing Loader
MODULE 13
Displaying Video Lectures
LESSON 13.1
Displaying User Courses
LESSON 13.2
Lectures Backend
LESSON 13.3
Lectures Controller
LESSON 13.4
Creating Lecture Slice
LESSON 13.5
Creating Lecture Page
LESSON 13.6
Centralizing Frontend Errors
MODULE 14
Creating Courses
LESSON 14.1
Adding Instructor Role
LESSON 14.2
Creating Add Role Endpoint
LESSON 14.3
Creating Instructor Page
LESSON 14.4
Create Course Page
LESSON 14.5
Create Sections Backend
LESSON 14.6
Create Sections Frontend
MODULE 15
Updating project to dotnet 6
LESSON 15.1
Updating Project to .net 6
LESSON 15.2
Adding New Dotnet 6 Features to Our Application
MODULE 16
Deploying to Heroku
LESSON 16.1
Creating Frontend Build
LESSON 16.2
Serving Client from Our Backend
LESSON 16.3
Switching to Production Database
LESSON 16.4
Final Touches
LESSON 16.5
Deplying to Heroku
MODULE 17
Bonus Module - Getting started with Typescript
LESSON 17.1
TypeScript Project Setup
LESSON 17.2
Using TypeScript
LESSON 17.3
Installing Lite Server
LESSON 17.4
Using Types
LESSON 17.5
Object, Array, Tuple, and Enum
LESSON 17.6
Union, Literals and Custom Types
LESSON 17.7
Typing Functions with TypeScript
LESSON 17.8
Unknown and Never Type
LESSON 17.9
Configuration in TypeScript
Go to Next Lesson
Go to Next Lesson
LESSON 4.1
Setting AutoMapper to our Project
Go Pro
Lesson
Editor