Giter Club home page Giter Club logo

Comments (6)

xiamuguizhi avatar xiamuguizhi commented on June 1, 2024

... 说实话 30kb 我真没感觉。。

我博客随便一张图都3Mb 。。

from artalk.

Ice-Hazymoon avatar Ice-Hazymoon commented on June 1, 2024

不能这么想,部分博客的博主对外部资源大小有些洁癖,如果不去刻意控制,访客进入某些博客时会瞬间浪费 10 多 MB 的流量(live2d、播放器、图片、各种页面特效等),如果不去优化这些资源,首屏的体验会很糟糕,毕竟不是每个人都有自己的 CDN。

一个好的评论系统我认为应该去考虑这些,毕竟也不是伪需求。

Cusdis 就很好的做到了这一点,虽然相比 Artalk 确实显得过于简洁了

from artalk.

qwqcode avatar qwqcode commented on June 1, 2024

感谢您的提议,确实我们有必要进一步精简 Artalk 的体积,这是我们的长期目标。

在目前,Artalk 的功能并未完全实现(处于开发阶段),我们的着重点放在功能完善上。由于 30KB 在大多数人的可接受范围内(毕竟已经没有人用2G上网了),对于体积现目前暂时不做过多考虑。

  1. 我们已计划将自带表情数据单独拆分,异步按需加载,届时会进一步对表情包部分着重优化改进。(这是之前摸鱼的锅)
  2. 控制台 JS 和 CSS 按需自动加载,这一点我是赞同的,因为只有管理员用得到。
  3. markdown 是一个广泛使用的轻量级标记语言,我个人认为单独拆分就为了换来那几 KB 的流量节省而牺牲部署的便捷性是没有必要的。
  4. 过多不必要的依赖独立拆分,用户选择性引入文件,会增加部署难度。另外,由于部署环境的复杂性,也可能因用户的非正确操作,而造成难以解决的异常。这不符合易用性要求。我们希望只需引入一个 JS 和 CSS 文件就能完成部署流程,不希望有其他繁琐的操作步骤。
  5. 对于改用 tailwindcss 这类 CSS 框架暂时不做考虑。由于 Artalk 已有太多原生 CSS 的样式(不依赖框架的),且 CSS 文件 gzipped 大小仅有 7KB,改用 tailwindcss 并不能节省多少体积,反而增加了维护难度,且需要学习成本,给用户制作修改不同的主题样式带来负担。

from artalk.

Ice-Hazymoon avatar Ice-Hazymoon commented on June 1, 2024

感谢回复,我尝试了一下移除了 markdown 支持,Gzip 前的体积缩小了将近一半,且 md 语法的学习有些门槛,一些非技术博客的访客可能并不知道 markdown 的存在,或者站长并不想评论区有花里胡哨的样式,只希望单纯的文字评论,还能选择性的关闭。还有的网站(大数据、经济学、算法)可能涉及到一些数学公式需要用到 latex,都支持 markdown 了不支持 latex 就会显得很怪,所以还是建议:

如果需要开启 markdown 支持只用引入 artalk-markdown.js
如果需要 latex 语法支持,再引入 artalk-latex.js
如果需要 i18n 支持,再引入 artalk-i18n-zh.js
等等····

同理,还能由此来扩展出更多的插件,我不认为功能的拆分会对部署造成很大的难度,反而可以发展出无限的可能性

from artalk.

qwqcode avatar qwqcode commented on June 1, 2024

🤔 移除 marked 依赖后确实体积减少了 21.79KB (gzipped),但我个人认为大多数博主还是希望开启 markdown 功能吧,就像现在的 Github 评论也是支持 markdown 的,而且您也使用到了 markdown 语法

可以另外找寻一个 markdown 语法解析器,看看有没有更小的。

还是不太希望默认移除 markdown 而额外引入的(有待考虑 💭)。

可以增加一个关闭 markdown 的配置选项,满足不希望评论有花里胡哨的样式的需求。

关于 “功能的拆分会对部署造成很大的难度”,您似乎忽略了我评论中的一个前提 “过多不必要的依赖独立拆分”。 😉

引入 artalk-latex.js 即可开启 latex 支持,这样很棒!😆

  • latex 语法支持这个确实需要,开启了一个新的 ISSUE:#55
  • i18n 这个以后也会去做,#56

非常感谢您的建议!

from artalk.

qwqcode avatar qwqcode commented on June 1, 2024

可以试试新发布的 ArtalkLite 精简版本 (默认关闭表情包、投票、UA 徽标功能,去掉了 marked 依赖),JS 文件大小仅 20.22KB

https://cdn.jsdelivr.net/npm/[email protected]/dist/ArtalkLite.js
https://cdn.jsdelivr.net/npm/[email protected]/dist/ArtalkLite.css

b2783d7

from artalk.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.