New blog post – Kitten Kawaii: porting a React library and Next.js web site to Kitten
Small Web is the exact opposite of the Big Web. But what does that mean in practice? I wanted to find out by porting Elizabet Oliveira’s lovely React Kawaii app to Kitten. How does Kitten hold up to the frameworks of trillion-dollar and hundred-billion-dollar corporations?
(Spoiler: pretty darn well, actually.)
https://ar.al/2024/08/19/kitten-kawaii-porting-a-react-library-and-next-js-web-site-to-kitten/
React + Next.js vs Kitten: developer experience, getting started.
It takes ~30 seconds to get the React + Next.js web site up and running… how long does it take for Kitten? You’ll find out in the next post…
Full blog post: https://ar.al/2024/08/19/kitten-kawaii-porting-a-react-library-and-next-js-web-site-to-kitten/
React + Next.js vs Kitten: developer experience, getting started (cont.)
So it takes ~30 seconds to get the React + Next.js web site up and running…
How long does it take for Kitten?
~3 seconds.
Full blog post: https://ar.al/2024/08/19/kitten-kawaii-porting-a-react-library-and-next-js-web-site-to-kitten/
React + Next.js vs Kitten: developer experience, getting started (cont.)
In fact, it’s even faster if you install Kitten first (the equivalent of installing Node.js first, basically).
Kitten is still up and running with the Kitten Kawaii web site in ~18 seconds.
So that thing about web frameworks and workflows being slow… that’s a Big Web thing.
Full blog post: https://ar.al/2024/08/19/kitten-kawaii-porting-a-react-library-and-next-js-web-site-to-kitten/
Development is one thing, what about deployment?
Soon, you’ll be able to deploy your Kitten apps to small-web.org using Domain¹.
Here’s a recording of me deploying Kitten Kawaii to kitten-kawaii.small-web.org using Domain.
Here, domain is registering the domain (subdomain but it’s on the Public Suffix List) and installing Kitten Kawaii on a pre-warmed VPS server.
Full blog post: https://ar.al/2024/08/19/kitten-kawaii-porting-a-react-library-and-next-js-web-site-to-kitten/
Of course it’s not just quantitative differences but qualitative ones too…
Since all our time isn’t spent trying to create planet-scale factory farms for human beings (which are hard to do and involve lots of complexity), we can concentrate on nice things like maintaining state in the URL… like Kitten Kawaii does.
URL-based state: https://ar.al/2024/08/19/kitten-kawaii-porting-a-react-library-and-next-js-web-site-to-kitten/#url-based-state
Full blog post: https://ar.al/2024/08/19/kitten-kawaii-porting-a-react-library-and-next-js-web-site-to-kitten/
View source: https://codeberg.org/aral/kitten-kawaii
And just to underscore how simple Kitten is, here’s a demo of creating a new Kitten project that displays the character you’ve configured using Kitten Kawaii.
There’s a lot more in the blog post (this whole thing just ballooned up from what I thought would be a nice weekend project) but I hope the highlights/videos give you some idea of how web development can be if our goal isn’t to exploit and extract from people to become billionaires.
PS. I forgot to mention: use the back, forward, and refresh buttons on the browser. It should all work as expected. Because this is a *web* app, after all.