Dynamic from Static
with Smart Deployment
mayashavin
_
me
mayashavin
https://res
.
cloudinary
.com/
maya
shavin
/
image
/upload/v1576150904/
senior_FED
.jpg
extra
_
: {
core_team_
StorefrontUI
_,
organizer_
VueJSIsrael
_
,
blogger_,
bookworm_
📖🐛_
}
mayashavin
stack
=
Static
sites with
dynamic
functionalities
mayashavin
stack
_
J
avaScript
A
PI
M
arkup
web servers
backend
databases
run-time
frontend
reusable APIs
serverless functions
build-time
page generating
backend
web servers
databases
run-time
template generating
file-driven
data-driven
mayashavin
Static site
generator
(SSG)
template
content
SSG
HTMLs
served as
CDN
mayashavin
Static site
generator
(SSG)
mayashavin
The
performance
of static
mayashavin
>
perf
.
measure
(
)
⏩
FAST
First Paint, First Contentful Paint & Time to Interactive
🔐
HIGHER
Security
🚀
CHEAPER, EASIER
Scaling
⏩
FAST
Time to First Byte
deployed =
true
mayashavin
cloudybadge
$
register
customize badge
vote
mayashavin
cloudybadge
$
ls
tools
✅ SSG
✅ External APIs
✅ Static hosting
✅ Headless CMS
mayashavin
>
console.
log
(Static ===
Dynamic)
CloudyBadge
Pre-render pages
Deploy Hooks
(HTTP POST request)
Build trigger
Deploy
mayashavin
_$
hooks
New attendee
Hook trigger by HTTP request
New build
Delay
Deployment
mayashavin
_$
build
fastest
static site generator for Vue.js
@tommyvedvik
mayashavin
_$
build
👉 Render HTMLs
👉 Create pages & templates
👉 Create GraphQL Schema
👉 Execute GraphQL & write page data
👉 Processing files
👉 Processing images
Source
data during build
Rebuild
EVERY
file
Process
BIG images in build
Can build
ONLY
new file(s)
Can cache
unchanged files
mayashavin
Real time
Real data (being built)
_UX
implication
VS
mayashavin
>
build.
improve
()
FASTER
machines
FASTER
JavaScript
FASTER
bundle tool (Webpack)
🤷♀️
FASTER
SMARTER
mayashavin
>
build.
improve
()
LESS
data source loading time
Only fetch
NEW
data entry
Incremental Builds
Provide
new data entry info on build trigger
mayashavin
>
build.
improve
()
LESS
build time
Only re-generate
static HTMLs for data
Incremental Builds
NO
code change
mayashavin
>
build.
improve
()
Pre-build
static pages
Hybrid approach ( SSR + SSG)
Load-in-demand
dynamic pages
Display SSR version
of page (ghost)while waiting for rebuilding
mayashavin
>
build.
improve
()
No process time
for images/video
Outsourcing images & videos
Optimize
image delivery
Save
hosting storage
mayashavin
>
build.
improve
()
Remove legacy code
Help bundling
faster
mayashavin
>
build.
improve
()
Progressive deployment
Deploy & update new content
instantly
and
silently
on client's side
mayashavin
>
build.
improve
()
Schedule deployment
Build job with
interval
(low peak time)
mayashavin
cloudybadge
$ tools.
improve
()
✅ SSG
✅ External APIs
✅ Static hosting
✅ Headless CMS
✅ Hybrid
mayashavin
>
console.
log
(summary)
💥
Static site is new dynamic
with proper architecture
💥 Build SMARTER means FASTER
💥 Select the right SSG solution (Hybrid or Static)
💥 Use proper CMS to allow incremental builds enabled
💥 Choose the right static site hosting platform
💥 Use
Cloudinary
!
mayashavin
_
THANK
YOU
_
@mayashavin
mayashavin.com
Made with Slides.com