Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Choosing Vue.js
Search
Rahul Kadyan
September 15, 2017
Programming
110
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Choosing Vue.js
Why would you choose Vue?
Rahul Kadyan
September 15, 2017
More Decks by Rahul Kadyan
See All by Rahul Kadyan
Inversion of Control in a Vue Application
znck
0
430
New Vue. New Compiler. Let's Unpack
znck
4
2.6k
Head first into composition API
znck
0
210
Future of Vue – JSFoo VueDay 2019
znck
0
600
React to Vue: why and how?
znck
0
130
Collocation in Modern Web
znck
0
120
Other Decks in Programming
See All in Programming
Optunaを作ったときにやりたかったこと、その後 (2026/10/16, Optuna Meetup #3)
iwiwi
4
1.4k
느린 네트워크와 저사양 디바이스 사용자를 위한 웹뷰 로딩 시간 개선기
kmkim
1
180
小さなアプリを作って公開するまで
onozaty
0
110
現場と育てるRailsモデリング 〜Spreadsheetから始めたモデル設計〜
siroemk
2
1.2k
TanStack Vue Query と Pinia Colada から学ぶ非同期状態の型設計
aoshi
0
610
AWS CDKを理解するために公式の定義を深掘って解説してみる / Understanding AWS CDK by Digging into Its Official Definition
akihisaikeda
1
190
React Native에 현대적인 빌드 도구 더하기: Rollipop 구현기
leegeunhyeok
0
180
Spec-driven Development with AI
simas
PRO
0
2.2k
自作Discord音声botをLambda MicroVMsに移行した話 / Migrating My Discord Voice Bot to Lambda MicroVMs
akihisaikeda
1
260
graphql-ruby を Spinel で速くしようとした話
mtsmfm
0
140
JIS keyboard support in Omarchy
lef237
0
180
Apple Intelligenceとオンデバイス時代の到来
yahir0
0
200
Featured
See All Featured
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
1
600
Imperfection Machines: The Place of Print at Facebook
scottboms
270
14k
Leo the Paperboy
mayatellez
10
2.4k
How STYLIGHT went responsive
nonsquared
100
6.3k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
28
3.7k
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
240
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
23k
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
2
970
What does AI have to do with Human Rights?
axbom
PRO
1
2.5k
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.8k
AI Search: Where Are We & What Can We Do About It?
aleyda
0
8.2k
Site-Speed That Sticks
csswizardry
13
1.6k
Transcript
65K+ Stars Top 10 All Time
250K+ Weekly Active Users Chrome DevTools Extension
None
None
Rahul Kadyan Vue.js Core Contributor Software Engineer - Myntra
Choosing xxx Choosing Vue
Team Choosing for your team 1. Simplicity 2. Resources 3.
Performance
It’s simple
None
krausest/js-framework-benchmark 0.9 0.975 1.05 1.125 1.2 Slowdown 1.04 1.19 1.15
Angular React Vue
Tech Choosing for features 1. Declarative Rendering 2. Composition 3.
Stylesheets or CSS
None
{ template: `<App> <Sidebar /> <Content> <p>Hello World </p> </Content>
</App>` } HTML { render () { return ( <App> <Sidebar /> <Content> <p>Hello World </p> </Content> </App> ) } } JSX { render (h) { return h('App', [ h('Sidebar'), h('Content', [ h( 'p', 'Hello World’ ) ]) ]) } } JS
None
<app> <app-header></app-header> <app-footer></app-footer> </app> <div class="container"> <header> <slot name="header"></slot> </header>
<main> <slot></slot> </main> <footer> <slot name="footer"></slot> </footer> </div> <div class="parent"> <child> <template scope="props"> <span>hello from parent</span> <span>{{ props.text }}</span> </template> </child> </div>
None
<child message=“hello!"></child> <child :my-message="parentMsg"></child> <input @keyup.enter="submit">
None
None
Tech Choosing for large applications 1. Client Side Routing 2.
Application State 3. Optimisation Efforts
None
None
None
Tech Choosing for emerging markets 1. Server Side Rendering
None
DX Choosing for developer experience 1. Collocation 2. Editor Support
3. Build & Test Tools 4. Browser DevTools
Templates Scripts Styles
Template Script Style
posva/vim-vue vuejs/vetur vuejs/vue-syntax-highlight
None
vue-test-utils In pre-release stage.
None
None
– Jacob Schatz, Lead Frontend Developer, GitLab “We chose it
(vue) because it was more simple than everything out at there. It makes it easy to grasp the concepts and it was also easy to make a large app.”
@znck0