Making Miniblog

November 8, 2024

Introduction

Hi there! My name is Nicholas Ly, and I’m a fullstack web developer. I started a blog at nicholasly.com, and actively contribute to and build open source projects outside of my day job.

I’ve visited my fair share of blogs and have tried a variety of templates. Over time, I’ve developed some pretty clear preferences and opinions, which I bring to you through Miniblog.

Miniblog is written in Astro, a framework which specializes in static content such as blogs. Both aethetically and functionally, it is designed to be extremely minimal. Enough to get the job done for most people, and canvas for others.

To be frank, not many people care for your blog. It doesn’t need a lot of bells and whistles. Everytime I’ve ever visited a blog, it was to learn something. I don’t think anything should distract from that.

Opinionated, but not restrictive.

My favorite blogs are the simple ones. The blogs that have zero distraction, and just have the information I want to read and the data I need. You don’t need a lot to accomplish this. With that said, let’s go over some of the decisions I’ve made for this template.

It’s true that this template could literally be done with pure HTML, but Astro is a great framework with so many quality-of-life features built-in that makes building a blog dead simple.

I could have very much stuck with vanilla CSS, but I prefer to use Tailwind CSS. It’s a pleasure to work with, extremely lightweight, and its theming system is fantastic.

You don’t need ESLint for a small application like a blog. ESLint is a fantastic tool, especially for larger projects with equally large teams, but it simply isn’t necessary for a blog in which you’re most likely the only developer. Save yourself the headache.

I do have Prettier, which is arguably just as unnecessary as ESLint if you’re the only contributor, but since this template is open source, a code formatter is pretty useful.

You don’t need analytics. Again, analytic tools like Umami are fantastic, but aren’t really necessary for a simple blog. You probably won’t get that many visitors, and what significant value do you get from tracking them?

You don’t need a comments system. Out of the already few visitors of your blog, most of them won’t care to leave a comment. You also would need to be extremely cautious of spam and abuse.

You don’t need a CMS, unless you have a crazy amount of posts. And I’m talking like a crazy amount.

Other than that, everything is purposely kept simple on purpose. You don’t need a lot of development experience to get started with this template. And if you want to change something, please do.

Final note

Feel free to disagree with my opinions. It’s open source for a reason—do whatever you want with it.