I built the same app 10 times // Which JS Framework is best?

I built the same app 10 times // Which JS Framework is best?

I built a simple app with 10 different JavaScript frameworks… Learn the pros and cons of each JS framework before building your next app https://github.com/fireship-io/10-javascript-frameworks

#javascript #webdev #top10

šŸ”— Resources

Full Courses https://fireship.io/courses/
Performance Benchmarks https://github.com/krausest/js-framework-benchmark
Source code https://github.com/fireship-io/10-javascript-frameworks

šŸ“š Chapters

00:00 JavaScript Frameworks
00:53 1. Vanilla
04:21 2. React
07:48 3. Angular
10:15 4. Vue
12:18 5. Svelte
14:16 6. Lit
16:11 7. Stencil
17:18 8. Solid
18:35 9. Alpine
20:17 10. Mithril

šŸ¤“ Install the quiz app

iOS https://itunes.apple.com/us/app/fireship/id1462592372?mt=8
Android https://play.google.com/store/apps/details?id=io.fireship.quizapp

šŸ”„ Watch more with Fireship PRO

Upgrade to Fireship PRO at https://fireship.io/pro
Use code lORhwXd2 for 25% off your first payment.

šŸŽØ My Editor Settings

– Atom One Dark
– vscode-icons
– Fira Code Font

