At early November 2024, I made a choice to do some change on my blog. First, I dont host it on Github Pages anymore. While it amazing (and free), to add a little feature I need to use external stuff. Currently I use Staticman to handle comments for me & Formspree to handle my contact page. Both of them are good, not too hard to setup, open source, & has free tier with an okay limit.
Staticman is a self hosted software at first. It need a Nodejs server that are accessible. Now it can be used as serverless function. Mine is hosted on Netlify. Using ready-to-deploy template by the creator of Staticman itself. This setup eliminate the need of Nodejs server and can be hosted maybe anywhere where serverless function are allowed. For email form handling, I plan to move away from Formspree. This eliminate the need of additional data sent to outside service.
Based on my need, I choose to move this blog to Cloudflare Pages. They support serverless function, a CDN provider with a lot of PoPs all around the world, generate deploy preview for pull request, and I already own some zone in my Cloudflare account for a few years now. They still running good.
Another change is to not using Jekyll anymore and move to Eleventy. I have been followed Eleventy since its pre release (0.xxx) version. Eleventy are amazing. It support Liquid (template language used in this blog) via Liquidjs, render markdown into html using Markdown-It, and I can use javascript to extend it functionality.
Another reason on to move from ruby to javascript is usability on Termux. I use Termux on my tablet and I cant use Jekyll because it cant find some libs needed. I tested Eleventy and it run, with a little hack (because sharp). I need to run any npm
command with --os=linux
switch. A little hacky but at least it works.
Only thing left now is to replicate my Jekyll setup on Eleventy. Some are already exist as plugins. Other that doesnt, maybe I can write some stuff to replicate it. Codes is always available at github repo. Bye
Komentar