JAMming Out With Static Site Generators
Web Development Made Awesome
Who are we
- Maintainers of vtcodecamp.org
- Chose SSG and static hosting.
- Sharing what we learned
How should you build a website in 2019?
Three General Approaches
- Server Side Rendering (SSR)
- Client Side Rendering (CSR)
- ex. Singe Page Application (SPA)
- Static Site Generation (SSG)
Server Side Rendering - Advantages
- Popular choice
- Convenient Content Management System
- Lots of features out of the box
- Requires web server / hosting
Server Side Rendering - Challenges
- Server response time
- Security - Injection
- Infrastructure Cost
- SSR more vulnerable to DDoS Attacks
Client Side Rendering - Advantages
- Distributes server load across multiple clients
- Minimize request size for updates
- Avoid re-rendering layout / shared assets
- Super fast re-templating on data change
Client Side Rendering - Challenges
- Mobile CPUs slow - js budget 170k
- Search Engine Optimization (SEO)
- Unknown Environment
So what about Static Site Generators (SSG)?
Lunch Time
- SSR: Restaurant
- CSR: Meal delivery service
- SSG: Weekly meal prep
Static Site Generation - Advantages
- Security
- Performance
- Compile Time > Run Time
- Winterization
- Where work happens
There is probably a Static Site Generator written in your favorite language
- Ruby
- Python
- PHP
- C#/.NET
- Java
- Go
- Rust
What about JavaScript?
- Vanilla JS
- 11ty
- Hexo
- Cogear.js
- Metalsmith
- Harp
- React
- Vue
Demo Time
- Install Eleventy
- Build Locally
- Layout Page
- Deploy Site
- Make Changes
Data Driven Templates
Comparison of Approaches


So what is JAM Stack?
#Hype
- JAMstack conf
- Smashing magazine
- Gatsby
- All the buzzwords!