冰轩
's blog
分类
归档
Hello world.
2024-01-08 22:01
默认分类
大概在去年的 9 月 10 号,我开始准备搞一个新的博客。这次我选择了或许有些激进的技术栈(目前还在 Beta 状态的 SolidStart),自己实现了一套 CMS 方案,最终这个博客大概在 6 天前在 Cloudflare pages 部署了下来。目前这套博客系统我也扔到 GitHub 开源了,仓库位于 https://github.com/BingXuanBaka/blog。不过因为考虑到可以让其他人直接将这套博客系统拿去用的关系,我并未选择将最终部署的仓库作为开源的仓库,而是另外从原仓库单独 Clone 出来了一个,并在此基础上添加所有文章。虽然...就目前的代码质量来讲,我并不觉得搭建博客的时候将这套系统拿去用是个好方案。界面设计这次博客整体的设计也与我的个人页统一了风格,最早这套风格的设想来自于我希望有一些不同于曾经的一些或依赖其他设计风格或不怎么美观(...至少对我来讲是这样)的设计,设计或许较为简单,不过最后效果倒是还好。曾经尝试过的我感觉还不是很美观的设计,况且此设计响应式布局也不是很好做最早主页的设计,大致风格是出来了,只不过在 Hero 下方的内容部分的设计上有些许不同博客的设计,除了因性能原因未添加自定义字体以及有一些小的变动外与最终页面并无太大变动CMS 方案在 CMS 的选择上,我并未选择类似于 Ghost、StrAPI 一类需要自行搭建 API 或依赖现有后端 API 服务的方案,并且因为感觉那些基于 Git 的方案或许有些过于依赖部分现有服务的意味...最终我打算选择那些基于文件的 CMS 方案。只不过对于我选择的 SolidStart 框架因为一个还在 Beta 状态,生态也不是很好,我并未找到适用于这个框架的基于文件的 CMS。最终,我打算自己实现。最早我先是在请求时用 marked 直接对 Markdown 文件解析,后面则因为看到了 ContentLayer 的实现方式,便改成了先在编译的时候使用 mdast utils 将 markdown 文件先转化到抽象的语法树,后面请求时对语法树解析。部署大致写好了博客系统后,接下来便是部署了。最初,我希望与我那个个人页一起部署至 vercel 上,只不过在 vercel 上的部署并不怎顺利...部署后在服务端会有 tags array should be passed to <MetaProvider /> in node 的报错。这个问题在本地运行时并不会出现,而 <MetaProvider> 则由 SolidStart 控制。我实在是不知道这个问题造成的原因以及如何修复,因为 Serverless 函数没有本地调试环境导致我 debug 也很麻烦。最后我选择尝试换到 Cloudflare Pages 上部署,并且基本一切正常。最终我便打算未来继续在 Cloudflare pages 上部署了。// TODO目前这个博客我感觉还是少了一些东西,以及一些问题仍然没被修好:评论系统向 Vercel 上部署的问题为不支持现代前端 API 的旧设备准备的 legacy 版(当然我不太可能会做,只不过先放在这里就是了)...
加载更多