Duct Tape and Spit
July 2, 2022
For those interested¹, I thought I'd detail a bit about this site's build process. My previous jobs only required writing some basic scripts. One thing I've never had to (or tried to) do is render the frontend side of a webpage from my own code, so I gave it a shot.
I've suspected for a while—and confirmed through this process—that frontend web development these days is less coding from scratch and more configuring existing packages to your specific needs. Of course there are people toiling over extremely complex engineering tasks out there, but if your job is to get a basic content mill up-and-running and looking nice, you're mostly consuming someone else's hard work, configuring it to your coworkers' needs. While I found the "looking nice" aspect to be the hardest bit, usually that's someone else's job if you're writing the code. There are certainly harder ways to make less money.
Here's what I used: I'm not skilled enough to make a CMS from scratch, so I found Strapi, a headless, open-sourced CMS that has a decent UI and outputs API endpoints for the frontend to consume. I'm using Next.js for the frontend² purely because I think it'll help my career in the long run. Plus, it was surprisingly easy to make the Verbasizer exactly to my liking in this framework, but more about that in another post. For the styles, I'm using .scss
files in conjunction with the React components, and unless I've totally missed some big development, CSS as a technology hasn't been updated all that much in fifteen years, which is excellent news for the Tumblr customizers out there. It has been my least favorite thing about this whole process.
I'm using Heroku to host the API and Vercel to host the frontend because they were both free as long as I don't use too many features or traffic levels on this site don't exceed a certain threshold. I can't imagine they will. One shortcoming is that Heroku won't host images, so I'll have to find another solution in the future.
I've already written more than I wanted on this topic, so we'll wrap it up here. If this stack sounds really bad to professionals out there, it's a good thing I don't have your job.
Now Listening:
Camembert Electrique by GongRecently Watched:
- The Sacrifice (1986), dir. Andrei Tarkovsky
¹ I suppose I never have to preface anything with "For those interested" given the very nature of this site. No one has to read it! Ever!
² ...and I'm pretty sure I'm using it wrong because I'm drowning in components. Was I supposed to nest more things? Make them classes? No clue!