hexo-theme-shokax 0.5.0-dev-789e8eb → 0.5.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +42 -27
- package/package.json +12 -13
- package/scripts/helpers/engine.js +5 -0
package/README.md
CHANGED
@@ -1,23 +1,30 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
-
|
12
|
-
-
|
13
|
-
-
|
14
|
-
-
|
15
|
-
-
|
16
|
-
-
|
17
|
-
-
|
18
|
-
-
|
1
|
+
## 公告
|
2
|
+
**[ShokaX 0.4/0.5 生命周期计划](https://github.com/theme-shoka-x/hexo-theme-shokaX/discussions/426)** \
|
3
|
+
**[ShokaX 0.5 迁移指南](https://docs.shokax.kaitaku.xyz/getting-started/migrate/)** \
|
4
|
+
**[ShokaX 0.5 中的新代码块样式调研](https://github.com/theme-shoka-x/hexo-theme-shokaX/discussions/418)**
|
5
|
+
|
6
|
+
## ShokaX
|
7
|
+
|
8
|
+
ShokaX 是一个源自 Shoka 的派生项目,其核心目标是引入前沿技术并持续优化用户体验。
|
9
|
+
|
10
|
+
ShokaX 提供了如下改进:
|
11
|
+
- 基于 esbuild 的半现代构建体系
|
12
|
+
- 完全基于 ESM 和 Typescript 的现代代码库
|
13
|
+
- 现代 Markdown 渲染器与 CSS/JS/图片优化器
|
14
|
+
- 现代的 Vue 3 音乐播放器重构
|
15
|
+
- 对上下游供应链的重写(如 Pjax、Anime.js和Mouse-firework)
|
16
|
+
- 更人性化的操作与配置
|
17
|
+
- 动画及视觉效果重构 (WIP)
|
18
|
+
- 与平台解耦的 Vue 3 UI 框架 (WIP)
|
19
|
+
|
20
|
+
## 🔧如何安装
|
21
|
+
见文档[如何安装](https://docs.shokax.kaitaku.xyz/getting-started/)部分
|
22
|
+
|
23
|
+
注意:ShokaX 不支持传统 Hexo 主题的 Git Clone 式安装,请不要“想当然”。
|
19
24
|
|
20
25
|
## 📚子项目
|
26
|
+
- [ShokaX UIKit](https://github.com/theme-shoka-x/ShokaX-UI-Kit/tree/main/packages/shokax-uikit) ShokaX 平台无关 UI 组件库
|
27
|
+
- [Nyx Player](https://github.com/theme-shoka-x/ShokaX-UI-Kit/tree/main/packages/nyx-player) ShokaX 音乐播放器的 Vue 3 重构实现
|
21
28
|
- [ShokaX docs](https://github.com/theme-shoka-x/shokaX-docs) ShokaX 主题文档 (正在编写中,欢迎加入!)
|
22
29
|
- [HRMNMI](https://github.com/theme-shoka-x/hexo-renderer-multi-next-markdown-it) ShokaX 正在使用的 markdown 渲染器 (等待重构)
|
23
30
|
- [ShokaX Anime](https://github.com/theme-shoka-x/theme-shokax-anime) ShokaX 提供的精简版 Anime.js 实现
|
@@ -33,12 +40,23 @@ AGPL许可证主要目的是限制修改后的分发行为,避免未经许可
|
|
33
40
|
依照AGPLv3 Section 7,我们添加了一些附加条款:
|
34
41
|
请查看[使用限制](./UsageRestrictions.md),使用ShokaX则默认您已知晓此文件内容
|
35
42
|
|
36
|
-
#
|
37
|
-
##
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
43
|
+
# 写在最后
|
44
|
+
## 致谢名单
|
45
|
+
|
46
|
+
__本部分由 zkz098 编写,所有的“我”均指代本人。__
|
47
|
+
|
48
|
+
ShokaX 开发团队谨向在 ShokaX 项目开发过程中做出重要贡献的所有朋友致以最诚挚的谢意。以下列表按随机顺序排列,不分先后:
|
49
|
+
- amehime:Shoka 的开发者,没有她就没有 ShokaX
|
50
|
+
- D-Sketon:ShokaX 早期用户及核心开发者,让 ShokaX 的生产就绪提早不少于 1 年完成,并让如今的 ShokaX 能建立在稳固的基础上
|
51
|
+
- Joyition:ShokaX 贡献者,Iconfont 项目提供者,让 ShokaX 用户能独立于 Shoka 自定义 Iconfont
|
52
|
+
- Lavender:Shoka 资深用户,启发了我创建 ShokaX 这个项目
|
53
|
+
- MqyGalaxy:ShokaX 维护者,为 ShokaX 提供了许多宝贵的建议
|
54
|
+
- Foryouos:ShokaX 早期用户及文档贡献者,为 ShokaX 提供了关键文档
|
55
|
+
- Argvchs:Particlex 核心维护者,直接启发了我创建 ShokaX 这个项目
|
56
|
+
- tfel-ypoc:感谢 TA 指出了 ShokaX 存在的诸多不足之处,让我们能更好地改善用户体验和优化文档
|
57
|
+
- MisakaMikoto521:ShokaX 维护者,为 ShokaX 提供了很多 Bug 反馈与改进建议
|
58
|
+
|
59
|
+
由于篇幅所限,我们无法在此一一列出所有对 ShokaX 做出贡献的朋友。在此,我们再次向所有为此项目付出努力的朋友们表达最诚挚的感谢。
|
42
60
|
|
43
61
|
## 开发者们
|
44
62
|
Hexo 主题: \
|
@@ -46,8 +64,5 @@ Hexo 主题: \
|
|
46
64
|
ShokaX 文档: \
|
47
65
|
[](https://github.com/theme-shoka-x/shokaX-docs/graphs/contributors) \
|
48
66
|
|
49
|
-
## 特别鸣谢
|
50
|
-
[<img src="https://resources.jetbrains.com/storage/products/company/brand/logos/jb_beam.png" width="25%">](https://jb.gg/OpenSourceSupport)
|
51
|
-
|
52
67
|
## 其他信息
|
53
68
|

|
package/package.json
CHANGED
@@ -1,12 +1,12 @@
|
|
1
1
|
{
|
2
2
|
"name": "hexo-theme-shokax",
|
3
|
-
"version": "0.5.
|
3
|
+
"version": "0.5.1",
|
4
4
|
"description": "a hexo theme based on shoka",
|
5
5
|
"main": "index.js",
|
6
6
|
"repository": "https://github.com/theme-shoka-x/hexo-theme-shokaX",
|
7
7
|
"author": "zkz098",
|
8
8
|
"license": "AGPL-3.0-or-later",
|
9
|
-
"packageManager": "pnpm@10.
|
9
|
+
"packageManager": "pnpm@10.11.1",
|
10
10
|
"scripts": {
|
11
11
|
"test": "tsc --build --verbose",
|
12
12
|
"build": "node ./toolbox/compiler.mjs"
|
@@ -14,18 +14,18 @@
|
|
14
14
|
"devDependencies": {
|
15
15
|
"@types/js-yaml": "^4.0.9",
|
16
16
|
"@types/katex": "^0.16.7",
|
17
|
-
"@types/node": "^22.15.
|
17
|
+
"@types/node": "^22.15.30",
|
18
18
|
"glob": "^11.0.2",
|
19
19
|
"typescript": "^5.8.3"
|
20
20
|
},
|
21
21
|
"dependencies": {
|
22
|
-
"@algolia/client-search": "^5.
|
22
|
+
"@algolia/client-search": "^5.27.0",
|
23
23
|
"@common.js/p-limit": "^6.1.0",
|
24
|
-
"@waline/client": "^3.5.
|
25
|
-
"algoliasearch": "5.
|
26
|
-
"es-toolkit": "^1.
|
27
|
-
"esbuild": "^0.25.
|
28
|
-
"hana-img-viewer": "^1.2.
|
24
|
+
"@waline/client": "^3.5.7",
|
25
|
+
"algoliasearch": "5.27.0",
|
26
|
+
"es-toolkit": "^1.39.1",
|
27
|
+
"esbuild": "^0.25.5",
|
28
|
+
"hana-img-viewer": "^1.2.2",
|
29
29
|
"hexo": "^7.3.0",
|
30
30
|
"hexo-algoliasearch": "^2.0.1",
|
31
31
|
"hexo-feed": "^1.1.2",
|
@@ -33,15 +33,14 @@
|
|
33
33
|
"hexo-pagination": "^4.0.0",
|
34
34
|
"hexo-renderer-pug": "^3.0.0",
|
35
35
|
"hexo-util": "^3.3.0",
|
36
|
-
"instantsearch.js": "^4.78.
|
36
|
+
"instantsearch.js": "^4.78.3",
|
37
37
|
"js-yaml": "^4.1.0",
|
38
38
|
"katex": "^0.16.22",
|
39
39
|
"mouse-firework": "^0.1.1",
|
40
40
|
"nyx-player": "^0.1.1",
|
41
|
-
"quicklink": "^2.3.0",
|
42
41
|
"theme-shokax-anime": "^0.0.8",
|
43
|
-
"twikoo": "^1.6.
|
44
|
-
"vue": "^3.5.
|
42
|
+
"twikoo": "^1.6.44",
|
43
|
+
"vue": "^3.5.16"
|
45
44
|
},
|
46
45
|
"engines": {
|
47
46
|
"node": ">=20.0.0"
|
@@ -13,6 +13,11 @@ const randomBG = function(count = 1, image_server = null, image_list = []) {
|
|
13
13
|
}
|
14
14
|
if (count && count > 1) {
|
15
15
|
let shuffled = image_list.slice(0);
|
16
|
+
if (image_list.length < 1) {
|
17
|
+
console.warn("We received a report that if the image_list is less than 6 items, it will cause block on main thread, then the terminal will crash.");
|
18
|
+
console.warn("So we throw an error to avoid it happens.");
|
19
|
+
throw new Error("image_list must have at least 6 items");
|
20
|
+
}
|
16
21
|
while (shuffled.length <= 6) {
|
17
22
|
shuffled = shuffled.concat(image_list.slice(0));
|
18
23
|
}
|