If i'm not wrong, 'use server' is generally used for server actions which always initiate a POST request and Nextjs recommends using them for mutating data and NOT fetching data. If you want to ensure server side data fetching, you can do import 'server-only' at the top of the file and call server or DB to fetch data, otherwise it's not a great practice to fetch data within 'use server' files.
AMAAAAAZING, BRO🎉. Thank you so much. Your channel is set up for success. I watched the entire video + subscribed. PS: - the docker part is a gem🎉. - I wish you had shown the AWS SES part, but I guess I can figure that out on my own on my second take coding along. - Please create a Discord Server, post the link here, so you can keep us up-to-date with your channel progress, suggestions/recommendations from us, etc.. I'm actually a C++ Dev learning some WebDev so I can create a Blogging App [I like to write😅], but I could help you mod the server. - Create a Patreon as well, so we can help you to remain as unsponsored as possible, so you keep on using as many free tools as possible. Thank you again.
Thanks for the suggestions! I want to put out more content first and figure out the right style that I like and learn the niche first before I decide what to put on Patreon, the Discord server sounds like a good idea too.
Thanks. This is the best nextauth video I've ever seen. If anyone ask how to use nextauth just send this video instead of the doc. xD is there any specific reason why you use router.push instead next/link ? hope you make more video about next.js
@@23AvpADR Thank you so much! You have no idea how much that means to me! With regards to the router.push, it was just an arbitrary choice. I decided to go with that to keep the video consistent rather than switching between different methods of routing to minimise confusion for beginners. You can use whichever method you like.
7:20 -d = enable detach mode 31:40 No that's different. That is a package "server only". Use server is different. It is annotation for server actions not to enforce the code to be run on server.
Wonderful content. Other content providers did not mention the necessary production settings which caused my production to fail yet dev to pass, was so frustrating. I note you verify authority to paths in the function, to see if signed in or not, or admin etc. Another solution is Middleware, any advantage of one approach over the other ?
I wouldn't recommend using middleware. Next-Auth really isn't designed for it. I did try it, but I couldn't get it to work as the underlying library that next-auth uses to interact with the database uses an edge implementation which doesn't work with middleware.
I had installed postgres on my local machine and was using postgresql on docker with the same port which caused me few hours of trouble, use different ports or disable your local pgservice
what happens if you signed in with ur google account, but then u unlinked it, and also the session was erased, how will you sign in again to the same account with same or other google account?
@@MihirAmanRaj when the account is unlinked it deletes the Google OAuth information from the database. So if the user doesn't have another Google account linked, then signing in with the unlinked Google account will automatically relink it. The account is determined by the email (so the user can also sign into the account using the email address of the unlinked Google account if they want to). Unlinking the Google account only deletes the Google OAuth record from the database but the email record still remains in the "users" table.
You fought the enemy that is the Auth JS docs so we don’t have to- thank you for your service!
This guy has a seamless style of explaining concept with great steeze
If i'm not wrong, 'use server' is generally used for server actions which always initiate a POST request and Nextjs recommends using them for mutating data and NOT fetching data. If you want to ensure server side data fetching, you can do import 'server-only' at the top of the file and call server or DB to fetch data, otherwise it's not a great practice to fetch data within 'use server' files.
More Next.js/PostgreSQL videos like this one please! Great tutorial!
I just finished the tutorial. Very good content, its the best tutorial for auth.js out there. Thanks.
bro this is awesome! please keep making more of this.
I was in the middle of implementing this and got this video notification 😂 . Thanks!
Glad it helped!
really nice tutorial, coded along and really enjoyed it! thanks
btw ending got me hahaha
Thanks for breaking things down. You explain concepts so clearly :)
This is unreal! How did you learn all this stuff?
Would love to see a bit on deployment ... moving postgres to an external provider, etc.
Very good content. Please keep uploading next.js tutorials like this
AMAAAAAZING, BRO🎉.
Thank you so much.
Your channel is set up for success.
I watched the entire video + subscribed.
PS:
- the docker part is a gem🎉.
- I wish you had shown the AWS SES part, but I guess I can figure that out on my own on my second take coding along.
- Please create a Discord Server, post the link here, so you can keep us up-to-date with your channel progress, suggestions/recommendations from us, etc.. I'm actually a C++ Dev learning some WebDev so I can create a Blogging App [I like to write😅], but I could help you mod the server.
- Create a Patreon as well, so we can help you to remain as unsponsored as possible, so you keep on using as many free tools as possible.
Thank you again.
Thanks for the suggestions! I want to put out more content first and figure out the right style that I like and learn the niche first before I decide what to put on Patreon, the Discord server sounds like a good idea too.
Thanks. This is the best nextauth video I've ever seen. If anyone ask how to use nextauth just send this video instead of the doc. xD
is there any specific reason why you use router.push instead next/link ?
hope you make more video about next.js
@@23AvpADR Thank you so much! You have no idea how much that means to me!
With regards to the router.push, it was just an arbitrary choice. I decided to go with that to keep the video consistent rather than switching between different methods of routing to minimise confusion for beginners. You can use whichever method you like.
OUTSTANDING LECTURE THANKS PLESE MAKE MORE THIS TYPE OF LECTURE
This was a fantastic watch. Thank you!
Thanks for the step by step tutorial. All worked flawlessly!
great! please make more video about facebook login
please can you make video about AuthJs v5 when user can login using a facebook account
I searched for this topic and now on make video on youtube
7:20 -d = enable detach mode
31:40 No that's different. That is a package "server only". Use server is different. It is annotation for server actions not to enforce the code to be run on server.
Thank you
Wonderful content. Other content providers did not mention the necessary production settings which caused my production to fail yet dev to pass, was so frustrating. I note you verify authority to paths in the function, to see if signed in or not, or admin etc. Another solution is Middleware, any advantage of one approach over the other ?
I wouldn't recommend using middleware. Next-Auth really isn't designed for it. I did try it, but I couldn't get it to work as the underlying library that next-auth uses to interact with the database uses an edge implementation which doesn't work with middleware.
it would be great if you do same connection in react expo so we won't need to go for services like clerk, supabase auth
Thanks for the video, can you make a new one on using NextAuth with email/password login?
If this video gets the channel over 4000 hours watch time (minimum criteria for monetisation), then I will do it.
@@Jackson_Zheng Imma watch this with multiple accounts just to increase watch time for that 😝😝
I like the video but i did not like the styling part. because i dont use it i use tailwind.. only confusing..
can we have one with lucia auth
I had installed postgres on my local machine and was using postgresql on docker with the same port which caused me few hours of trouble, use different ports or disable your local pgservice
yeah, don't have more than one postgres service running at once.
@@Jackson_Zheng Also I wanted to thank you for this tutorial and the efforts you made for 'production' grade things.
what happens if you signed in with ur google account, but then u unlinked it, and also the session was erased, how will you sign in again to the same account with same or other google account?
@@MihirAmanRaj when the account is unlinked it deletes the Google OAuth information from the database. So if the user doesn't have another Google account linked, then signing in with the unlinked Google account will automatically relink it. The account is determined by the email (so the user can also sign into the account using the email address of the unlinked Google account if they want to). Unlinking the Google account only deletes the Google OAuth record from the database but the email record still remains in the "users" table.
@@Jackson_Zheng okay makes sense, i will surely try to implement it, i am using prisma btw for my own auth starter kit
please can you make a video about login using facebook?
how did your docker containers worked with no need to set up the networks?
docker works with localhost by default
@@Jackson_Zheng thank you for this amazing tutorial I learned a lot from it
amazing.
British AND Asian?! Can't go wrong.
loved the d0cker part big up :_
Backup or restore database to website
Transfer balance
Admin edit/delete/disable/create
Products buying user account
Expired date products
🎉🎉🎉🎉🎉🎉🎉🎉🎉