论坛项目 GooseForum v0.0.3 成功迭代~~(p1:欢迎大家提意见)(p2:Tailwindcss 初体验)

23 天前
 PungentSauce

GooseForum v0.0.3 版本发布 (图在文末)

访问地址如下:

改动点如下

一 页面重构 (开发起来比原来快,页面比原来好看)

前端使用 vite + tailwindcss 重构。一是为了保持服务端选染衣达到 seo 友好的目的,二是 tailwindcss+vite 确实可以和当前项目比较友好的结合。并且最终打包出来的资源也是相对小巧的。并且这个过程中,体验到了一些比较新的库和 ai 的结合 。比如 rule 比如 context7 ,可以查找最新的文档并正确使用对应的的组件。

二 markdown 渲染/样式更改

在上个小版本服务端采用 goldmark 将 markdown 转 html , 前端再加入一些样式。 发布页面是 vue + md-editor-v3 。但是两者展示的差异比较大,并且由于使用的不同库,导致主题切换的时候非常难以维护。并且不同组件的主题适配非常麻烦。

所以新的版本中 markdown 渲染 采用了都支持 CommonMark 的 markdown-it(js) 和 goldmark(go) . 采用了相同的配置,mermaid 通过前端自动发现是否需要渲染 , 同时相关样式采用 @tailwindcss/typography 来渲染。算是一个一致/性能/体验的都比较不错的方案。

老实说,为了在服务端选染,这一块之前搞得好纠结。文章发布页面换过好几次前端组件,之前发布的版本用的 md-editor-v3 ,打包后感觉比较重,而且预览样式无法做到和高度一致(不但无法高度一致而且差异不算小)。 这里采用直接用 markdown-it + mermaid 进行 CommonMark 语法的转化,然后通过 tailwindcss 的 @tailwindcss/typography 插件进行美化,这样可以保证前端编辑和最终服务端选染的一致。

功能逻辑优化

1 、更改了初始化张逻辑 ,参考 cloudreve 初始化账号的方式,很巧妙。 首个注册的用户设置为管理员,注册的时候如果注册人的 id 是 1 则进行一系列额外的初始化操作。 2 、优化了一些统计逻辑 , 在 sqlit wal 模式下获得不错的性能体验。

欢迎大家来尝鲜。

首页

主题切换


922 次点击
所在节点    分享创造
6 条回复
forelegance
23 天前
基本功能都有,但就是界面太过主次不分了,且不够美观和统一,没有眼前一亮的那种感觉
PungentSauce
23 天前
gigishy
23 天前
界面让我梦回二十年前……
PungentSauce
22 天前
@gigishy 哈哈,看来我还挺念旧的。
flytoegg
22 天前
跟 V2EX 功能很像啊
PungentSauce
21 天前
@flytoegg 参考 learnku.com 多一点。 其他小细节基本上看到哪个就参考哪个。主要还是想要部署方便。sqlite 模式下,下载即可运行,0 依赖。wal ,提高并发能力。自带数据库备份。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://ex.noerr.eu.org/t/1140256

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX