You're overestimating Netlify's build tooling. It literally just spins up a virtual machine with Node on it, clones your repo, and does an `npm install && npm build`. When that finishes it copies the output directory to a server to host. Moving to a different host is a case of finding something that will let you do the `npm install && npm build` bit, which practically every modern hosting company does these days. Netlify's automated builds aren't even close to the complexity of running a CI process.
If you wanted to you could run the build process locally and commit the output HTML and CSS files to the repo, and the build process wouldn't even be necessary. You'd just need to copy the output files to a server using a git commit hook.
Which brings us back to my original question: Why????? Why bother doing all that and relying on third party tooling, regardless of how simple it is to run a command? If this is what I wanted, I could write a 5 line shell script on a raspberry pi which can do just that.
I DON'T want to do either of that. Add a file, push it and know everything has worked.
The reason I have things set up to deploy from github to Netlify is mainly because I'm not the only contributor to things I work on. As soon as you work in a team it's far simpler to have a central service that people push to doing the builds, especially if you don't want contributors to have access to the host server.
I'm not questioning the scenario where you have multiple contributors. This is one of the major reasons why the concept of ci/cd exists.
The topic of the thread is __specifically__ personal blogs/pages and my point is as strong as ever: having to deal with builds, cis, for your personal page is pure bs.
Netlify simply adds an abstraction layer over a task which I don't want to be performed __AT_ALL__. I don't care if I'm doing it myself or someone else is on a server somewhere on my behalf. It is utterly stupid to have all that to serve a static file.
”Caddy is both a flexible, efficient static file server and a powerful, scalable reverse proxy. Use it to serve your static site with compression, template evaluation, Markdown rendering, and more.”
So write HTML and push that directly to your webserver.. what do you want from the world haha
Forgive me for suggesting the first thing that popped into mind, could you run the generator script locally and also push the /public dir which your server then serves directly?
> So write HTML and push that directly to your webserver.
A much better option. Still have to deal with the de-facto boilerplate of every html file: head, body, header, footer. Which is why I built something that does it in the browser for me.
> Forgive me for suggesting the first thing that popped into mind, could you run the generator script locally and also push the /public dir which your server then serves directly?
Same as CI - adds an extra step to the process. But as I said, services like Netlify come and go and the news might slip by you and catch you off guard. If I had to go down that road, I have ~10 raspberry pi's 6 of which are currently booted up. A 5 line shell script could easily do that. But again - I see no point in doing it if there's no need for it.
> A much better option. Still have to deal with the de-facto boilerplate of every html file: head, body, header, footer. Which is why I built something that does it in the browser for me.
I find it fascinating that you'd go to all the trouble to build what essentially breaks down to a custom static site generator but you then balk at using an off the shelf one with a build script.
The difference is that ci-type of solutions might end up requiring maintenance for a million and one reasons. This won't and building it took me roughly the same amount of time it would take me to navigate through a ci-solution and test that I've set it up correctly(3 hours in total).
If you wanted to you could run the build process locally and commit the output HTML and CSS files to the repo, and the build process wouldn't even be necessary. You'd just need to copy the output files to a server using a git commit hook.