Small clarification at the end: You do need to "run a server" when using revalidation (aka ISR) as this does SSR (and you obviously have a server API route to call for forced revalidation). However it is still very cool as the SSG content is still there if the server or DB crashed. Could have spent a few minutes on mixing the methods, eg: * in SSG what happens if you added a new pokemon id, would the route do SSR on the first hit. * on the list page you could use SSG for a limited list of pokemons like the first 20 instead of generating it for the whole 800+, then use CSR to fetch on scroll for example
Jack, you’re my favorite instructor right now. Every single video is very interesting and so well explained. Also, you bring examples with pokemon, which makes it even better hahaha.
Just started to work on SEO migrating my React App to a Next App, that's the best explanation I've seen through my researches as I started from zero on SSG and SSR. Thanks a lot !
I love it when it goes wrong! As i'm learning I like to take the content I watch and apply it to something I'm working on (I'm not a web dev by trade). What was wrong: One of the entries in my json had an incorrectly ordered key/value pair! This caused some lovely misleading errors that took me a while to pin down. Funny thing is on the surface it looked like it was running in dev but come build time it would error out. Turns out in dev it was only partially working with the second part of the list having slugs and posts that didn't match. Basically everything after the "typo" was broken but only in as much as the slug and post didn't match! Actually, it was a random console.log that caught my eye in as much as it had an empty array at the end of the returned json response. So again, everything looked ok until the last entry in the return. All good fun. Thanks Jack, content like this keeps me inspired and motivated to push through the issues I experience as a learner.
I just wanted to take the time to show appreciation and say thank you for everything you do for us with your videos, sharing your knowledge and helping people like me to grow in the process. You're greatly appreciated.
This is a must watch video for anyone to understand about CSR, SSR and SSG's. No lags and very crisp with a nice and easy example. You have got a happy subscriber
I'm senior web developer but new to NextJS, and this video explains those concepts in the best way I can find. Also, all your content is just on the point! Thank you Jack 💙
Started following you since your tRPC video. Like your style that explains so much in only a couple of minutes. Might be worth mentioning that the first revalidation technique (time-based) shown here is what next.js calls ISR, Incremental Static Regeneration. Congrats on all your amazing content!
I had been struggling to understand the differences between these 3 terms then I came across your channel and this video. I just want to appreciate you. Thanks a lot for this awesome explanation, everything is super clean now. ✌🙏
Thank you very much for the straightforward and clear explanations. You've fitted in 30 minutes everything that's really needed. Wish you and your channel all the best!
What!!! Wow what a fantastic overview and especially demonstration of NextJS. Easy subscribe for me!! Couple questions: 1. What do you mean by "I would use SSR for search if things are dynamic", woudln't you use CSR (client side rendering) for this since there are many unknowns? 2. If you have an app that's mostly static with videos / audio, with a few dynamic elements like user accounts, user preferences, etc. this feels like a strong case for SSG, but I would love to hear your perspective. Something like a personal website that has tutorials of some sort where you upload videos / courses maybe once a month (I honestly don't have one, but it's a simple example)
I already knew the rendering method but, after watching this I wished it was there before. Video was refreshing and it is the best short introduction with perfect example.
You could create videos 3 hours long and i would watch every second. I was waiting for a good video explanation for SSG on demand. Now i have good understanding for all methods. Thank you! Keep up the good work.
Wow, the quality of this channel is just wonderful. The timing of the explanations seams flawless to me too, not too fast, not too slow, just right. Thank you, Jack, for sharing your knowledge like this!
WOW!! What a great video! I'm just learning, and I knew every term, but this hammered in the concepts so well. I'm really glad I subscribed to you and decided to check out some older videos!
Great video, BWT, at 26:40, "this is an express endpoint" - I think NextJS does not use express library at all, as I know, NextJS uses some custom code of NodeJS.
😂, Jack when you said "that to changed the code for SSG was going to take a lot of work, I paused the video and went to do some arrents. You got me😅 so funny!
20:06 - started learning NextJS yesterday, and what bothers me the most is that we fetch the whole json twice. Once to display the whole list in index.js, and a second time in [id].js. Does getStaticProps get called for each existing id returned by getStaticPaths json? So for 50 ids, we call it 50 times?
Jack every video is getting better. Love it! "CLEAN ARCHITECTURE" is a nice and interesting topic for sure those days. I would like to see some videos about it. Thank you so much!
Hi Jack, I am confused at 29:29, when you made a change to the data with SSGeneration, you didn't push to the github repo but still your request updated the data, how does a deployed application know the changes on your local side?
Small clarification at the end: You do need to "run a server" when using revalidation (aka ISR) as this does SSR (and you obviously have a server API route to call for forced revalidation).
However it is still very cool as the SSG content is still there if the server or DB crashed.
Could have spent a few minutes on mixing the methods, eg:
* in SSG what happens if you added a new pokemon id, would the route do SSR on the first hit.
* on the list page you could use SSG for a limited list of pokemons like the first 20 instead of generating it for the whole 800+, then use CSR to fetch on scroll for example
ok Mr. Expert then please make the video
Not sure why you got that rude response, these are good points.
Simply the best video of Next.Js rendering methods 💕
Jack, you’re my favorite instructor right now. Every single video is very interesting and so well explained. Also, you bring examples with pokemon, which makes it even better hahaha.
Just started to work on SEO migrating my React App to a Next App, that's the best explanation I've seen through my researches as I started from zero on SSG and SSR. Thanks a lot !
I love it when it goes wrong! As i'm learning I like to take the content I watch and apply it to something I'm working on (I'm not a web dev by trade).
What was wrong: One of the entries in my json had an incorrectly ordered key/value pair! This caused some lovely misleading errors that took me a while to pin down. Funny thing is on the surface it looked like it was running in dev but come build time it would error out.
Turns out in dev it was only partially working with the second part of the list having slugs and posts that didn't match. Basically everything after the "typo" was broken but only in as much as the slug and post didn't match! Actually, it was a random console.log that caught my eye in as much as it had an empty array at the end of the returned json response. So again, everything looked ok until the last entry in the return.
All good fun.
Thanks Jack, content like this keeps me inspired and motivated to push through the issues I experience as a learner.
I just wanted to take the time to show appreciation and say thank you for everything you do for us with your videos, sharing your knowledge and helping people like me to grow in the process. You're greatly appreciated.
I've been struggling with this for a few days and I can confidently say this is the best explanation of all time, thank you man
Thank you so you much, Jack! Greetings from Romania!
Tomorrow, I have an interview for Next .js developer position. This video is really helpful to understand the core concepts of Next 12.
Thank you for the great demonstration of Client, SSR and SSG features. I also liked the terminal prompt customisation.
amazing video Jack, literally summarized data fetching in 30 minutes
That room-flip-transition at the end was freaking mucho mega awesome!
Wow thank you so much! I have a task to build an ecommerce site and your tutorial help me a lot to understand
This is a must watch video for anyone to understand about CSR, SSR and SSG's. No lags and very crisp with a nice and easy example. You have got a happy subscriber
I absolutely love you content Mr Herrington
I was trying to do this a few hours before you published. Best explanation on RUclips. Congrats.
Ohh.. The production quality has really gone up recently! Well done!
I'm senior web developer but new to NextJS, and this video explains those concepts in the best way I can find. Also, all your content is just on the point! Thank you Jack 💙
Just waw, thank you so much, may god bless you and your family, you really reminding me of my dad.
Appreciate everything you post.
Mucho awesome explanation! I already knew most of it from before, but it was a great recap with a sprinkle of new info such as revalidate!
This was the neatest explanation I have had for SSR - CSR. Thanks a lot!
geeeezus was just looking at that ! great content man, keep it up with the extended jsx world.
Awesome!!! Finally i really understood the core differences and where use one of each, thanks for this video!
Started following you since your tRPC video. Like your style that explains so much in only a couple of minutes.
Might be worth mentioning that the first revalidation technique (time-based) shown here is what next.js calls ISR, Incremental Static Regeneration. Congrats on all your amazing content!
I had been struggling to understand the differences between these 3 terms then I came across your channel and this video. I just want to appreciate you. Thanks a lot for this awesome explanation, everything is super clean now. ✌🙏
A great way to demonstrate the server side rendered step is the preview of the first request in the network tab (change filter to all)
My understanding is clear when landed to this video, thanks!
Thank you very much for the straightforward and clear explanations. You've fitted in 30 minutes everything that's really needed. Wish you and your channel all the best!
This was mucho crazy awesome! Clear, concise, pertinent. Best I've seen. Glad to subscribe.
What!!! Wow what a fantastic overview and especially demonstration of NextJS. Easy subscribe for me!!
Couple questions:
1. What do you mean by "I would use SSR for search if things are dynamic", woudln't you use CSR (client side rendering) for this since there are many unknowns?
2. If you have an app that's mostly static with videos / audio, with a few dynamic elements like user accounts, user preferences, etc. this feels like a strong case for SSG, but I would love to hear your perspective.
Something like a personal website that has tutorials of some sort where you upload videos / courses maybe once a month (I honestly don't have one, but it's a simple example)
I already knew the rendering method but, after watching this I wished it was there before. Video was refreshing and it is the best short introduction with perfect example.
You could create videos 3 hours long and i would watch every second. I was waiting for a good video explanation for SSG on demand. Now i have good understanding for all methods. Thank you! Keep up the good work.
This was the easier explanation I have seen ever. now SSR and SSG are fully clear to me. special thanks for force revalidating
Wow, the quality of this channel is just wonderful. The timing of the explanations seams flawless to me too, not too fast, not too slow, just right. Thank you, Jack, for sharing your knowledge like this!
WOW!! What a great video! I'm just learning, and I knew every term, but this hammered in the concepts so well. I'm really glad I subscribed to you and decided to check out some older videos!
Thank you very much. This is the best one to understand the use cases. Thanks a lot!!!
PROS:
Course Quality
Brilliant Explanation
Beautiful Animations
CONS:
This was the best video about NextJs. Perfect!
Great!
By the way, you can use the "Rest Client" extension so you don't have to write raw curl requests but also keeping it minimal by design.
You mean something like postman or insomnia?
thank you so much you are amazing 💕💕
you’re an amazing teacher so happy I stumbled on your channel
Thanks again Jack, absolutely love this video. This has to be the best explanation and comparison i have seen of SSR and SSG.
Awesome video Jack! I like how you built on and explained each method 🤩
This is huge Jack 🤯Thanks for the explanations, as always amazing
Your thumbnail it's the american war poster, hilarious
It's a real showcase of how flexible is Next.js! Really useful video! Thank you, Jack!
Great video, BWT, at 26:40, "this is an express endpoint" - I think NextJS does not use express library at all, as I know, NextJS uses some custom code of NodeJS.
Fair, but the API is effectively the same req/res API that you would see in express.
Jack, I never regret watching your rich content. You explain it the way I need to learn stuff. Thank you so much
Incredible video, finally, explained amazing made my day. :D
Great video and explanation, I was wondering how you got the intellisense autocomplete in your terminal as seen at @2:00 of this video.
That's Fig.
😂, Jack when you said "that to changed the code for SSG was going to take a lot of work,
I paused the video and went to do some arrents.
You got me😅
so funny!
How are you only at 61k subs? Your videos are fantastic and you explain things perfectly!
Thank you so much ❤
Amazing video - one of the best programming tutorials I've seen.
20:06 - started learning NextJS yesterday, and what bothers me the most is that we fetch the whole json twice. Once to display the whole list in index.js, and a second time in [id].js.
Does getStaticProps get called for each existing id returned by getStaticPaths json? So for 50 ids, we call it 50 times?
Jack every video is getting better. Love it! "CLEAN ARCHITECTURE" is a nice and interesting topic for sure those days. I would like to see some videos about it. Thank you so much!
Awesome explanation and showcase, thank you!
Very good explanation on the different methods of rendering pages.
Really cool next.js tutorial.... 👍👍👍After watching this video, I could understand easily about the CSR, SSR and SSG. Thanks Jack!
Very detailed and awesome video, thank you Jack
Awesome tutorial and explanation about SSR and SSG.
Thanks
Your video is mucho crazy awesome ! Watching your video is a real pleasure. Thank you.
Finally i understand the concept. Thankyou
Brilliant course. Thanks very much
Next.js, gotta server render 'em all, it's you and me
I know it's our destiny
Next.js, oh, you're my best friend
In a React.js world we must defend!
You are awesome Jack. Thank you for keeping up with such a wonderful content always.
Thanks!
This content was SO helpfull thank you so much!!!
:)
always here to know whats new and always getting better....thank ypu jack
Great content, as expected from your channel, thank you.
Thanks, Jack for this amazing content. Easy Explanation.
Thank you Jack for your awesome explanation.
Hi Jack, I am confused at 29:29, when you made a change to the data with SSGeneration, you didn't push to the github repo but still your request updated the data, how does a deployed application know the changes on your local side?
I must repeat it: best introduction to Next-SS... for devs, (I still watch it sometimes even knowing every word of it 🙂)
Awesome video, well examples and descriptions
Fantastic explanation of all the different rendering methods available in Next.js. 🔥
This is a terrific explanation, thank you :)
Thanks a lot for the detail explanation.
The content I was am looking for! Thanks @Jack Hrrington
Really great explanation! Thank you.
Very well explained. Thanks!
Thank you so much. I really mean it!
very good explanation, thanks a lot!
pretty cool explanation, i'm auto subscribing
NextJS is sooo cool!, and thank you for another great video 🚀
This is a great explanation Jack
Great video Jack,
Thank you.
15:11 How does he destructure the {params} in getServerSideProps function when doing SSR?
{ params: { id } }
or:
const { id } = params;
Inside the function.
@@jherr no that's fine, is params a reserved key word
@@webdev_telugu In Javascript and Typescript, no.
One of the best explanation.
Amaaaazing explanation! Thanks a lot 💯🔥
Just what I needed, Thanks
This is exactly what i needed, awesome
Very useful. Thank you.
Absolute masterpiece content
Great stuff as always
When I find youtube channels like yours I feel like I find a gold mine.
I love how you explain!
Thank you, Sir. You are a hero.
this video is [super, crazu, mucho] awesone 👏
Insane video, thank you