Multi page vs Single Page Applications - Which One Is Right For You?!

  Рет қаралды 24,216

James Q Quick

James Q Quick

Күн бұрын

The Web Development ecosystem just keeps going in a circle. Up until the year or two, Single Page Applications (SPAs) were the default way to be build web apps, BUT now we are getting back to a heavier focus on leveraging the server over the browser when possible. In comes, Multi Page Applications (MPAs).
MPAs typically perform a full page refresh when navigating between pages, submitting forms, etc. Let's compare and contrast SPAs and MPAs and see which one makes the most sense in different scenarios.
Astro Couse - astrocourse.dev/
*DISCORD*
Join the Learn Build Teach Discord Server 💬 - / discord
*STAY IN TOUCH 👋*
Newsletter 🗞 - www.jamesqquic...
Follow me on Twitter 🐦 - / jamesqquick
Check out the Podcast - compressed.fm/
Courses - jamesqquick.co...
*QUESTIONS ABOUT MY SETUP*
Check out my Uses page for my VS Code setup, what recording equipment I use, etc. www.jamesqquic...

Пікірлер: 47
@christopheanfry2425
@christopheanfry2425 Жыл бұрын
Fantastic explanation!!! As you mentioned it’s clearly the time when island architecture is coming very strong as a developer and user experience, and I have to talk again about fresh which is also amazing as Astro does for static site, but with the ability of the route folder structure of nextjs + the island architecture for dynamic renders or state. Really hard to find our way in this “war” between ssr or csr, with the explosion of react it was the new way to go but it has shown some limits and we go back to ssr with amazing new frameworks like also qwick which is doing a great job with its signals system. That’s all amazing and so interesting and good to have a clear explanation as yours that comforts my thoughts and understandings 👍👍👍
@houseandhobby6971
@houseandhobby6971 5 ай бұрын
A key factor in the decision of whether to go single-page is whether it is a "site", or is it an "app". There is a difference. A site needs seo more than an app. An app can be supplemented with a multi-page site that features the app. Also, with spa permissions gateways can and should be done on the server side; session management enables this to be accomplished.
@faifad
@faifad 10 ай бұрын
I was having trouble getting out of the initial hype I felt when learning about SPA and actually make an objective decision on what I would do for my web app. This helped alot thank you!
@nested9301
@nested9301 10 ай бұрын
just combine both of them i notice that with E commerce apps some pages is constantly needs fresh data from the server so i mixed both multi page and single page
@millennialsdev
@millennialsdev Жыл бұрын
But in the Spa for example in Vue, we have the Lazy Loading Routes where there is the concept of "Chunk", the js is splitted
@motoboy6666
@motoboy6666 Жыл бұрын
Very clear and great visualisation, thanks dude! 🎉
@wolfson109
@wolfson109 11 ай бұрын
I like to write an MPA in Django and then use Vue for building interactivity inside a page if needed. Nice thing about Django is you can write a combination of templates and REST endpoints for the same set of models. So if I want to have faster initial load I can populate initial data on the server side and then have Vue call the API whenever the data needs to be updated.
@darana1142
@darana1142 5 ай бұрын
React does this too now with server components.
@21rogerwaters
@21rogerwaters Жыл бұрын
Great use of visual explanation. Make things very clear =D
@JamesQQuick
@JamesQQuick Жыл бұрын
Yay! So glad to hear that :)
@chaitu6081
@chaitu6081 Жыл бұрын
A very much needed intro. Resolved many confusions that I have. Thank you very much for the video.
@marvellousruni8475
@marvellousruni8475 Жыл бұрын
Thanks for this👍
@JamesQQuick
@JamesQQuick Жыл бұрын
Glad you enjoyed it!
@dimarak8866
@dimarak8866 2 ай бұрын
At the end you mentioned SEO as a reason to use MPA. SSR and SSG in Next.js f.ex. using Server Components allows also to add SEO tags to the Html BEFORE it is sent to the user. This can be done for each route so that for home or any other route the meta tags are already included because the server already handled the rendering of the html. Also authentication can be handled fully serverside. One can simply read out the cookies from the request and check if the user is authenticated on tje server BEFORE sending/responding with the respective content. So the benefits of MPAs can all be included in SPA architectures as well so there is almost NEVER really a good reason to use MPA over SPA.
@alexch5106
@alexch5106 Жыл бұрын
James. I usually do multi page applications. Using node and vue inside html without vue cli. It is fast and easy to update and add new features. what do you think?
@JeremiKress
@JeremiKress Жыл бұрын
Do you have a github repo ? I'm new to web dev and would love to see the work flow
@karlstenator
@karlstenator Жыл бұрын
Interested in the details if you'd care to share?
@JamesQQuick
@JamesQQuick Жыл бұрын
If that works for you, that's all that matters!
@cachipum
@cachipum 9 ай бұрын
sometimes you can't choose... for example deploying things like "decentralized" frontends, where it does not exist a SSR concept, so SPAs will continue being improved, in things like SEO, performance, and usability, I think on the future both MPAs and SPAs will be on par but highly specialized in solving their challenges
@b1mind
@b1mind Жыл бұрын
Transitional Apps with SvelteKit best of all worlds.
@levyroth
@levyroth Жыл бұрын
Very good video, well done!
@charlesscholton5252
@charlesscholton5252 5 ай бұрын
I am favor of generating Static Web pages and then using JS for data islands or SPA like features that dynamically Morph a static into a Spa. So in the case if feedback from, the submission is posted without page reload and the main content area changes state without leaving page. What is key is to regenerate statics only when the important data changes. I am in favor of having the server generate statics instead of having to recompile and upload a website.
@Brofix_
@Brofix_ Жыл бұрын
What about things like Phoenix LiveView or Laravel Livewire?
@Whatever0704
@Whatever0704 2 ай бұрын
If I need a website where there will be 10 tabs, each one of them would be a JS heavy page. Will only submit to the server if data needs to be saved. Can I somehow create a website that has 10 SPA? Like I will load tab1, but not the other tabs until the user choses another tab.
@MillerTimeVoiceOver
@MillerTimeVoiceOver 11 ай бұрын
Very helpful!!
@adrianasilveira4561
@adrianasilveira4561 10 ай бұрын
Great explanation. Thank you
@JamesQQuick
@JamesQQuick 10 ай бұрын
Glad it was helpful!
@ai10oz
@ai10oz 11 ай бұрын
I do not know whether I am making a sound decision about SPA or MPA here in this case where I have to build a portfolio website for an artist who wants to showcase art work. To the most part it is their artwork as pictures and description in texts which are visible to the visitors of the webpage. After seeing this explanation I believe it is MPA where I can use Django to build the webpage. But as an artist will there be an expectation for user experience? In that case then front end should be handled by dedicated JavaScript library like React or any other front end framework like Angular. I still do not know. I am just guessing. If someone can help me with this it will be adding value to my decision making process. Thanks for the video. It was a good learning experience.
@JamesQQuick
@JamesQQuick 11 ай бұрын
Honestly, both options would work for you. A lot of people are doing statically generated sites for your use case which is a great way to go. Those be done as MPAs or SPAs depending on the framework
@ai10oz
@ai10oz 11 ай бұрын
​​@@JamesQQuickHey. Thanks for the reply ❤.. But by statically generated sites did you mean like using Hugo or by using React with Next.js which supports SSG? I am new to this space and I am trying to learn full stack so....
@aymaneharmaz7126
@aymaneharmaz7126 5 ай бұрын
Can mpa be used with a micro-services on the backend ?
@kenneth.topp.
@kenneth.topp. Жыл бұрын
Javascript is so fad driven they had to rename the old way for people to think its the new thing to do.
@dripcaraybbx
@dripcaraybbx Жыл бұрын
I tried to explain "JAMStack" to a React dev and he was very confused
@JamesQQuick
@JamesQQuick Жыл бұрын
It changes so quickly lol
@nedaification
@nedaification Жыл бұрын
when to choose one over the other? It depends. Thank you for this very useful video.
@JamesQQuick
@JamesQQuick Жыл бұрын
It always depends lol
@fullstackmarketing247
@fullstackmarketing247 10 ай бұрын
Nice work
@rv8804
@rv8804 Жыл бұрын
This is why Rails is growing again. With Rails 7 and hotwire you have your multipage application that behaves like a single page application where it needs to with out all the extra BS.
@aaronholt6595
@aaronholt6595 11 ай бұрын
Really liked this and appreciated the content. Easy to follow so thanks for that. 👌
@JeremiKress
@JeremiKress Жыл бұрын
What tool are you using for the illustrations?
@recursion.
@recursion. Жыл бұрын
that's excalidraw
@JamesQQuick
@JamesQQuick Жыл бұрын
Yep!
@Anteater23
@Anteater23 Ай бұрын
6:25
@infamouse9149
@infamouse9149 Жыл бұрын
0:06 Are Creepy Dementia Joe style whispers into the microphone the new thing in KZbin videos? Let’s all hope not!
@JamesQQuick
@JamesQQuick Жыл бұрын
We'll see :)
@recursion.
@recursion. Жыл бұрын
@@JamesQQuick James you gotta wear mask next time just to piss this guy out😂😂
@themedleb
@themedleb 23 күн бұрын
@@recursion. lol.
Dynamic Websites vs Static Pages vs Single Page Apps (SPAs)
12:11
The day of the sea 😂 #shorts by Leisi Crazy
00:22
Leisi Crazy
Рет қаралды 1,5 МЛН
WORLD BEST MAGIC SECRETS
00:50
MasomkaMagic
Рет қаралды 52 МЛН
JavaScript Error Handling: 5 Things You Aren’t Thinking About!
14:42
You Suck At Accessibility (But You Don't Have To)
13:23
Web Dev Simplified
Рет қаралды 58 М.
One page vs Multipage website
8:31
Ley Design Studio
Рет қаралды 590
What is a single page application? SPA
8:00
Programming w/ Professor Sluiter
Рет қаралды 38 М.
SPAs vs MPAs/MVC - Are Single Page Apps always better?
15:59
Academind
Рет қаралды 132 М.
10 Rendering Patterns for Web Apps
6:55
Beyond Fireship
Рет қаралды 335 М.
How to OVER Engineer a Website // What is a Tech Stack?
11:20
Fireship
Рет қаралды 2,4 МЛН
How principled coders outperform the competition
11:11
Coderized
Рет қаралды 1,7 МЛН
Difference between cookies, session and tokens
11:53
Valentin Despa
Рет қаралды 632 М.
Fix These 5 Things For Better Performance ("Quick" Reaction)
12:06
James Q Quick
Рет қаралды 1,8 М.