Hello! My Blog Website

Why did I decide to develop my own blog website from scratch?

9 min read
-- views

So excited! The idea of developing my own blog system has been swirling in my mind for quite a few years, and it's finally launched today!

Why not use existing blog systems on the market?

As a frontend developer, not having a decent personal website is really embarrassing.

When I first entered the industry, independently developing a somewhat complex website was still challenging, but using existing open-source projects from the community to deploy your own website was basically effortless. For example: • Long-established options that have been around for over a decade: Hexo, Hugo, Jekyll, very lightweight with rich plugins and themes. I've seen many developers' personal websites based on these, and they're absolutely beautiful! • With the rise of Vue and React frameworks, VuePress and Docusaurus used in official documentation have become favorites among many developers, as well as mintlify which has gained favor from Anthropic - all excellent documentation site generators. • Now that Next.js is becoming increasingly popular, the template ecosystem is quite flourishing, like Next.js Portfolio with Blog. Combined with Vercel's powerful one-click deployment capability, you can basically have your blog system online in less than half a day! • Of course, there are also note management products that require no deployment and can be used directly, which have gained many people's love and pursuit, such as Notion

However, they are all open-source projects or standardized products after all, serving the masses. The rich and colorful themes and templates are both advantages and limitations at the same time. They still cannot satisfy everyone's highly personalized design and content needs.

Because I couldn't find a solution that satisfied me, plus I didn't have the capability and time to develop a website from scratch before, this matter was always postponed. Many insights from previous learning, work, and life were never recorded. Here's my advice: Don't forget the original intention of needing a blog system just because you can't find a satisfactory one - that is, to record. Recording is the most important thing. Find one that you feel comfortable using and just start recording. Blog systems can be developed, iterated, and updated, but fleeting thoughts, if not recorded, are gone forever.

What kind of blog do I want?

It's quite strange, as I've grown older, my preferences have also changed. When I first entered the industry, I liked those flashy designs packed with many cool animations. Now, I particularly prefer minimalist design styles. For example, the personal homepage of Dr. Axel Rauschmayer, a frontend expert I admire, is very clean! I really like it and have read many of his books, learning a lot. There's also leerob, former VP at Vercel who now works at Cursor. His homepage is also quite minimalist and shares similarities with Next.js Portfolio with Blog. It's the closest to the style I like, so I borrowed some design elements from them.

Overall, my ideal blog should have: • Clean design with clear modules • Responsive design that perfectly adapts to desktop, tablet, and mobile devices • Seamless light/dark theme switching • Chinese-English bilingual switching • Custom font support (currently using LXGW WenKai for Chinese font) • RSS subscription support • Article view count statistics • Reading progress and article table of contents • Like and comment system integration • Sorting by article publish date, views, and likes • Easy to configure, deploy, and maintain

Based on the above points, I decided I still need to design and implement it myself to realize my ideal personal homepage!

It's time! Let's take action!

Why haven't I taken action all this time? According to the points mentioned above, you can see that some frontend design aspects are not easy tasks. For example, responsive design and dark themes, and if you add SEO-friendly SSR (Server-Side Rendering) considerations, each one requires time and effort to des

Loading full content...

Hello! My Blog Website