On July 31, 2022, we opened six HVML related code warehouses, of which the total number of the first five code warehouses has exceeded one million:

  1. HVML interpreter (PurC)

  2. HVML External Data Getter (PurC Fetcher)

  3. HVML Character Renderer (PurC Midnight Commander)

  4. HVML Graphics Renderer (xGUI Pro)

  5. DOM Layout Library (DOM Ruler)

  6. Extend WebKit engine (source code package only)

This marks the official release of HVML 1.0.

In two years, we achieved a breakthrough from 0 to 1:

  1. In May 2020, the author came up with the idea of designing a distinctive programming language. Later, in July 2020, the author proposed the HVML programming language and published the first specification draft.

  2. In July 2021, we set up a research team and formally started the development of the HVML interpreter (PurC).

  3. On December 27, 2021, the first HVML program was successfully run, marking the official birth of HVML.

  4. On March 11, 2022, the HVML interpreter completed the docking with the renderer, marking the birth of the transmission control protocol PURCMC between the HVML interpreter and the renderer.

  5. On May 30, 2022, we completed the preliminary version of the HVML graphics renderer xGUI Pro.

  6. On July 31, 2022, the HVML 1.0 interpreter PurC and renderer xGUI Pro will become stable. We have disclosed all source code repositories (or software packages) related to HVML.

During the whole year of development, the author led the team to realize all the innovative ideas and most of the functions. Initially, our goal was to enable developers familiar with C/C++or other programming languages to easily develop GUI applications through HVML using Web front-end technologies (such as HTML/SVG/PathML and CSS), rather than in Web browsers or Nodes JavaScript programming language is used in JavaScript. Now, we have not only achieved this goal, but also implemented HVML as a universal programming language.

As a designer, the author defines HVML as a new programming language: Programmable Markup Language. We have given HVML a new design concept, making it different from any programming language we are familiar with:

  1. HVML uses tags to define the structure and control flow of the program, which greatly improves the readability of the program and greatly reduces the difficulty of learning.

  2. HVML uses extended JSON with dynamic functions to define data, which makes it an ideal glue for bonding different system components.

  3. HVML introduces a data-driven programming model, which allows developers to focus more on data generation and processing rather than control flow.

  4. HVML is dynamic; developers can not only obtain data, templates and program fragments from remote data sources, but also delete existing variables.

  5. HVML uses a unique way to support coroutines, threads, closures, and other essential features of modern programming languages.

  6. HVML is very flexible; developers can use HVML to write simple script tools, or use it to develop complex GUI applications, or even use HVML to develop gateway programs for Web servers.

  7. HVML runs fast; the HVML interpreter uses a simple and efficient stack based virtual machine without any garbage collector.

  8. Compared with common script languages, HVML has a higher level of abstraction; with HVML, developers can do more with less code.

Now, anyone can use HVML to develop their own programs, experience the design ideas of HVML, realize their own ideas with simple code, and explore their internal implementation. We welcome anyone to put forward their own suggestions for improvement, even optimization or defect correction, through open source collaboration.

Access the source code repository of the HVML interpreter PurC, and follow README.md . You can build PurC and related software by yourself according to the steps described in the file:


Be sure to light up the Star of each HVML code warehouse to give us encouragement!

Keep in mind that HVML community is located in GitHub.COM Official organization URL :


Or the official website of HVML community:


You can find all HVML related code repositories, documents, and resources through one of these two URLs.

Today, the official release of HVML is just the beginning; in the future, HVML related development will enter a new stage of open source collaboration. The HVML community will carry out follow-up work around topics such as the evolution of the language itself, the implementation of predefined variables, cross platform applications, and integrated operating systems. We will work with all parties to build HVML communities and promote the application of HVML.

A new programming language needs a long process of growth from birth to maturity. Therefore, HVML will be a long-term project. We expect more individuals or enterprises to join the HVML community and grow with HVML!

In addition, we will publish the HVML tutorial, introduction of design ideas and other related content through the WeChat official account "Coding College", and welcome you to follow "Coding College".


Q: Is HVML used for embedded systems and the Internet of Things?

A: Not only. HVML is a general glue language. The target platform of HVML includes traditional desktop, server, smart-phone, tablet, embedded device and Internet of Things device.

Q: Is HVML intended to replace existing Web front-end development technologies, such as JavaScript?

A: There is no such plan. HVML renderer will use Web front-end technology, but HVML's purpose is not to replace the existing web Front-end development technology, but to provide another technical framework for the development of cross platform GUI applications, as well as the preferred programming language for Hybrid OS.

Q: Which open source license is used to distribute software such as PurC and xGUI Pro? A: PurC is mainly provided as a function library for developers to use, and you can develop your own HVML interpreter based on PurC. Therefore, we publish PurC under the LGPLv3 license. The LGPLv3 license does not require you to use PurC for commercial purposes, subject to the terms and conditions of the LGPLv3 license, for interpreters or HVML programs that run on PurC. You do not need to notify the copyright owner in advance, and you do not need to pay anyone. We release xGUI Pro following GPLv3. xGUI Pro is an application. The use of xGUI Pro for commercial or other purposes, subject to the terms and conditions of the GPLv3 license, is a right granted to you by the GPLv3 license without prior notice to the copyright owner or payment to anyone.

We release xGUI Pro following GPLv3. xGUI Pro is an application. The use of xGUI Pro for commercial or other purposes, subject to the terms and conditions of the GPLv3 license, is a right granted to you by the GPLv3 license without prior notice to the copyright owner or payment to anyone.

Q: How to sponsor HVML related projects?

A: For personal reward sponsorship, you can click the original link at the end of the passage. For large-scale sponsorship, you can click “Contact ” to leave your contact information or send a letter hvml@fmsoft.cn , we will contact you in time.

Original Link


Attachment: Trademark Statement

The product, technology or term names mentioned herein refer to the following trademarks registered by Beijing FMSoft Technologies Co., Ltd. in China or other regions:

  1. 飛漫


  1. FMSoft


  1. 合璧

合璧 合璧 合壁

  1. HybridOS


  1. HybridRun


  1. MiniGUI


  1. xGUI


  1. miniStudio


  1. HVML


  1. 呼噜猫


  1. Purring Cat

Purring Cat

  1. PurC