HVML 是由中国首款开源基础软件 MiniGUI 的作者魏永明设计的描述式编程语言,也是世界首款可编程标记语言。
面向碎片化世界的应用开发需求,HVML 为传统命令行(CLI)、桌面/嵌入式/移动端图形用户界面(GUI)应用、网页(Web)应用以及人工智能生成(AIGA)应用的统一开发路径提供了全新的技术框架。HVML 蕴含了大量新颖的设计和独创的思想,是魏永明及其团队近三十年基础软件开发经验的结晶,一经发布便获得了业界的广泛关注。2022 年底,HVML 项目获评 CSDN 2022 “年度开源影响力项目”;2023 年 4 月,中国开源软件推进联盟(COPU)主席陆首群先生倡议:“全行业都应该积极支持 HVML 的研发!”2023 年 12 月,HVML 入选国际测试委员会(Bench Council)年度世界开源成果 Top100 榜。
重要里程碑回顾
-
2025 年 5 月,我们成功将 HVML 应用运行在了标准浏览器当中,这为统一 Web 页面和传统 GUI 应用迈出了关键的一步。
-
2024 年 03 月:xGUI:填补自主浏览器渲染引擎的空白
-
2024 年 01 月:HVML 解释器 PurC 新增对 SQLite 的支持
-
2023 年 11 月:HVML 应用的热迁移技术——超操作系统的平台技术
-
2022 年 09 月:HVML 的惊人开发效率,一周完成汽车仪表应用
-
2023 年 04 月:HVML 解释器 PurC 0.9.8 发布,支持内嵌 Python 代码
-
2023 年 01 月:统一 CLI 和 GUI 指日可待——HVML 解释器 PurC 0.9.5 发布
-
2022 年 07 月:百万行代码,HVML 今日开源!
-
2022 年 01 月:廿月孕育,全球第一个可编程标记语言 HVML 正式诞生
HVML 开源组件的更新
2025 年 05 月,HVML 社区更新了 HVML 解释器 PurC 和渲染器 xGUI Pro(通过
https://github.com/HVML 发布):
-
PurC 0.9.22。该版本最大的增强在于为基于套接字的通讯(包括 websocket 和 hbdbus 等高层应用协议)提供了完整的支持。开发者现在可使用 HVML 开发服务器程序或者通过 HVML 建立 GUI 应用以及非 GUI 应用之间的数据交换机制。另外,这个版本还有一大改进,就是解析器和解释器的错误输出更加人性化了,方便代码调试。
-
xGUI Pro 0.9.22。该版本为配合 PurC 0.9.22 的例行更新。
HVML 相关的开源软件仓库罗列如下:
-
HVML 解释器 PurC :
https://github.com/HVML/PurC -
HVML 渲染器 xGUI Pro:
https://github.com/HVML/xGUI-Pro -
HVML 的 FastCGI 进程管理器 HVML-FPM:
https://github.com/HVML/HVML-FPM
基于以上更新,HVML 应用现在可将标准浏览器作为其渲染器,从而为统一 Web 页面和传统 GUI 应用的开发迈出了关键一步:
用电脑浏览器访问如下网站即可体验:
填补自研渲染引擎的空白:xGUI
2023 年 12 月,飞漫软件启动了 HVML 渲染器 xGUI 的开发工作。现有的 HVML 渲染器 xGUI Pro 是基于 WebKit 浏览器引擎开发的,存在架构臃肿且仅支持 Linux 平台的缺点。xGUI 将采用自研的渲染引擎(名为 Foil),通过灵活的软件架构来支持三种底层的渲染驱动器和各种不同的窗口系统:
-
字符终端:使用该渲染驱动器,可以在字符终端上展示 HVML 应用的页面并完成和用户的交互,从而为 CLI 应用利用 Web 前端技术提供便利。 -
MiniGUI:使用该渲染驱动器,可在中低端嵌入式设备上展示 HVML 应用的页面并完成和用户的交互,从而为中低端嵌入式设备的 GUI 开发提供便利。 -
Skia:使用该渲染驱动器,可在高端嵌入式设备、桌面电脑、智能手机上展示 HVML 应用的页面并完成和用户的交互,从而为高端嵌入式设备、智能手机、桌面应用的 GUI 开发提供便利。
经过开发团队一年多的努力,xGUI 已支持 HTML 5 和 CSS 2.2 的绝大部分特性。飞漫软件将在近期发布 xGUI,敬请关注。
HVML 相关文档的更新
我们于 2025 年 04 月 28 日发布了 HVML 规范 1.0 OR0 版本以及 HVML 预定义变量规范 1.0 OR0 版本,调整了一些语言特性,增加了大量接口。相关链接如下:
下一步计划
飞漫软件已经开始了 HVML 应用在线设计及开发工具的开发工作。利用该在线工具,产品经理/开发者,甚至任何会上网的人或者人工智能机器人,都可通过浏览器设计自己的跨平台应用并完成整个开发和测试流程,最终部署到互联网上或者打包为桌面、智能手机或者嵌入式应用。
常见问题及解答
Q:HVML 是针对嵌入式和物联网使用的吗?
A:不仅仅是。HVML 是一种通用的胶水语言,HVML 的目标平台包括传统的桌面、服务器、智能手机、平板、嵌入式设备和物联网设备。
Q:HVML 是打算取代现有的 Web 前端开发技术,比如 JavaScript 吗?
A:没有这个计划。HVML 的渲染器会用到 Web 前端技术,但 HVML 的目标并不是取代现有的 Web 前端开发技术,而是面向未来的多屏协同场景下的需求,为应用的跨端运行提供全新的技术框架,同时作为合璧操作系统(HybridOS)的首选编程语言。
Q:除了 GitHub,还可以在哪里看到 HVML 的开源仓库?
-
HVML 解释器(PurC):
https://gitee.com/HVML/PurC -
HVML 图形渲染器(xGUI Pro):
https://gitee.com/HVML/xGUI-Pro -
HVML 的 FastCGI 进程管理器 HVML-FPM:
https://gitee.com/HVML/HVML-FPM
Q:相比 HybridOS 1.0,HybridOS 2.0 的主要区别是什么?
A:开发 HybridOS 1.0 时 HVML 尚未诞生。事实上,HVML 的设计来源于 HybridOS 1.0 开发中的一些原始设想。现在 HVML 已成熟,HybridOS 就有了自己的应用编程语言。
HybridOS 2.0 继承了 HybridOS 1.0 的图形栈以及大量基础设施(如数据总线)。其主要不同在于,开发者可使用 HVML 编程语言为 HybridOS 2.0 开发应用。
Q:在哪里可以看到 HybridOS 2.0 相关的源代码?
A:HybridOS 2.0 相关文档及代码仓库在
https://github.com/HybridOS2 上开源发布,其中包括:
-
合璧数据总线(HBDBus):
https://github.com/HybridOS2/HBDBus -
合璧网络设备管理器(HBDInetd):
https://github.com/HybridOS2/HBDInetd -
合璧操作系统设计及规范文档:
https://github.com/HybridOS2/Documents
https://hvml.fmsoft.cn/software
Q:如何赞助 HVML 相关的项目?
A:个人打赏性质的赞助,您可以点击文后的原文链接。大额的赞助,可通过“联系我们”留下联系方式,或者致信 hvml@fmsoft.cn
,我们会及时联系您。