MDX in Next.js is Easy Now
24:16
2 ай бұрын
Favicons the Right Way
18:07
2 ай бұрын
Pagination in React
29:05
3 ай бұрын
Generate a PDF in React
23:38
3 ай бұрын
This Fixes CORS
13:02
5 ай бұрын
Get Selected Text in React
25:12
9 ай бұрын
Build a Code Editor in React
10:11
11 ай бұрын
Easily Zip Files in React
13:24
Жыл бұрын
Пікірлер
@mjylove2
@mjylove2 19 сағат бұрын
awesome content
@colbyfayock
@colbyfayock 16 сағат бұрын
thanks 🙌
@pushingpixels98
@pushingpixels98 Күн бұрын
Is ut possble for me to allow the client to make a payment directly to my bank account without using third pary softwares such as tripe or paypal
@colbyfayock
@colbyfayock 16 сағат бұрын
not totally sure but doubt it
@saifulislamshanto2381
@saifulislamshanto2381 Күн бұрын
Thanks :) -
@colbyfayock
@colbyfayock 14 сағат бұрын
no problem!
@acloudonthebluestsky9687
@acloudonthebluestsky9687 2 күн бұрын
how about when user miss use the "back" or "miss click another link ? i tried but it's not fire the func
@SO-fb4ef
@SO-fb4ef 2 күн бұрын
but it has to be 16x16 not 1024x1024 dude. Wtf mannnnnnn this doesn't help me at all
@ExperiencePlusDigital
@ExperiencePlusDigital 2 күн бұрын
This is amazing🎉. Would be fantastic to have a similar video dealing with media (image, video and audio) how to store them (uploadthing, cloudinary, Vercel Blob, etc) and how to use them in a efficient way (cropped, reduced image sizes, ai edited). For me that is the missing understanding, compared to using traditional CMS systems (Drupal, Wordpress) in a headless manner.
@colbyfayock
@colbyfayock 2 күн бұрын
thanks! cool idea
@financialgurkha
@financialgurkha 4 күн бұрын
Colby, my man. you're awesome!!!! I was using a lot of these from a template before and now I see how it works. Now Im going to try and implement them on my website and see for myself. Thank you for such an amazing tutorial, bro.
@colbyfayock
@colbyfayock 3 күн бұрын
no problem!
@petecapecod
@petecapecod 6 күн бұрын
Awesome video Colby 🎉🙌🏻 This will be handy to use on my sites.
@colbyfayock
@colbyfayock 5 күн бұрын
thanks! 🙌
@rasikjain7794
@rasikjain7794 6 күн бұрын
Hi Colby, YT has recommended this channel. Very informative and detailed oriented for a person to follow along. This is helpful for anyone newbies who are interested in learning concepts of css, react, typescript, sql, apis, deployment etc. I like the way you do use the multi-cursor for the editing. A video on VS extensions you use and especially multicursor video will be helpful.
@colbyfayock
@colbyfayock 5 күн бұрын
glad you found it helpful!! ill keep that video idea in mind, thanks
@cutefatboy
@cutefatboy 6 күн бұрын
The react-pdf/renderer option doesn't seem to work anymore on Nextj14 and 15 and React 18? I tried V3 and V4 and followed your code. const stream = await renderToStream(<MyDocument />); //Code dies here. We get error Error generating PDF: Error: Minified React error #31; Objects are not valid as a React child (found: object with keys {$$typeof, type, key, props, _owner, _store}). If you meant to render a collection of children, use an array instead. Can you double check on a new project and see if you get the same error in your route.tsx file?
@John-eq5cd
@John-eq5cd 7 күн бұрын
What an interesting approach to use a <form> and action to change the status of the invoice. Also, that was some crazy typescript for the statuses, I will have to go through it slowly. Going back to managing the change in status in the server component, I coded a small client side component specifically for the drop down menu which allowed me to use onClick. Then I imported it into the invoice details page. It seemed to work ok.
@MacTuka
@MacTuka 8 күн бұрын
Simple, quick, easy to understand! Great video! Cannot wait to check the rest of them! +1 sub!
@colbyfayock
@colbyfayock 8 күн бұрын
thank you!
@crow3291
@crow3291 9 күн бұрын
like your terminal, what are you using to customize your zsh shell? I'm using p10k but I like the simpleness of yours.
@colbyfayock
@colbyfayock 8 күн бұрын
oh-my-zsh and some random custom colors i played around with in the profile settings
@John-eq5cd
@John-eq5cd 10 күн бұрын
Enjoying the content so far, thanks Colby. Is it too simplistic to suggest a 'View' button for each row with the link to the specific invoice details?
@colbyfayock
@colbyfayock 8 күн бұрын
definitely a good idea!
@josyafritudemedia551
@josyafritudemedia551 11 күн бұрын
thank you
@colbyfayock
@colbyfayock 10 күн бұрын
no problem!
@YuliaIvonova
@YuliaIvonova 11 күн бұрын
Great tutorial. Almost everything needed for a headless blog was covered. I didn't know about Directus but now I can try it. I wonder if you can do a tutorial with Payload. They say Payload is the CMS for Next.js so that would be interesting to get your take on that.
@mundoextrano8892
@mundoextrano8892 12 күн бұрын
I followed the tutorial but even the repository code gives me error please, do you know why I get this error in the example code? page.tsx:12 POST localhost:3001/api/scraper 500 (Internal Server Error) handleOnClick @ page.tsx:12 callCallback @ react-dom.development.js:20565 invokeGuardedCallbackImpl @ react-dom.development.js:20614 invokeGuardedCallback @ react-dom.development.js:20689 invokeGuardedCallbackAndCatchFirstError @ react-dom.development.js:20703 executeDispatch @ react-dom.development.js:32128 processDispatchQueueItemsInOrder @ react-dom.development.js:32160 processDispatchQueue @ react-dom.development.js:32173 dispatchEventsForPlugins @ react-dom.development.js:32184 eval @ react-dom.development.js:32374 batchedUpdates$1 @ react-dom.development.js:24953 batchedUpdates @ react-dom.development.js:28844 dispatchEventForPluginEventSystem @ react-dom.development.js:32373 dispatchEvent @ react-dom.development.js:30141 dispatchDiscreteEvent @ react-dom.development.js:30112 page.tsx:21 Error: 500 - Internal Server Error overrideMethod @ hook.js:608 window.console.error @ app-index.js:33 console.error @ hydration-error-info.js:63 handleOnClick @ page.tsx:21 await in handleOnClick callCallback @ react-dom.development.js:20565 invokeGuardedCallbackImpl @ react-dom.development.js:20614 invokeGuardedCallback @ react-dom.development.js:20689 invokeGuardedCallbackAndCatchFirstError @ react-dom.development.js:20703 executeDispatch @ react-dom.development.js:32128 processDispatchQueueItemsInOrder @ react-dom.development.js:32160 processDispatchQueue @ react-dom.development.js:32173 dispatchEventsForPlugins @ react-dom.development.js:32184 eval @ react-dom.development.js:32374 batchedUpdates$1 @ react-dom.development.js:24953 batchedUpdates @ react-dom.development.js:28844 dispatchEventForPluginEventSystem @ react-dom.development.js:32373 dispatchEvent @ react-dom.development.js:30141 dispatchDiscreteEvent @ react-dom.development.js:30112
@akramnarejo6221
@akramnarejo6221 12 күн бұрын
love your content and delivery. Please create a detailed web3 project.
@colbyfayock
@colbyfayock 12 күн бұрын
haven't yet gone anywhere near web3, ill have to think about that. if i were to start somewhere to start learning, where would be the best place? topic?
@langagama
@langagama 13 күн бұрын
can i use any other payment system besides stripe?
@AmmarTheTrainer
@AmmarTheTrainer 14 күн бұрын
Thanks for the nice share .
@colbyfayock
@colbyfayock 14 күн бұрын
np!
@janmalmur1244
@janmalmur1244 16 күн бұрын
Can I ask you why when i make code from chapter "Dynamic Page Routes for Invoices" i get an error "Error: Route "/invoices/[invoiceId]" used `params.invoiceId`. `params` should be awaited before using its properties." I dont know how to fix it :/
@colbyfayock
@colbyfayock 15 күн бұрын
Next.js released a last minute change before publishing 15 stable that makes searchParams an async API: nextjs.org/docs/app/api-reference/file-conventions/page#searchparams-optional
@MrLegendsTV
@MrLegendsTV 16 күн бұрын
This is a fabulous video. Thank you!
@colbyfayock
@colbyfayock 15 күн бұрын
no problem!
@caiocarvalhodigital
@caiocarvalhodigital 17 күн бұрын
This video saved my project! 🥳
@colbyfayock
@colbyfayock 17 күн бұрын
🫡
@VLADICA94KG
@VLADICA94KG 18 күн бұрын
4:16:15 line 32 isError conditions contradicts each other : D
@StanislausKatczinsky
@StanislausKatczinsky 19 күн бұрын
Subsriber earned. Just the intro is enough to show that you will learn something from this and not just mindlessly type what you see in the video. Keep it up. Will check your other videos.
@colbyfayock
@colbyfayock 19 күн бұрын
thank you 🙏
@gephreychen6211
@gephreychen6211 19 күн бұрын
such gr8 content and such an excellent teacher. Best of the yr, thank you!
@colbyfayock
@colbyfayock 19 күн бұрын
thank you 🙏
@tienhuynh2435
@tienhuynh2435 20 күн бұрын
well done sir
@colbyfayock
@colbyfayock 19 күн бұрын
thank you 🙏
@lostinthenarrativve
@lostinthenarrativve 21 күн бұрын
As soon as I try to install the dependencies I get loads and loads of configuration errors .
@KhosroHeidari-g4n
@KhosroHeidari-g4n 21 күн бұрын
He has an impressive talent in technically and presentation, but what struck me even more was the genuine warmth and honesty he brings. It left a lasting impression on me.🫶🫶
@THATIPAMULAVENKATESH-lp5wb
@THATIPAMULAVENKATESH-lp5wb 22 күн бұрын
Hi, I have used it in different way, but this video is very useful for me
@colbyfayock
@colbyfayock 22 күн бұрын
glad to hear it helped!
@mothersmucker1
@mothersmucker1 23 күн бұрын
why not explain what template literals are and why they are used .... Template literals are..... and they can be used for........
@mothersmucker1
@mothersmucker1 23 күн бұрын
its so annoying how manu of these videos content guys tell people to subscribe to their channel. I never subscribe when someone tells me to suscribe. If I want to add your channel I'll add it. We get it already. Just get straight to the content. If its good I'll subscribe if sucks well we'll see ya later.
@mohasinkr
@mohasinkr 23 күн бұрын
This is so useful. As someone who hates setting up eslint and prettier configs this is godsend. Also please dont stop making these awesome videos. Your channel is so underrated!
@colbyfayock
@colbyfayock 22 күн бұрын
thank you 🙏
@reactdave1800
@reactdave1800 24 күн бұрын
Excellent video! One point of clarity, you can use the "toLocaleString" method to get the commas in your number instead of creating a separate method... like this: const total1 = 811024676 total1.toLocaleString("en-US")
@AndreHugoFernandes
@AndreHugoFernandes 24 күн бұрын
Man, my blog has more than 4.000 post. I´d like to use your template, but, this tutorial has a limitation of only show 100 posts, wth a maximum 10 pages for pagination. Is that correct? In my Wordpress blog I have more than 159 pages with 25 post per page. How can I have the same pagination in my Wordpress blog? Here is the link: diariooficial.jaboatao.pe.gov.br Please answer if is that possible to use your tutorial in my case.
@YuriyChamkoriyski
@YuriyChamkoriyski 24 күн бұрын
Hi, Colby! Thanks for the comprehensive and full of new stuff tutorial. It is a great learning material. I have a question, though. Am I the only one who experience a problem with the searchParams. At around 4:06:40, when you define isSuccess and isCanceled constants and tried to console log them I am getting always false for both of them, regardless of setting the parameter manaually in the URL to "success" or "cancel" and even after a successful payment, which is working and I am getting the success in the URL automatically, those two constans never change values and that is why the updateStatusAction never fires, so the status is never updated. I concole log the searchParams.status itself and it is undefined! So, what am I doing wrong? Thanks for you time and consideration.
@colbyfayock
@colbyfayock 22 күн бұрын
hey did you happen to compare what you're doing to the code? github.com/colbyfayock/my-invoicing-app/blob/main/src/app/invoices/%5BinvoiceId%5D/payment/page.tsx#L26-L34
@harsimransingh1025
@harsimransingh1025 19 күн бұрын
I encountered the same problem. This worked for me to get the status right: let pstate; try { pstate = await searchParams; console.log("Status:", pstate.status); } catch (error) { console.error("Error:", error); } const isSuccess = pstate?.status === "success"; const isCanceled = pstate?.status === "canceled";
@colbyfayock
@colbyfayock 19 күн бұрын
hey did you compare what im doing in the code here? github.com/colbyfayock/my-invoicing-app/blob/main/src/app/invoices/%5BinvoiceId%5D/payment/page.tsx#L26-L35
@theseus_dev
@theseus_dev 24 күн бұрын
Currently working on a project with stream and you're video was very well structured. Got it to work between two users and save multiple channels. Thank you! If all else fails remember guys: RTFM!
@colbyfayock
@colbyfayock 24 күн бұрын
haha glad it helped!
@JoseLopez-me2re
@JoseLopez-me2re 25 күн бұрын
Hey Colby, I have a question regarding Security best practices. At around 2:57:00 you create the Invoice.tsx client component and eliminate all the backend logic from it. But still you import the Invoice schema into a client component. Isn't that giving away information about how our database is structured, tables, fields, etc. to the client?
@colbyfayock
@colbyfayock 24 күн бұрын
thats an interesting question, but generally speaking and i'd have to remember the exact context, but on that client component, i only use it for the TS definitions which would get stripped: github.com/colbyfayock/my-invoicing-app/blob/main/src/app/invoices/%5BinvoiceId%5D/Invoice.tsx
@JoseLopez-me2re
@JoseLopez-me2re 23 күн бұрын
@colbyfayock help!
@tobiasjennerjahn8659
@tobiasjennerjahn8659 25 күн бұрын
Is the hidden forms 'trick' really idiomatic react/next? That feels very hacky imo. But maybe it's just because I'm not used to it.
@colbyfayock
@colbyfayock 24 күн бұрын
its not a trick... its a valid HTML input type and has been commonly used with forms for years and years and years
@tobiasjennerjahn8659
@tobiasjennerjahn8659 23 күн бұрын
@@colbyfayock Thanks, I appreciate the answer. This just isn't a setup I've really encountered before and using hidden elements just to pass a bit of data felt a bit off. Good to know that this is a common practice and wouldn't be out of place in a bigger project.
@mohasinkr
@mohasinkr 25 күн бұрын
Your voice is so calming and smooth. There is so unnecessary filler words in between. Love the content 😊😊
@colbyfayock
@colbyfayock 24 күн бұрын
thanks for the kind words 🙏
@tumon001
@tumon001 25 күн бұрын
I'm your old fan and I always loved your content.
@colbyfayock
@colbyfayock 24 күн бұрын
thank you for your support 🙏
@Code-sz9db
@Code-sz9db 25 күн бұрын
I look forward for this kind of format! I'm really glad to see a real project-based video!
@colbyfayock
@colbyfayock 24 күн бұрын
yeahhh! hope you enjoy it!
@gianmarcoscandale314
@gianmarcoscandale314 26 күн бұрын
Thank you so much for your content! I have a question: how can I implement react-pdf on Next.js for exceptionally large PDF files? I’m dealing with a file of over 600 pages, and rendering this server-side results in a timeout as it takes over 10 seconds to process. I considered implementing a streaming solution, but I haven’t found any examples or discussions about it online. Would you recommend this approach, or do you have any other suggestions?
@colbyfayock
@colbyfayock 26 күн бұрын
you can increase the timeout on API routes vercel.com/guides/what-can-i-do-about-vercel-serverless-functions-timing-out#maximum-function-durations but you may be better served with an actual server to manage heavier loads as i suspect that would start to become costly. its likely worth testing and figuring out what your bill would look like
@ramasupriya4377
@ramasupriya4377 27 күн бұрын
I cloned code from GitHub and started with the "npm install" command. Then I started the server, but it is not working. It shows an error like: " errno: -4058, code: 'ENOENT', syscall: 'open'," could you please help with this?.
@succatash
@succatash 27 күн бұрын
High quality content
@colbyfayock
@colbyfayock 26 күн бұрын
🙏
@qwertzez
@qwertzez 27 күн бұрын
Hey, I hope I still get some answer here :D. I'm self hosting plausible and NextJS and when I click on a link to go for example to /privacy-policy, it doesn't fire an event and it doesn't track it. When I refresh the website after that, I get the event. It also works, when I write /privacy-policy into the URL. It just doesn't work when I click on the link button on the page. Does anyone know how I can fix that?
@mohammedalhashamy6276
@mohammedalhashamy6276 27 күн бұрын
Thank you SOO much Colby this was amazing you are an absolute life saver!
@colbyfayock
@colbyfayock 26 күн бұрын
🫡
@aurobindobhuyan2107
@aurobindobhuyan2107 27 күн бұрын
I am using Next.js 14.2, I want to use the scroll-based animation, the animation-timeline works but it's experimental and the safari browser doesn't support it. And making use of hooks will make my entire section client-component. Which also I don't want, Can someone please help me with this? 😭😭😭😭
@henrymunoz2035
@henrymunoz2035 28 күн бұрын
Wow you are amazing
@colbyfayock
@colbyfayock 27 күн бұрын
🙏
@JoseLopez-me2re
@JoseLopez-me2re 28 күн бұрын
Thank you for this great course Colby. Loving every second of it! ❤
@colbyfayock
@colbyfayock 27 күн бұрын
love to hear it!