/blog-1

Copy of Yuwang Cai's blog.

Primary LanguageTypeScript

Banner

✨ Introduction

This repository contains source code and posts of my blog.

Some features include:

  • GitHub Issues as CMS
  • SEO best practices
  • Dark mode
  • Codeblock syntax highlighting
  • Smaller CSS & JS bundle size

🗃️ GitHub Issues as CMS

It used to be a common practice to include the metadata of a blog post in its frontmatter, such as:

  • title
  • description
  • created time
  • updated time
  • tags
  • ...

However, as the number of posts increases, it becomes tedious and tiresome to remember all of the required properties. And sometimes you may have the nagging feeling that some properties, such as updated time, should have been managed automatically.

There are numerous brilliant CMS on the market to address this issue. (WordPress, Strapi, Payload, ...) However, they either require a server or charge a fee. Besides, rather than having a separate content authoring system, I prefer to keep source code and blog posts colocated.

In this regard, GitHub Issues is unquestionably an excellent solution, as almost every field in the frontmatter can be automatically managed.

GitHub Issue Blog Post
number id
title title
body description
first comment content
other comments comments
open draft
closed published
created at created at
closed at published at
updated at updated at
pin featured
url origin
labels tags

🧰 Built with

Astro Solid TypeScript Tailwind CSS pnpm Vite EditorConfig ESLint Prettier