1. Introduction#
Why did I think of creating such an open-source blog project?
The reasons can be summarized as follows:
- As a programmer, how can I not have my own blog?
- To consolidate some of my learning content and record some technical articles.
- To promote my continuous output of content to improve my language expression skills.
- It's a personal trait; I feel that having a platform of my own is truly, awesome.
In fact, I have written many blogs over time. Last year, I restructured my blog based on Next.js, and it looked something like this. It was written based on a blog template, and I thought it was quite good at the time.
So, under what circumstances was the open-source project DevNow Open Source Blog Project created?
At the beginning of last month, I was chatting with a college classmate who mentioned he was looking for a suitable open-source project to host his reading notes project but hadn't found a project with a high match in UI and functionality. I suggested that I could write one and open-source it for everyone to use.
2. DevNow: A Modern Open Source Blog Project#
DevNow is a modern, minimalist open-source technical blog project. It supports one-click deployment on Vercel and features such as comments and search. Everyone is welcome to raise issues, star, and fork it for use.
GitHub address: https://github.com/LaughingZhu/DevNow
I have already migrated all the content from my blog, and it also serves as a weekly content platform, publishing some of the more popular topics in the tech circle each week. The content is mainly technology-related, but may also include some other topics and introductions to open-source projects.
My blog address: https://www.laughingzhu.cn/
3. Currently Supported Features#
- ✅ Mobile Adaptation
- ✅ SEO & OpenGraph
- ✅ Supports Markdown & MDX
- ✅ Syntax Highlighting
- ✅ Image Compression
- ✅ Theme Color
- ✅ Code Copying
- ✅ Supports Sitemap
- ✅ Supports RSS Feed Subscription
- ✅ Draft Mode
- ✅ 🔍 Article Search (Implemented with DocSearch)
- ✅ Supports Comments (Giscus)
- ✅ Supports Pagination
- ✅ Annotations
- ✅ Media Embedding (Currently supports YouTube, Twitter, Link, Vimeo)
4. Technology Stack#
- Astro: Astro is a multifunctional web framework that includes everything you need to build a website. It has hundreds of different integrations and API hooks to customize your project based on your specific use case and needs.
- TypeScript
- Tailwind CSS
- Mdx (When submitting or writing articles, please prioritize using .mdx; the format is the same as md, but .mdx has the highest support for the features mentioned above).
- Vercel one-click deployment
5. Why is it called a Modern Open Source Blog Project?#
I think this topic might be quite open, so I'll briefly share my thoughts:
- Modern and Simple UI: As a front-end developer, UI is very important to me. The overall UI of DevNow draws inspiration from some good UIs and is quite minimalist.
- Technical Aspects: It basically uses some popular technology stacks from recent years, and the whole project has some valuable learning content.
- Extensibility: The entire project is developed based on Astro, which allows for flexible integration of UI frameworks, including React, Preact, Svelte, Vue, SolidJS, AlpineJS, and Lit. This provides richer extensibility.
- Openness: Most of the functional modules are built on some open-source projects, which enhances the overall extensibility of the project. However, there are some downsides: for example, the comment module based on Giscus requires users to configure some content themselves, which affects usability a bit.
6. Reflections on the Gains from This Project#
Since going live, I have just completed the iteration of the basic functional modules. Everyone is welcome to fork and experience it, and I appreciate any issues and feedback.
As this is my first time writing an open-source project, the initial version still had a lot of hard-coded code, which required users to dive into the project to find the corresponding modules for modification. My friend gave me a lot of suggestions, and the current version has been optimized based on some open-source projects, allowing most basic information of the project to be modified in the configuration files. This can be considered a gain from the open-source project, as it has led to a shift in development thinking, giving the project better flexibility and extensibility.
7. Conclusion#
Currently, DevNow, as an open-source blog project, is still quite young and needs everyone's good suggestions and feedback. You are also welcome to contribute some quality content and news.
Since you've read this far, why not give me a star?