What's in the Box? CodyDe.io Edition
Written by: Cody
0 reactions 2023-01-17
Currently im running the following configuration…
- Swyxkit, a customized version of Sveltekit
- This configuration includes a number of customizations, but one of the major standouts is using GitHub as a CMS for the site
- Hosting the stack in Netlify
Details are below!
I’ve had a few different blog configurations now. From Wordpress, through Jekyll, through Hugo. Hosted vs statically generated. I took a LONG break from blogging while the whole kids and family and work and all the things happened. When I first started thinking about it, I wanted to do something a bit different overall. In my last post I talked about Building Your Own Corner of the Internet and how I wanted this to come together.
Since it’s VERY different from prevous setups, I thought it wuld be a good idea to throw a few notes together about why its setup how it is. This is less of a story post, and more of a “Here’s what it is and why” as a list.
I’m using Swyxkit which is a customization on top of Sveltekit. I wanted to explore something beyond my typical React approach, and Svelte is getting a ton of tractiion in the community., with developers giving it significant praise (second highest in the Stackoverflow developer survey in 2022). It’s learning curve isn’t too steep, and performance has been a pretty incredible increase.
The theme uses TailwindCSS which I know is a bit of a controversial topic; but im a big fan. I tend to use it in most of my projects now as it just speeds up development a ton.
Swyxkit adds a lot of useful components, one of the more interesting is the idea of using GitHub as a CMS. Markdown was fine on the previous site, but it never really “clicked” with me, and I wanted to way to author from any device. Using GitHub issues works pretty well for this.
I open an issue, add some specific Frontmatter, and when the blog post is ready I toss a “Published” Label on it - and we’re good to go. I’m going to expand the site out to hold a few different topics, and my plan is to use this same label system to filter based on that. I’ve got a few topics I want to write about - Home Automation, Code Snippets, and BBQ (one of these is not like the other…).
Swyx has done a ton of great groundwork here around integrating GitHub comments into the comments the blog, as well as pulling in reactions and such into the articles. Bringing images in is as easy as pasting into the GitHub issue and letting it upload.
I’ve been a huge fan of Netlify for quite sometime. I’ve ran several workshops both internally and externally at LaunchDarkly using it, and have been thrilled with the performance. Generous free tier makes this easy to kick into gear. I ran into zero friction getting it going right out of my GitHub repo, and builds are automatic whenever I commit a change (pretty much tablestakes these days).
I like having a site that doesn’t just function as my corner of the internet, but also gives me a place I can learn new technologies within. This gives me the opportunity to get a bit closer to Svelte, which is something I want to dig into more in the next year, as well as make my content creation flow fairly lightweight. This post wasn’t meant to be a technical deep dive, instead, more of a high-level of how this is running.