All Functional MERN Stack LMS / Learning Management system series with next 13, TypeScript | Part 1

preview_player
Показать описание
Welcome to the LMS / Learning Management System Full stack series on YouTube. In this series, I will show you how to build one industrial-level LMS platform with typescript, node js, express js, MongoDB, Redis, next 13,rtk query, socket io, and much more.

Follow Becodemy on social media for all updates:
Instagram:
Linkedin:
Twitter (X):

Source Code:

Timestamps:
00:00:00 - 00:26:40 Project Overview
00:26:40 - 00:37:34 Software Design / Project Plan
00:37:34 - 00:53:09 Technology brief //Which technology we will use and why we will use these technologies
00:53:09 - 00:57:13 Code Editor overview
00:57:13 - 01:04:21 Project server setup
01:04:21 - 01:26:03 Database, Cloudinary, Redis connection
01:26:03 - 01:43:22 Handle Errors
01:43:22 - 01:59:23 User model design
01:59:23 - 02:34:21 User registration
02:34:21 - 02:46:15 User Activation
02:46:15 - 03:12:02 User login, logout
03:12:02 - 03:23:34 User protected & Authorization middleware
03:23:34 - 03:49:16 Generate new Access token, user social authentication, get user info
03:49:16 - 04:19:55 Update user info, password, avatar
04:19:55 - 04:38:23 Course Model design
04:38:23 - 04:57:12 Create course, Edit course
04:57:12 - 05:14:48 Get single and all courses -- without purchasing
05:14:48 - 05:25:20 Get course content,get user accessible all courses --- only for valid-user
05:25:20 - 05:51:07 Create question, add reply in question
05:51:07 - 06:14:48 add review in course
06:14:48 - 06:22:08 Notification and Order model
06:22:08 - 06:47:38 Create Order
06:47:38 - 07:07:40 Get all notifications, update notification status
07:07:40 - 07:14:23 Delete read notifications -- with crone after a certain time
07:14:23 - 07:23:38 Get all users, courses, orders
07:23:38 - 07:28:45 Add and get members in Admin dashboard
07:28:45 - 07:38:16 Delete course, Delete user
07:38:16 - 08:00:16 Get the last 28 days' users,orders, notifications for the last 1year
08:00:16 - 08:07:23 Layout model Design
08:07:23 - 08:25:00 Create Faq,Hero banner,Categories
08:25:00 - 08:39:20 Edit Faq,Hero banner,Categories
08:39:20 - 08:55:00 Advance cache maintenance

#mern_stack #nodejs #tailwindcss #socketio #becodemy #LMS

For business inquiries:
Рекомендации по теме
Комментарии
Автор

One more advanced multi-vendor LMS platform tutorial is coming soon! 😃 Keep subscribing to get notified!

BecodemyOfficial
Автор

"I got lot of offers but i want to contribute to world and teach the world"
thanks you soo much
this 40 hr course in just like a fully fledged industry level course

meritalok
Автор

I'm From Africa, Ethiopia 🇪🇹. i never seen this kind of tutorial with this kind of perfect & amazing Teacher. God bless you Shahriar. you are an amazing person. Respect.

Kaleab_Fekadu
Автор

Breath of fresh air. This project is so on point, not all YouTube creator are this detailed. Thank you very much.

njorogekamau
Автор

The world is richer with individuals like you,
Thank you 💙💙

suresranathunga
Автор

Seriously, this project is insane level project. Excellent UI/UX! 🔥🔥🔥🔥🔥

bhupeshpattanaik
Автор

this is the so far best mern stack project in youtube history

tseringlama
Автор

Overall, the course is great, and I've learned a lot of new things from it.

However, I noticed some security issues that I'd like to point out, not out of criticism but as helpful information for newcomers. These issues occur at 2:35:00 and 3:20:00 in the course.

At the beginning, the user information (name, email, password) is set inside the JWT during the user registration process and is then retrieved during account activation.
Reason: Anyone with basic JavaScript knowledge can decode the JWT and view this information.

Consider a scenario where a user with the ID "user123" logs in and receives a new JWT (accessToken=abcd). If they log in again, they receive a new JWT (accessToken=dcba). This means that when the user wants to log out, they would need the latest JWT (accessToken=dcba), and the previous token (accessToken=abcd) should be invalidated.

However, this is not the case, which poses a significant security risk. If I use the old JWT (accessToken=abcd) instead of the latest one (accessToken=dcba), I can still successfully log out.

This issue becomes more critical if a hacker tracks multiple JWTs generated during different login attempts. If a user logs in five times, five different JWTs (accessTokens) will be created. The hacker could potentially use any of these tokens to log out.

Reason: Each JWT (accessToken) contains the user's ID (e.g., user123). In the authMiddleware, after verifying the JWT, the ID is extracted, and req.user is set using the ID retrieved from the Redis session. This provides access to all the information stored in the Redis session.

shaheryartatari
Автор

Bro this is the best video I found on YouTube. I am searching for this kind of video for the last 2 to 3 months . love from pak

abuzain
Автор

it will be very easy for me to use a popular framework like laravel as a backend.
after watching your server setups I'm happy for I know laravel very well.
and I don't need to hesitate and don't need to create every single thing manually.
everything is done for me in Laravel.

MehediHasan-yywc
Автор

The only channel that is providing premium content for free ❤❤

WebDeveloper-ur
Автор

your a very good mentor and profesional person that i have never seen. i going to registrate en becodemy and by the course soon. i from haiti but now living chile. i do love you sir

moriljeanfrancois
Автор

We are proud of you as a Bangladeshi, brother great work❤❤❤❤

Nobita
Автор

I have completed this course and created another demo project.
sir, you explain easily all the points. thanks for sharing

codingwithvasudev
Автор

Wow, this tutorial is an absolute game-changer! 🚀 The step-by-step guidance made the project feel like a breeze, and the results are truly impressive. Kudos to you for breaking it down so clearly and making the complex seem so approachable. This tutorial has taken my skills to the next level, and I can't wait to apply what I've learned. Thank you for sharing your expertise – you've just earned a subscriber for life! 👏🔥

RafhiMeer
Автор

we like this type of explanation about technology stack and project breakdown and overview

catroonworld
Автор

Youre absolutely the best person ive met in my life 💙 love you and i pray you grow way more than you expected 🙏🏽 you're a blessing to this generation.
Support from Nigeria 🇳🇬

codewithtoyin
Автор

I've come across a small task here, and it's quite fascinating. By examining the code for sending emails, I'm attempting to implement a "Forgot Password" feature. I'm hopeful that this will prove successful.

Thank you for providing this wonderful series of resources.

LuciWalker-cl
Автор

Amazing course bro, i'm from Argentina and I can understand you very well, this is a real project with a lot of love behind it.

paracomentar
Автор

Really sir ji, your skill is in baap level. I am amazed to see this level project on youtube.

yt_user