Jaya Krishna Namburu
@askjkrishna
Past and Present
Motivation for the WEB !!
JavaScript
CSS
HTML
Progressive Enhancement is Dead !!
Graceful Degradation
Present Day !!
JavaScript
CSS-In-JS
Polyfills
index.html
(Just for landing on the page)
Templating Engines / JSX
@addyosmani
&
Initial bundle size*
Client - Request - Server - Resource - Client - Unzip - Execute - Paint
Initial load should be < 400 KB
Dynamic loading, Lazy load parts of your application when needed.
Route level or component level code-splitting
G-Zip or brotli compression.
Differential Bundling
Send only the JS that is being used for the initial paint of the web-page.
Ok, now show me how does that work !!
Libraryβ
Bundlerβ
Transpiler / Compilerβ
Plugins for Bundlerβ
Plugins for Transpilerβ
And one plugin for React with JSXβ
CSS-In Js-Libraryβ
Typescript /Flow for static type checkingβ
Ployfillsβ
Code Formattersβ
Linterβ
Ok!! State Management. (Adds Redux / ngRX / Vuex)β
Ok!! Everyone is using service worker, let me add
Rome (experimental)