KossJS 诞生记
缘起:一次不满,一个念头
2025年12月,开发者 星燃 在使用 KubeJS 时,接连遇到两个痛点:
- 不直接支持
fetch等现代 Web API; - 迟迟没有高版本 Fabric 的适配。
于是,一个大胆的想法浮现:
“要不我自己做一个替代 KubeJS 的项目吧,就叫 KifeJS。”
彼时的初步设想是:
- 目标:替代 KubeJS
- 游戏版本:Minecraft 26.1.2
- 模组加载器:Fabric
然而,星燃并不熟悉 Java,项目因此暂时搁置。
转向:从“替代模组”到“JS 引擎”
2026年3月1日,星燃调整了思路——与其直接做游戏模组,不如先实现一个通用的 JavaScript 引擎:
“KossJS 项目目标:实现一个 Bun.js 那样的运行时。”
接下来的十天(3月10日–20日),星燃进行技术选型,初步决定使用 Rust + v8 组合,并着手编写第一个版本。
但很快,他意识到不应仓促决定技术栈和目标定位。于是,在 3月20日–31日期间,他暂停编码,认真验证了项目的可行性,并重新明确了设计方向:
KossJS 项目设计(最终版)
- 目标:打造一个高性能、跨平台、嵌入式的 JavaScript 运行时引擎
- 技术栈:Rust + Boa(纯 Rust 实现的 JS 引擎)
启程:从零到 dev.9
2026年3月31日,正式开发启动。
- 4月5日:首个版本
dev.1上传至 GitHub - 4月6日:大量更新,实现
dev.2 - 4月12日:
dev.3实现 - 4月13日:
dev.4实现 - 5月14日:
dev.5实现 - 6月3日:
dev.6实现 - 6月21日:
dev.7实现 - 6月25日:
dev.8实现 - 7月12日:
dev.9实现,功能基本完备,虽然并未发布,但在等待第一批用户使用。
现状与展望
截至 2026 年 7 月,KossJS 已从最初的一个冲动念头,成长为一个功能完整的 JavaScript 运行时。 它使用 Rust 和 Boa 构建,兼顾性能与可嵌入性,未来将继续迭代,并期待社区用户的反馈与共建。
