genox.ch

19.7.2018
Filed under [object Object]
f8f025c7-3d9e-4b03-b3d6-2d725d81f0ae

Back to basics, in 2018

This blog just matured into the age of dockerized deployments, headless CMS and decentralised services. This is the new stack:

Client

  • NextJS server side rendered React app, hydrated with content from the sanity.io API
  • Served by NodeJS Express
  • Hosted as a Docker container on Zeit's Now (including DNS) (15$/month)
  • Emails forwarded via mailgun (0$)
  • Both the NextJS Frontend and Backend parts are written in TypeScript

Content

  • Sanity.io's React app
  • Deployed on sanity.studio (0$)

Serverless Functions

  • webstack.io (0$)

As opposed to the previous solution (using a self-hosted WordPress on cyon.ch), this has multiple advantages:

  • No longer worrying about anything related to WordPress
  • I can do whatever the hell I want with it and can rely on a state of the art frontend framework
  • Easy staging with Now deployments

The disadvantages

Well, it's a far more complex setup than traditional server side rendered approaches, like a classic LAMP stack. The whole thing depends on 3 different cloud services. I do realise that I might aswell add all of this in plain text file and get about the same UX. ;) But that's not the point!

"But .. back to basics? Isn't that at least a small business or startup setup for a blog nobody reads? U MAD?!"

Let me explain: I started off writing my own one-liner in PHP, I wrote my own little blog app, I used about 4 different PHP blog platforms since 2001 or two .. the more I was depending on third party applications, the less fun it was to fiddle around with things on a basic level.

But for me .. that's kinda what I want to do in the first place. Just give me enough abstraction and a few tools so I can put together my own damn thaang and I'm a happy camper.

2