Fullstack ASP.NET Core and React Masterclass | Learnify
20h 40m 31s
English
Paid
Course description
Learnify is a self-paced, online Masterclass, where you will master ASP.NET CORE and React by building a practical, real-world application from scratch.
Read more about the course
Everything you need to build a real SaaS application
Learnify goes beyond other courses by covering every detail required to build a real, production-ready, application with ASP.NET Core and React.
By the end of this course, you will be able to:
- Know how and why to use the Repository and Specification pattern.
- Understand design patterns in .NET Core.
- Use ASP.NET Identity for login and registration.
- Utilize React Router for routing.
- Centralize state in React using Redux toolkit.
- Integrate Automapper to shape data in ASP.NET Core.
- Use Axios to make API calls in React.
- Build a custom, visually appealing UI (without an external library).
- Set up Sass in React.
- Add Course Rating, Page, Sort, Search and Filter features.
- Use Redis as in-memory database to store cart items.
- Accept payments via Stripe using the new EU standards for 3D secure.
- Deploy ASP.Net projects to Heroku.
Watch Online
0:00
/ #1: Introduction
All Course Lessons (150)
| # | Lesson Title | Duration | Access |
|---|---|---|---|
| 1 | Introduction Demo | 05:37 | |
| 2 | Technologies Used in this Course | 03:36 | |
| 3 | Setting up the Environment | 04:13 | |
| 4 | Setting up VS Code | 03:25 | |
| 5 | Creating WebAPI Project using DOTNET CLI | 08:04 | |
| 6 | Reviewing the Project Files | 10:00 | |
| 7 | Reviewing the API Controllers | 04:52 | |
| 8 | Exploring Postman | 01:10 | |
| 9 | Adding Course Model to our Project | 03:47 | |
| 10 | What is Entity Framework? | 04:02 | |
| 11 | Adding Entity Framework | 08:15 | |
| 12 | Adding our First Migration | 05:59 | |
| 13 | Creating a Database | 07:08 | |
| 14 | Seeding Data in our Database | 08:01 | |
| 15 | Adding our First Controller | 07:43 | |
| 16 | Module 1 Summary | 02:09 | |
| 17 | Setting up the React Project | 04:50 | |
| 18 | Reviewing our React Project | 09:19 | |
| 19 | React Concepts | 05:24 | |
| 20 | Why TypeScript? | 06:29 | |
| 21 | Fetching Data | 12:22 | |
| 22 | Installing SASS to our Project | 06:50 | |
| 23 | Installing React Router | 03:24 | |
| 24 | Adding Routes and Refactoring | 05:12 | |
| 25 | Installing Ant Design | 03:56 | |
| 26 | Adding Base Styles | 04:24 | |
| 27 | Creating Navbar | 13:11 | |
| 28 | Adding Side-drawer to our Navbar | 06:46 | |
| 29 | Setting up Axios | 06:05 | |
| 30 | Giving Types to Axios | 04:19 | |
| 31 | Making Course Component | 15:03 | |
| 32 | Introducing Repository Pattern | 02:56 | |
| 33 | Adding Repository and Interface | 06:39 | |
| 34 | Writing Repository Methods | 05:34 | |
| 35 | Adding More Properties to our Course Model | 10:54 | |
| 36 | Adding Configuration to our Migration | 09:58 | |
| 37 | Seeding New Data | 09:56 | |
| 38 | Adding Code to Get Data from Category Table | 08:43 | |
| 39 | Adding Eager Loading | 05:13 | |
| 40 | Shaping the Data | 03:24 | |
| 41 | Setting AutoMapper to our Project | 14:46 | |
| 42 | Implementing Generic Repository | 05:14 | |
| 43 | Implementing Generic Repository Methods | 06:29 | |
| 44 | Introducing Specification Pattern | 06:09 | |
| 45 | Creating Specification Evaluator | 06:24 | |
| 46 | Implementing Specification Methods | 05:32 | |
| 47 | Using Specification Methods in Controllers | 10:27 | |
| 48 | Specification Pattern Walkthrough | 03:56 | |
| 49 | Creating Errors Controller | 07:33 | |
| 50 | Handling Errors | 06:01 | |
| 51 | Creating a Not found Endpoint | 03:41 | |
| 52 | Creating Exception Middleware | 11:20 | |
| 53 | Working on Validation Error Response | 06:55 | |
| 54 | Adding Sorting Feature to the API | 08:33 | |
| 55 | Adding Filter Feature to the API | 03:09 | |
| 56 | Adding Pagination to the API | 12:05 | |
| 57 | Finishing pagination to the API | 08:42 | |
| 58 | Adding Search Functionality | 03:43 | |
| 59 | Fixing Some Warnings | 04:51 | |
| 60 | Refactoring the Frontend | 05:59 | |
| 61 | Adding Categories Bar | 08:42 | |
| 62 | Adding Show Courses Component | 06:07 | |
| 63 | Creating Categories Page | 11:25 | |
| 64 | Creating Description Page | 06:01 | |
| 65 | Designing Description Page | 24:15 | |
| 66 | Creating Basket Entity | 07:28 | |
| 67 | Making Migration to the Database | 02:42 | |
| 68 | Creating Basket Controller | 13:53 | |
| 69 | Creating Remove Item Method | 11:00 | |
| 70 | Setting up Axios for the Basket | 10:59 | |
| 71 | Creating Basket Page | 05:53 | |
| 72 | Designing Basket Page | 12:45 | |
| 73 | Using React Context | 12:17 | |
| 74 | Fetching the Basket on App Start | 03:34 | |
| 75 | Refactoring and Adding Basket Items Count | 10:46 | |
| 76 | Adding Basket Summary | 07:34 | |
| 77 | Adding "Add to Cart" Button in the Description Page | 05:19 | |
| 78 | Installing Redux | 07:26 | |
| 79 | Creating Action in Redux | 07:27 | |
| 80 | Introducing Redux Toolkit | 11:32 | |
| 81 | Creating Basket Slice | 04:53 | |
| 82 | Refactoring App to Use Redux Toolkit | 06:58 | |
| 83 | Using Asynchronous Calls in Redux | 06:42 | |
| 84 | Using Asynchrnous Calls in Redux Part 2 | 07:10 | |
| 85 | Using Entity Adapters | 08:39 | |
| 86 | Redux Devtools | 03:17 | |
| 87 | Using Selectors in Entity Adapters | 04:53 | |
| 88 | Fetching Single Product | 05:38 | |
| 89 | Creating Category Slice | 09:01 | |
| 90 | Adding Search Filters | 08:15 | |
| 91 | Adding Course Params to Redux | 16:53 | |
| 92 | Adding Frontend Pagination | 10:57 | |
| 93 | Setting up identity | 06:14 | |
| 94 | Configuring Identity and Migration | 09:58 | |
| 95 | Creating Users Controller | 08:55 | |
| 96 | Json Web Tokens | 03:30 | |
| 97 | Creating Token Service | 10:51 | |
| 98 | Using Token Service | 06:51 | |
| 99 | Validating the Token | 07:09 | |
| 100 | Setting up Frontend for Identity | 02:53 | |
| 101 | Building Login and Register Component | 20:46 | |
| 102 | Finalizing Login page | 07:59 | |
| 103 | Adding User Slice | 17:21 | |
| 104 | Creating Login Dropdown | 11:30 | |
| 105 | Persisting User Login | 03:21 | |
| 106 | Adding FetchBasketSlice | 05:34 | |
| 107 | Changing Basket Logic | 10:51 | |
| 108 | Changing Basket Logic Frontend | 04:59 | |
| 109 | Creating Private Route Component | 05:34 | |
| 110 | Setting up Stripe | 06:26 | |
| 111 | Creating Stripe Payment Service | 08:32 | |
| 112 | Creating Payments Controller | 11:11 | |
| 113 | Adding Stripe to Frontend | 03:58 | |
| 114 | Building Checkout Component | 12:54 | |
| 115 | Getting Payment Intent from the Server | 07:21 | |
| 116 | Making Payment Function | 08:09 | |
| 117 | Making Clear Basket Endpoint | 04:09 | |
| 118 | Purchase Courses Endpoint | 16:29 | |
| 119 | Storing User Secrets | 03:52 | |
| 120 | Current User Endpoint | 14:27 | |
| 121 | Showing Loader | 05:49 | |
| 122 | Displaying User Courses | 08:24 | |
| 123 | Lectures Backend | 07:06 | |
| 124 | Lectures Controller | 16:47 | |
| 125 | Creating Lecture Slice | 14:00 | |
| 126 | Creating Lecture Page | 21:54 | |
| 127 | Centralizing Frontend Errors | 08:22 | |
| 128 | Adding Instructor Role | 07:46 | |
| 129 | Creating Add Role Endpoint | 07:51 | |
| 130 | Creating Instructor Page | 20:04 | |
| 131 | Create Course Page | 30:11 | |
| 132 | Create Sections Backend | 09:18 | |
| 133 | Create Sections Frontend | 35:59 | |
| 134 | Updating Project to .net 6 | 04:31 | |
| 135 | Adding New Dotnet 6 Features to Our Application | 09:50 | |
| 136 | Module Introduction | 01:10 | |
| 137 | Creating Frontend Build | 04:47 | |
| 138 | Serving Client from Our Backend | 04:47 | |
| 139 | Switching to Production Database | 09:49 | |
| 140 | Final Touches | 07:53 | |
| 141 | Deplying to Heroku | 13:41 | |
| 142 | TypeScript Project Setup | 05:25 | |
| 143 | Using TypeScript | 05:17 | |
| 144 | Installing Lite Server | 02:32 | |
| 145 | Using Types | 05:51 | |
| 146 | Object, Array, Tuple, and Enum | 13:54 | |
| 147 | Union, Literals and Custom Types | 06:45 | |
| 148 | Typing Functions with TypeScript | 08:03 | |
| 149 | Unknown and Never Type | 05:05 | |
| 150 | Configuration in TypeScript | 15:14 |
Unlock unlimited learning
Get instant access to all 149 lessons in this course, plus thousands of other premium courses. One subscription, unlimited knowledge.
Learn more about subscriptionComments
0 commentsWant to join the conversation?
Sign in to commentSimilar courses
Chrome Extension Mastery: Build Full-Stack Extensions with React & Node.js
Sources: Ryan Fitzgerald
Master the creation of full-fledged Chrome extensions from scratch to production! Learn how to develop powerful, functional Chrome extensions using a modern...
10 hours 3 minutes 45 seconds
The Official React Query Course - query.gg
Sources: ui.dev (ex. Tyler McGinnis)
React Query has been one of the fastest growing and most popular third party libraries in the React ecosystem, and this course will teach you everything you...
4 hours 17 minutes 17 seconds
MobX In Depth With React(Hooks+TypeScript)
Sources: udemy
This is the most extensive course about MobX you will find online, After a few years of using MobX, I'm really passionate about it and really love it, I decided
2 hours 25 minutes 54 seconds
Learn React 19 with Epic React v2
Sources: Kent C. Dodds
Ready for the React 19 revolution? The most in-demand JavaScript framework has received a major update! You are already familiar with React, but in React 19 the
26 hours 51 minutes 3 seconds
React Three Fiber: The Ultimate Guide to 3D Web Developmen
Sources: Wawa Sensei
3D development is a vast field with many different techniques. This comprehensive guide will provide you with the necessary tools to get started and the...
9 hours 18 minutes 15 seconds