70 %

Short Stack JAMStack

We have a lot of really nice tools in our toolbelts these days. From libraries like React, to tools like Gatsby or Next, to Create React App, and the wider ecosystems of similar tools like Gridsome. There's been an interesting inflection lately in the trend to ES Modules and smaller tooling, so I thought I'd revisit what a short stack looks like. Just like my pancakes, I don't want to give up too much of my current flavor just to get a smaller bundle.

How low can we go?

View libraries

Preact is the library that comes to mind immediately. I've known about and sometimes worked with it over the last few years. It's similarity to React means that I get to transfer over a lot of my knowledge and with preact-compat (even though it adds a few more kb) you can get access to the React ecosystem too.

One of the big benefits of going with Preact is that the ecosystem was built from the start as a performance and bundle sized focused ecosystem. So if you opt-out of preact-compat and the React ecosystem, an equivalent application often comes out much smaller.

Another view library that is important to note is Svelte, which aims to compile away most JavaScript and uses templates. Svelte apps are said to be smaller than other similar apps but it's still very early for the Svelte ecosystem, while the Preact ecosystem has had a few years to mature.

Choice: Preact: 3kb

Routers

wouter

Styling

goober vs emotion

Data management

urql vs apollo

Bundlers

Snowpack!