Sam Selikoff: Improving developer and user experience with nested layouts in Next.js

  Рет қаралды 55,358

Vercel

Vercel

Жыл бұрын

Get an inside look at how nested layouts with Next.js 13 can improve your user and developer experience with Sam Selikoff, Founder of Build UI.
Deploy now: vercel.com/home

Пікірлер: 151
@alfonsocartes
@alfonsocartes Жыл бұрын
So many concepts understood in one video. Awesome! Thank you Sam
@sma1015
@sma1015 Жыл бұрын
and in just 23minutes... damn
@ichibanfuego
@ichibanfuego Жыл бұрын
am i watching a vscode masterclass or a layouts demo
@r0mankon
@r0mankon Жыл бұрын
Vim masterclass
@mostlydevs4277
@mostlydevs4277 Жыл бұрын
Both. Lol
@DivjotSingh
@DivjotSingh Жыл бұрын
Sam is a great educator. He paces his talks/videos quite nicely like a melody. You get introduced to a simple API, then a problem, then a natural solution that intuitively makes sense, then some fun with it, and then a great climax to what you just learnt.
@swyxTV
@swyxTV Жыл бұрын
are we still talking about youtube videos or
@DivjotSingh
@DivjotSingh Жыл бұрын
@@swyxTV _sorry children_
@martinezomg
@martinezomg Жыл бұрын
WOW that was a quick but very concrete explanation, thank you.
@jordondax
@jordondax Жыл бұрын
You were an awesome presenter, thanks enjoyed the video.
@hakkasama8807
@hakkasama8807 Жыл бұрын
I think I've watched this video almost 5 even the 2 stages of the conference, it was awesome tbh! Thanks to the full team, amazing work here!
@emalorenzo2415
@emalorenzo2415 Жыл бұрын
Such a great talk! Thanks Sam, can't imagine making this content easier to understand
@_peterferguson
@_peterferguson Жыл бұрын
Easily the best conf talk ... nicely done!
@TomHermans
@TomHermans Жыл бұрын
Great video Sam. A lot of concepts inside one video and hands-on examples. congratz
@hemanthkotagiri8865
@hemanthkotagiri8865 Жыл бұрын
I didn't even notice 23 minutes have gone by. Thank you for this awesome release Vercel! Can't wait to get my hands dirty!
@shift-happens
@shift-happens Жыл бұрын
The segment from useSelectedLayoutSegment is just awesome :)
@juanmanuelamato511
@juanmanuelamato511 Жыл бұрын
Wonderful way to explain. Next 13 has many features that reduced the doubts I had to understand ssr or csr. Thank you very much!
@im-a-trailblazer
@im-a-trailblazer 11 ай бұрын
It's an absolute joy to learn a framework this way.
@senkasim
@senkasim Жыл бұрын
Thank you for the clear explanation. I can't wait to use nextjs 13 in my new projects.
@gagamil
@gagamil Жыл бұрын
Having built only a small number of frontend mvp apps I really appreciate that the new next hits all the common dev concerns that even I have run upon. So convenient.
@tericcabrel
@tericcabrel Жыл бұрын
Wow! This video is excellent! Layout was daunting to me until I watched this video. That is very well explained! Thank you so much
@omkarkulkarni3644
@omkarkulkarni3644 Жыл бұрын
Very professional and crisp. Thanks SAM!
@larrydevops6951
@larrydevops6951 Жыл бұрын
Wow, the new features seem amazing...Thank you
@alsherifkhalaf7385
@alsherifkhalaf7385 Жыл бұрын
I am happy to watch you on Vercel channel.
@nicolassturm8853
@nicolassturm8853 Жыл бұрын
so well explained and enjoyable to watch🔥
@jugalkumarseth7675
@jugalkumarseth7675 Жыл бұрын
I was to start a new project downloaded next-12 yesterday Now switching to next-13. Very well explained video Thanks Sam.
@pavankjadda
@pavankjadda Жыл бұрын
Great video. Explained new concepts like piece of cake :)
@MrKeepItTrill
@MrKeepItTrill Жыл бұрын
Wow I can't believe you can hold space to move the MacOS screenshot selection!!! This has changed my life. Great explanation of /app as well :)
@itsbrex
@itsbrex Жыл бұрын
I never knew you could do that either lol
@MrBrandenS
@MrBrandenS Жыл бұрын
Always enjoy your great videos Sam! You are an amazing teacher. I'm sure you get a bit of smirk on your face how similar this feels to Ember land with even more flexibility to take things further with the server side and client side paradigms which are awesome. I'll definitely be giving the new layout stuff a try this week.
@samselikoff
@samselikoff Жыл бұрын
You got it! Love seeing more and more of the best patterns making their way into Next.js 🙂
@Blade_Dhruv
@Blade_Dhruv 2 ай бұрын
Hey bro this is the best tutorial of nested layout I have ever seen, your way of explaining is just so good loved this video!!
@drakongames5417
@drakongames5417 7 ай бұрын
just wow video. so many good things I learnt from just a single video. great way to teach
@vitriowibisono2875
@vitriowibisono2875 Жыл бұрын
Very clear and informative video. I would like too see more examples
@ginger-viking
@ginger-viking Жыл бұрын
Love Sam's teaching style
@questionyourbeliefs
@questionyourbeliefs Жыл бұрын
This video is absolutely amazing.
@harelpanker
@harelpanker Жыл бұрын
Thanks! very nice explanation (as always)...
@quantumrim3805
@quantumrim3805 11 ай бұрын
Thank you for such a valuable video 👏
@kenny7385
@kenny7385 Жыл бұрын
woah cool to see Bradley Cooper giving explanations about next 13 🙏
@eliuddyn
@eliuddyn Жыл бұрын
Amazing explanation 🔥🔥 Nextjs forever 🔥🔥
@Mitsunee_
@Mitsunee_ Жыл бұрын
Yeah, I went from "dunno if I'll get this to work" to already thinking ahead to migrating my blog as a test project. Gonna wait for the docs to be updated and current projects to get finished and give it a try :)
@notshbn
@notshbn Жыл бұрын
I’ve been looking for this
@synt-x6458
@synt-x6458 Жыл бұрын
well explained. anyone else excited by these new features?
@BrianRAmolo
@BrianRAmolo Жыл бұрын
Great video !
@igrb
@igrb Жыл бұрын
Banger as always
@warofsigmar34000
@warofsigmar34000 Жыл бұрын
Holy cow ! Awesome thx for the video
@labnol
@labnol Жыл бұрын
This is very useful.
@rammehar5531
@rammehar5531 Жыл бұрын
I the love the way you are explain things, great. pls also explain with auth and global state.
@swyxTV
@swyxTV Жыл бұрын
great talk Sam!
@Infante1979
@Infante1979 9 ай бұрын
So helpful thank you so much
@minnow1337
@minnow1337 Жыл бұрын
Love the new routing system, migrate api routing too pls 🙏
@gabrielrock
@gabrielrock Жыл бұрын
really good video
@BarisPalabiyik
@BarisPalabiyik Жыл бұрын
This talk was great, I wish they showed how to do mutations(post reqs) as well with the server components, because when you go client side for interactivity you lost the backend capabilities.
@gustavomonteiro2087
@gustavomonteiro2087 Жыл бұрын
Sam is the best!
@JasonChannelOne
@JasonChannelOne Жыл бұрын
Fantastic!
@henriquematias1986
@henriquematias1986 Жыл бұрын
Would be great to see useSWR running on top of those statically rendered pages! So new data could be loaded at runtime. Also the server side code to be updated from time to time
@HarshDivecha_FTR
@HarshDivecha_FTR Жыл бұрын
AMAZING !!!
@ashutoshsingh8867
@ashutoshsingh8867 Жыл бұрын
Awesome❤
@anuroop748
@anuroop748 Жыл бұрын
excellent !!!
@amirnoorani5017
@amirnoorani5017 9 ай бұрын
Sam is awesome
@prabeshregmi3372
@prabeshregmi3372 Жыл бұрын
Sam Selikoff: Improving learning experience
@manoj-k
@manoj-k Жыл бұрын
My favourite man is here
@GurpreetSingh-zn1fd
@GurpreetSingh-zn1fd Жыл бұрын
Super!
@anhvuuc8693
@anhvuuc8693 Жыл бұрын
Please do more video Thank you
@songokussj4cz
@songokussj4cz Жыл бұрын
So goood! Such learn... 🙂 Maybe a stupid question though. 22:30 - what if I change something in my DB, for example year of LoTR from 2001 to 2002. Will this update or I have to rebuild the next.js app again (or if I add a new movie)
@AhmadAbdulSamad
@AhmadAbdulSamad 6 ай бұрын
liked the start music
@danielf4438
@danielf4438 Жыл бұрын
Very good video, the pacing is perfect. How can I setup the hot reload you are using, the get instant feedback on localhost?
@ifeanachofavour409
@ifeanachofavour409 10 ай бұрын
This is awesome stuff you guys have done. Just a question for Sam concerning layout. How do I create protected layouts, such that, the layout at the root level of my project doesn't show on a protected page/route(using middleware for protected routes). Looking forward to a reply. Thanks
@creatorsremose
@creatorsremose Жыл бұрын
Really great developments, thank you! Though I am a little concerned about how hideous was that "loading" flicker every time you navigated to Movies. It's fine when you land on that page, but navigating to it (for my standards, at least) will require a much more elegant solution than that.
@CoryTheSimmons
@CoryTheSimmons Жыл бұрын
Simple enough. Have the loading component return null unless it's been 200ms or something, in which case, show a skeleton loader. That way you're not flashing it for every little thing, but when things actually are taking 1s+ to load, people will get some sort of feedback.
@whoIsDeck
@whoIsDeck Жыл бұрын
That's Sam!
@codex6634
@codex6634 Жыл бұрын
Sam, thanks for you great presentation. Could you share this example with us?
@lutif1415
@lutif1415 Жыл бұрын
awesome video. qq: why not const for all those variable you are never going to update, why use let?
@ogunmokunademola7292
@ogunmokunademola7292 Жыл бұрын
This is cool. Do you have a personal KZbin channel. I love how you explain stuffs
@AndersGustafsson87
@AndersGustafsson87 Жыл бұрын
yes he does and yes its great: kzbin.info
@ogunmokunademola7292
@ogunmokunademola7292 Жыл бұрын
@@AndersGustafsson87 Thank you..
@binusegoogle
@binusegoogle Жыл бұрын
Need typescript ver 😢 But helpful content anyway. Thank you very much 🥰🥰
@neociber24
@neociber24 Жыл бұрын
It's a really simple example, I don't think you need to worry about TS, it doesn't change that much
@sayandcode
@sayandcode Жыл бұрын
Sick
@luisllaboj
@luisllaboj 9 ай бұрын
How can I open that little window at the top when you select something you wanna wrap in the JSX?
@drakongames5417
@drakongames5417 6 ай бұрын
how are you using those commands(11:41) without going to network tab. whats the shortcut bring out run and enter command there
@basics-school
@basics-school Жыл бұрын
so much details in this talk but while I use segment it with group route i get the segment as (auth) like this so how can i set the active state in this scenerio
@indianappguy
@indianappguy Жыл бұрын
please share the github link to this project so we can see the version of different package i am stuck
@thrivingcreator
@thrivingcreator Жыл бұрын
Question: Around 6:45, after you get the client-component setup (via 'use client') we see that the console.log(href) prints each route *twice* in the Chrome dev tools for each page refresh. Why twice?
@devjunioralves
@devjunioralves Жыл бұрын
This is because React 18, with strict mode enable.
@wchorski
@wchorski 9 ай бұрын
Is there a difference for using useSelectedLayoutSegment vs useRouter and reading the url?
@mastan419
@mastan419 Жыл бұрын
@hakuna_matata_hakuna
@hakuna_matata_hakuna Жыл бұрын
loading page is cute but a progress bar on the top is better , youtube , github it just looks so good without subjecting people to page wide loading spinners
@fram007
@fram007 Жыл бұрын
Hi, Sam two issues: 1. when I use in nav-link.tsx: "let segment = useSelectedLayoutSegment();" I get " No selected layout segment below the current level" 2. When i use "import { experimental_use as use } from "react";" I get "react__WEBPACK_IMPORTED_MODULE_1__.experimental_use) is not a function"
@samselikoff
@samselikoff Жыл бұрын
Any chance you can share a reproduction? I'd be happy to take a look!
@ray-lee
@ray-lee Жыл бұрын
you can just import use with "import { use } from "react"
@fram007
@fram007 Жыл бұрын
@@ray-lee tk! this solve the second problem!
@9662Mario
@9662Mario Жыл бұрын
For the first issue, like at me, the error presents when "segment" in on "/". If you look at /movies it work fine.
@killerdroid99
@killerdroid99 Жыл бұрын
I am having the exact same issue
@strato1986
@strato1986 Жыл бұрын
This is great but im wondering how to bring back the context tree from _app.tsx (for ui and auth providers)
@strato1986
@strato1986 Жыл бұрын
@@jeremytenjo great! Thank you very much for taking the time to answer
@jbjiostore626
@jbjiostore626 Жыл бұрын
I am facing trouble when using redux with next js app directory
@RandomMcLain
@RandomMcLain Жыл бұрын
How is the Loading component being used while fetching? NextJs picked it up automatically?
@kakun7238
@kakun7238 Жыл бұрын
yes
@ayoubahabchane
@ayoubahabchane Жыл бұрын
"loading" is a special file name that NextJs recognizes. If you supply nextJs with a file named "loading" inside a certain folder/segment, NextJs will use that file/component as the loading placeholder for that particular segment.
@eyotajr
@eyotajr Жыл бұрын
generatestaticparams what happen if from the api the content has been updated ?
@neil_from_future
@neil_from_future Жыл бұрын
Anyone know how to use UI Components for app folder new version ?
@TrackingAcademy
@TrackingAcademy Жыл бұрын
Ou, great thing! I tried using the same files, and experimental_use is throwing an error as its not a function of react on movies/page.js
@amarkwong6221
@amarkwong6221 Жыл бұрын
Same issue, change the react version in package.json to "experimental", but still fail
@amarkwong6221
@amarkwong6221 Жыл бұрын
I think it is due to the fact I was using typescript and the @types/react is not exporting this hook.
@mistertemplate9196
@mistertemplate9196 Жыл бұрын
what about api folder? Will it be supported also in the future?
@neociber24
@neociber24 Жыл бұрын
It didn't go away, you can use it as always
@khashe
@khashe Жыл бұрын
Will be supported in the future when they find a good solution for it they said.
@joaobibiano
@joaobibiano Жыл бұрын
Why the server was hitted so many times during the build ? Is this a bug?
@samselikoff
@samselikoff Жыл бұрын
This was due to me using an early version of Next 13 when coding the demo
@AuxiliaryOfficial
@AuxiliaryOfficial Жыл бұрын
i think i still like the old way
@uziboozy4540
@uziboozy4540 Жыл бұрын
Mom: we have Remix at home Remix at home: Next 13
@raajnadar
@raajnadar Жыл бұрын
App layout is stable in Next Js 13.4
@mdmathewdc
@mdmathewdc Жыл бұрын
I think this video is a bit outdated, we can simply use await inside a Server component, use hook is only required in Client components.
@mayank1513
@mayank1513 Жыл бұрын
Hey hi. What shortcuts u used for changing the throttling
@samselikoff
@samselikoff Жыл бұрын
Sorry what do you mean by throttling?
@mayank1513
@mayank1513 Жыл бұрын
@@samselikoff Network speed throttling/reducing
@samselikoff
@samselikoff Жыл бұрын
@@mayank1513 Ah!  + Shift + P to bring up the command palette, then "Go online", "Enable fast 3G throttling", and "Enable slow 3G throttling".
@ThugLifeModafocah
@ThugLifeModafocah Жыл бұрын
I'm here for the third time watching this. Everytime I had different feelings about it. First I was amazed, then I got worried, now I'm not so sure. Like, it was your responsibility to know how/when/where in the flow you should call a loader, now it is like magic... It can just bind you too much to the tool making you not much interchangeable to others tools and the market. I don't know, maybe I'm talking 🐄💩 but as awesome these changes are, they seems dangerous too.
@inasuma8180
@inasuma8180 Жыл бұрын
anyone else weirded out by how many rerenders happen on the client when navigating between pages. monka
@ahmedabbas3981
@ahmedabbas3981 Жыл бұрын
Pls share the git hub link of that code.
@majidtaei4251
@majidtaei4251 Жыл бұрын
Hello, can you update this tutorial...it has changed now
@othmaneaoubid6896
@othmaneaoubid6896 Жыл бұрын
useSelectedLayoutSegment not working :p
@laughAFrame
@laughAFrame Жыл бұрын
Found nextjs.13 very buggy with MUI cos it took to much time to compile things and is using to many modules on compilation.
@sK4hsCz
@sK4hsCz Жыл бұрын
Is someone else getting false on index route "/"?
@orangeclayproductions160
@orangeclayproductions160 Жыл бұрын
Noob here. Where are your .next and node_modules folders? My project looks nothing like this to start
@samselikoff
@samselikoff Жыл бұрын
I use the Files: Exclude setting in VSCode to ignore everything in my .gitignore file from the tree explorer.
@milantiwari12
@milantiwari12 Жыл бұрын
Is api folder gone for good?
@samselikoff
@samselikoff Жыл бұрын
Nope but it's not supported under /app yet. They're working on it but for now you can still use /pages/api.
@freespeech515
@freespeech515 Жыл бұрын
i am new. how do you get browser window in visual code
@lmlTimolml
@lmlTimolml Жыл бұрын
It's not really in VS-Code, its just sorted on left/right side on the monitor Ithink :)
CoPilot Review: My Thoughts After 6 Months
9:45
ThePrimeagen
Рет қаралды 536 М.
Smart Sigma Kid #funny #sigma #comedy
00:19
CRAZY GREAPA
Рет қаралды 10 МЛН
Каха ограбил банк
01:00
К-Media
Рет қаралды 3,2 МЛН
Why You Should Always Help Others ❤️
00:40
Alan Chikin Chow
Рет қаралды 112 МЛН
Build and Deploy a Full Stack Realtime Chat Messaging App with NextJS 13
8:28:22
10 common mistakes with the Next.js App Router
20:37
Vercel
Рет қаралды 182 М.
Next.js App Router: Routing, Data Fetching, Caching
14:32
Vercel
Рет қаралды 293 М.
Authoring Components with CVA + tailwindcss - Basic Buttons (1 / 4)
17:04
React Tips with Brooks Lybrand
Рет қаралды 2,2 М.
Theo Browne: Next.js is a backend framework
11:44
Vercel
Рет қаралды 150 М.
Next.js Server Actions...  5 awesome things you can do
7:51
Beyond Fireship
Рет қаралды 252 М.
NextJS 12.1 SSR & SSG: Everything you need to know
31:18
Jack Herrington
Рет қаралды 98 М.
Nested Layouts in NextJs 13 Using Route Groups
13:33
Hamed Bahram
Рет қаралды 12 М.
5 НЕЛЕГАЛЬНЫХ гаджетов, за которые вас посадят
0:59
Кибер Андерсон
Рет қаралды 1,6 МЛН
Девушка и AirPods Max 😳
0:59
ОТЛИЧНИКИ
Рет қаралды 16 М.
iPhone 12 socket cleaning #fixit
0:30
Tamar DB (mt)
Рет қаралды 40 МЛН
i love you subscriber ♥️ #iphone #iphonefold #shortvideo
0:14
Si pamerR
Рет қаралды 3,3 МЛН