49 Comments

  1. fun 4 you on January 17, 2022 at 4:08 pm

    Angular is my favourite and i’m working on it



  2. mocfive on January 17, 2022 at 4:08 pm

    how do ppl remember all of these words and everything they do?



  3. Fairness on January 17, 2022 at 4:10 pm

    xd



  4. Matthew Hayden on January 17, 2022 at 4:11 pm

    Now do cycle.js



  5. finn2001 on January 17, 2022 at 4:14 pm

    I see jquery/js clear winner if task is simple. I dislike javascript anyway.



  6. Robinlhaw on January 17, 2022 at 4:15 pm

    Can you make a video about building the same app 10 times // which backend language/framework is the best? (Flask, Django, Express, Deno.js, PHP, Ruby on Rails, Rust, Golang, Java …) Would be amazing ā¤ļø



  7. Adam Hughes on January 17, 2022 at 4:16 pm

    I think I learned more about web dev in this video than any other single vid I’ve ever seen



  8. ashrude on January 17, 2022 at 4:16 pm

    The vanilla js app has an xss exploit



  9. Nelson Ricaurte on January 17, 2022 at 4:17 pm

    2:48 PLEASE, never use innerHTML, allows the client to modify the HTML of your project, so do not use it if you do not want the site / page in production to be "hacked"

    Also, remember that it doesn’t matter (almost) what JS framework you use, the matter, is that you do well what you want to do…



  10. Adam Siegwart on January 17, 2022 at 4:18 pm

    Building from scratch "vanilla" only ends up in becoming a framework if you’re either grossly misunderstanding the needs of the project or massively over-engineering. The whole point of doing everything from scratch is being lightweight and not hauling around mountains of bloat you don’t need. So if you were aiming for lightness over development time (the only reason you’d entertain vanilla, aside from simple incompetence) and then you end up adding mountains of bloat anyway, it just means you’re not doing your job effectively a software engineer or project manager.



  11. Bit Wise on January 17, 2022 at 4:19 pm

    Ionic



  12. Flow Code on January 17, 2022 at 4:21 pm

    react is the best



  13. Rafael Sauerbier Muhlbeier on January 17, 2022 at 4:24 pm

    Excellent explanation, but for me, it is necessary to put it in a lower speed to be able to assimilate all the information, the video seems to be accelerated.



  14. Terra Former on January 17, 2022 at 4:26 pm

    It’s such a tragedy that web development ended up as the aggregate of terrible design decisions made over the years that it is.



  15. Steven Barnes on January 17, 2022 at 4:26 pm

    I recommend holding Shift and then pressing the < key before watching this video.



  16. Lautaro Garcia on January 17, 2022 at 4:30 pm

    As an Angular developer I tried really hard to switch to react but find it frustrating every time. I come from an OOP background in java that’s why. I understand why pure js developers would prefer react.
    Also, there is a lot of job competition in react, whereas angular is not that common so thats an advantage if you are good at it.



  17. Urizen 317 on January 17, 2022 at 4:30 pm

    Vanilla for ever šŸ™‚



  18. Winken on January 17, 2022 at 4:32 pm

    Switched from React to Svelte after this video. Thank you šŸ‘



  19. MR. HK on January 17, 2022 at 4:33 pm

    Great



  20. Ī“lieř on January 17, 2022 at 4:33 pm

    jquery has left the chat :/



  21. stephan on January 17, 2022 at 4:38 pm

    Svelte wins. No comments



  22. Barnard Rabenold on January 17, 2022 at 4:38 pm

    I had no idea that you could assign and return html syntax in JavaScript until this video!



  23. Altered Demon on January 17, 2022 at 4:38 pm

    Btw you can use JSX with mithril, and you felt it was annoying mainly because of this.



  24. eagle on January 17, 2022 at 4:43 pm

    Good shit man.



  25. Anita SV on January 17, 2022 at 4:43 pm

    Can you try elm, thatā€™s my favourite:)



  26. Alex anon on January 17, 2022 at 4:45 pm

    all of these javascript "frameworks" are open shlt software.



  27. SKB ___ on January 17, 2022 at 4:49 pm

    This is awesome. Thank you



  28. Makaron Tushniak on January 17, 2022 at 4:52 pm

    When you are C++ dev by edycation and look at JS insanity .. Why we can have normal language for web development?



  29. Daniel Mejia on January 17, 2022 at 4:54 pm

    Angular rocks!



  30. Zen 101 on January 17, 2022 at 5:00 pm

    Like
    Thanks for putting the huge amount of time and effort in making this video.



  31. ddabrahim on January 17, 2022 at 5:00 pm

    I was watching only till React. So you went from a few lines of easy to understand, straight forward vanilla JS code to a bunch of files and hundreds of lines of React specific code to do the same. LOL This is why I hate all JS frameworks. Why all JS frameworks has to be sooooo complicated and bloated?



  32. Yash Bansal on January 17, 2022 at 5:01 pm

    React is a framework?



  33. Iwan Chandra on January 17, 2022 at 5:02 pm

    i end up using vue like how alpine is introduced here



  34. Pier Bover on January 17, 2022 at 5:02 pm

    Sorry but you completely missed the point of Mithril. First, you can totally use JSX with it but, most importantly, that there is no reactivity and all state management is done with vanilla code. It’s a similar idea to Imba. Mithril also includes a router and an http client on its 10kB, unlike the other frameworks.



  35. Koti Mara on January 17, 2022 at 5:03 pm

    I use react and svelte, both are amazing but svelte is easier I guess.



  36. Fang on January 17, 2022 at 5:03 pm

    This video may just had turn me off on trying js based framework from a Laravel framework developer POV.



  37. D ahn on January 17, 2022 at 5:03 pm

    .



  38. Mehran Naghizadeh on January 17, 2022 at 5:04 pm

    You missed Ember. That’s a pitty.



  39. Gregor Gonzalez on January 17, 2022 at 5:05 pm

    Finally! I needed this so much. This comparison helps a lot to relate to those js frameworks.



  40. MierenMans on January 17, 2022 at 5:05 pm

    Tbh I dislike all of them. Just that I dislike vue and react the least



  41. Guy Unknown on January 17, 2022 at 5:06 pm

    Java : "Runs on 3 Billion Devices…"
    JavaScript : "Will create 3 Billion frameworks…"



  42. Emilia C on January 17, 2022 at 5:06 pm

    In Lit you can do two way data binding with with the directive Live()



  43. Տį—©Ī·Jį—©V on January 17, 2022 at 5:06 pm

    I will only like comments which praise Angular šŸ˜„. Angular is the best, nothing beats it for scalable and clean and modular application.



  44. Tariq RIAHI on January 17, 2022 at 5:06 pm

    Vanilla’s my blood



  45. Yongze Yao on January 17, 2022 at 5:06 pm

    The only thing that annoys me about React is fking Redux. Too much boilerplate code.



  46. Toni Tabak on January 17, 2022 at 5:07 pm

    Svelte



  47. DoItWithGOD on January 17, 2022 at 5:07 pm

    So React?



  48. Pedro Casotti on January 17, 2022 at 5:07 pm

    js is shit, frameworks can make it better, but never good



  49. Sebastian Sipos on January 17, 2022 at 5:08 pm

    mithril m looks like vue’s h and they both look like html generators in FRP languages (haskell, elm, etc)