MERN React Node Next.js Multi User SEO Blogging Platform
Master the Art of Building Real World SEO Web Applications using MERN (Mongo Express React Node) Stack. Become a true Web Developer with this Ultimate Project based course where you will learn to build real web app that is currently running live on the server :) Welcome to learn Full Stack / MERN Stack Web Development with React Node Mongo DB and NextJs. In this course you will learn to build backend API with Node, Express and Mongo DB. You will learn to build frontend web app with React and NextJs. You will learn to build SEO web app using NextJs which is a framework for building production level React apps.
More
By the end of this course you will have build a production ready SEO multi user blogging platform. This course is your ultimate workshop for building full stack MERN Web Apps with detailed focus on Node React NextJs and SEO.
Why we choose React Node NextJs for building SEO Blogging Project
We choose Node React and NextJs because they all use same programming language JavaScript. So even though it's a FullStack app with separate API and separate frontend, we will be dealing with only one language - JavaScript.
We choose Node js and Mongo DB for building API because its incredibly easy, flexible and easy to scale.
We choose React because its extremely powerful, performant and recently became so much fun and easy to use with the introduction of hooks.
We choose NextJs because it takes the development process of React apps to whole new level.
NextJs comes with SSR out of the box and SSR is necessary for SEO
NextJs starting with version 9 automatically decides if your web page can be served as a static page or dynamic page.
If your page is not making request to backend server to fetch data then NextJs automatically serves that page as static page.
Static pages load extremely fast because they are static. there is no need to wait for server response.
So you can build your site's homepage or landing page a static page with static content such as pre-written text and images to make it extremely fast.
I have used NextJs professionally to build a web app and it scores 100 out of 100 in google page speed test. which is hard to believe but true!
How NextJs makes serving your web pages so fast?
First of all NextJs analyzes if the pages can be served as static or dynamic during its build process. So if a page can be served as static it will be served as static making it faster than pages that require server response.
Second reason is that even though your landing page might have a lot of images, they are served as static content so first the page loads with actual content (text/html) without waiting for images as a result page is loaded in less than a second.
NextJs from version 9 prefetch the pages automatically behind the scene so when the home page is loaded other pages of your site is prefetched behind the scene as long as you are using next link component. So when user navigates to different pages... it is lightning fast.
With NextJs all your pages are SEO so either static or dynamic pages, they are all Search Engine Optimized.
Don't want to learn yet another framework?
Me too :) The best thing about NextJs is that it's pretty much React. you still create components the way you would usually do with React.
There are only few differences such as routing and a lifecycle method (getInitialProps) provided by NextJs which makes SSR possible.
You will learn all the good stuff about NextJs while building this awesome project.
So if you are looking to build extremely high performant app that will leave all your competitions behind and stand out in the crowd, this course will show you exactly how you can build such app.
This blogging app is built for production use and is flexible enough for you to use as a one person blogging platform or a blogging platform for your business or use as a foundation of a marketplace app because it has role based multi user blogging system in place.
So join me in this course and start coding this awesome app together < />
- Basic Understanding JavaScript or any other programming language
- Basic Understanding of React Js
- Basic Understanding of Node Js
- A Web Developer looking to Build API with Node JS and MongoDB
- A Web Developer looking to Build Fast, Interactive and Scalable Web Applications using React and NextJs
- A Web Developer looking to Build a FullStack SEO Multi User Blogging Application using MERN Stack
- A Web Developer looking to build SSR React Apps using Next Js
- A Web Developer looking to build production ready app with Role based Authentication and Authorization system
- A Web Developer looking to build practical real world project for real world use with React Node and NextJs
What you'll learn:
- User Signup / Signin
- Forgot Password / Reset Password
- Account Activation on User Signup
- Social Login with Google
- JWT based Authentication System
- Admin / User Dashboard
- Role Based Authorization System
- Advance CRUD with Image Upload
- Blogs Search
- Load More Blogs
- Categories
- Tags
- SEO - Search Engine Optimization
- Practical Real World Project running live on the server
- API Development with Node Express MongoDB
- Frontend Web Development with React Hooks and NextJs
- SSR with NextJs
- User Public Profile Page with List of Blogs and Contact Form
- Blog Author Private Contact Form
- User Private Dashboard
- Multiple User Authorization System
- Multi User System that can be Scaled to Build Marketplace App
- Standard Contact Form
- DISQUS Commenting System
- Related Blogs
- Google Analytics Integration
- Sendgrid for Sending Emails
- Deploying to Digital Ocean Cloud Servers
- Adding Domain
- Cloudflare CDN and Free SSL
- Writing Clean Code
- Scalable Project Structure
Watch Online MERN React Node Next.js Multi User SEO Blogging Platform
# | Title | Duration |
---|---|---|
1 | Introduction | 02:21 |
2 | Are you ready for this course? | 01:49 |
3 | Server setup | 15:48 |
4 | Postman and CORS | 03:41 |
5 | Database setup with mongo atlas | 09:07 |
6 | Database setup locally | 02:00 |
7 | Separating routes | 04:43 |
8 | Controllers | 03:41 |
9 | User model and schema | 09:14 |
10 | Signup route and controller setup | 04:28 |
11 | Installing npm packages for auth and blog | 04:09 |
12 | Signup validator | 07:40 |
13 | User schema virtual fields and methods | 08:43 |
14 | User signup | 09:43 |
15 | Trouble with mongo atlas | 02:50 |
16 | Trying user signup | 11:30 |
17 | Signout and protected routes | 06:23 |
18 | Starting with nextjs | 04:15 |
19 | Page layout | 03:17 |
20 | Custom document page | 04:58 |
21 | Reactstrap navbar | 06:45 |
22 | env variables with nextjs | 06:04 |
23 | Navigation using link component | 07:33 |
24 | Signup form | 12:53 |
25 | Signup action and alerts | 15:15 |
26 | Signin | 06:02 |
27 | Saving user and token in cookie and localstorage | 14:14 |
28 | Signout and conditionally showing nav links | 10:14 |
29 | Homework - Redirect authenticated user from signin and signup page | 00:44 |
30 | Homework solution | 02:42 |
31 | Auth and admin middlewares - Backend | 16:05 |
32 | Admin and user dashboard | 04:52 |
33 | Protecting routes for auth and admin user | 05:59 |
34 | Homework - Show dashboard link in nav based on user role | 00:47 |
35 | Dashboard link | 03:13 |
36 | Category schema routes and controllers | 12:54 |
37 | Error handler to avoid duplicates | 02:40 |
38 | Category list read delete | 09:50 |
39 | Homework tags | 02:13 |
40 | Homework solution - Tags create list read and delete | 05:29 |
41 | Using nprogress | 05:28 |
42 | CSS using static file and next-css | 06:57 |
43 | Category page | 07:24 |
44 | Create category | 15:45 |
45 | Category read delete and messages | 15:42 |
46 | Homework - Tags | 03:27 |
47 | Homework solution - Tags | 07:28 |
48 | Blog schema | 07:54 |
49 | Create blog with photo | 18:08 |
50 | Create blog with categories and tags | 18:40 |
51 | Generate blog excerpt | 05:50 |
52 | Blog create page setup | 04:35 |
53 | Blog create action and imports | 12:35 |
54 | Blog create form | 09:36 |
55 | Quill modules, event handlers and localstorage | 16:53 |
56 | Show categories and tags in checkbox | 11:04 |
57 | Toggle categories check uncheck | 08:54 |
58 | Publish blog | 12:42 |
59 | Blog published message | 09:52 |
60 | List all blogs | 10:59 |
61 | List all blogs categories and tags | 08:40 |
62 | Read and delete blogs | 09:48 |
63 | Blog update | 16:08 |
64 | Show blog photo | 04:28 |
65 | Blogs page | 11:10 |
66 | SSR blogs page with getInitialProps | 18:22 |
67 | Show blog categories and tags | 09:42 |
68 | Show blog image | 03:36 |
69 | Show all categories and tags | 04:14 |
70 | SEO head section for blogs | 21:47 |
71 | Load more blogs | 15:50 |
72 | Show Single Blog | 10:59 |
73 | Single blog with fullwidth image and content | 08:15 |
74 | Single blog head section for SEO | 08:33 |
75 | Related blogs backend | 05:46 |
76 | Related blogs frontend | 16:43 |
77 | List of blogs for admin | 08:36 |
78 | Delete blog | 11:30 |
79 | Update blog page setup | 11:01 |
80 | Update blog - Populate content in rich text editor | 13:24 |
81 | Update blog - Show checked categories and tags | 18:31 |
82 | Blog update complete | 15:59 |
83 | Categories and tags page for SEO | 03:54 |
84 | Show categories with associated blogs | 12:05 |
85 | Homework - Tags page and SEO | 01:46 |
86 | Solution - Tags with all blogs and SEO | 08:47 |
87 | What is next | 04:33 |
88 | Blogs search backend | 06:04 |
89 | Blogs search frontend | 23:01 |
90 | User public profile backend | 09:46 |
91 | Public profile page setup | 05:10 |
92 | User public profile page | 15:39 |
93 | Click blog author name to view profile | 05:14 |
94 | User profile update and photo backend | 09:54 |
95 | Profile update actions and page setup | 07:59 |
96 | Profile update component setup | 07:37 |
97 | Update user profile | 16:33 |
98 | Profile update errors validation messages and user photo | 08:49 |
99 | Update user in local storage | 07:19 |
100 | Blog create for auth user | 08:23 |
101 | Auth user can create blog | 05:26 |
102 | Auth user can update delete blog backend | 12:41 |
103 | Auth user can update delete blog frontend | 13:06 |
104 | Handling token expiry | 15:47 |
105 | DISQUS commenting system | 09:58 |
106 | Sending Emails with Sendgrid part 1 | 08:41 |
107 | Sending Emails with Sendgrid part 2 | 10:49 |
108 | Contact blog author - Backend | 04:02 |
109 | Contact page | 08:05 |
110 | Contact page - sending emails | 14:23 |
111 | Contact author by email | 03:56 |
112 | Forgot and reset password workflow | 03:58 |
113 | Forgot password backend | 16:37 |
114 | Reset password backend | 11:14 |
115 | Forgot password frontend | 15:48 |
116 | Reset password frontend | 13:27 |
117 | Account activation email pre-signup | 13:59 |
118 | Signup user after successful account activation | 21:12 |
119 | Login with google backend | 21:08 |
120 | Login with google frontend | 17:23 |
121 | Using Google Analytics | 10:54 |
122 | Static Home page | 01:42 |
123 | Getting started with Digital Ocean | 16:39 |
124 | Running backend and frontend in digital ocean part 1 | 04:05 |
125 | Running backend and frontend in digital ocean part 2 | 20:22 |
126 | Live server test - signup and contact form | 01:48 |
127 | How to write SEO blogs - TIPS | 05:11 |
128 | Admin user in live server | 05:21 |
129 | Creating blog and updating profile in live site | 02:00 |
130 | Pushing changes from local project to Github and live server | 04:56 |
131 | Adding domain name | 03:08 |
132 | Using Cloudflare CDN and free SSL | 02:54 |
133 | Updating config endpoints to use actual domain | 04:12 |
134 | MERN Stack - React Node from Scratch with Social Network Project | 01:49 |
135 | MERN Stack - React Node Ecommerce App from Scratch to Cloud Servers | 00:55 |
136 | MERN Stack - React Node Web Development with Ultimate Authentication Project | 05:21 |