{"id":23087576,"url":"https://github.com/silentbalanceyh/vertx-zero","last_synced_at":"2025-08-11T05:08:42.027Z","repository":{"id":37432573,"uuid":"254527536","full_name":"silentbalanceyh/vertx-zero","owner":"silentbalanceyh","description":"🏆 Zero后端重置框架：http://www.zerows.io（新）","archived":false,"fork":false,"pushed_at":"2023-06-08T16:24:07.000Z","size":107759,"stargazers_count":159,"open_issues_count":15,"forks_count":2,"subscribers_count":7,"default_branch":"master","last_synced_at":"2025-07-11T07:31:57.059Z","etag":null,"topics":["async","full-stack","microservice","vertx-web","vertx3","zero"],"latest_commit_sha":null,"homepage":"http://www.vertxup.cn/","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/silentbalanceyh.png","metadata":{"files":{"readme":"README-OLD.md","changelog":null,"contributing":"docs/contributing/asking a question.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-04-10T02:39:42.000Z","updated_at":"2025-05-17T01:32:36.000Z","dependencies_parsed_at":"2025-01-01T21:11:45.543Z","dependency_job_id":"52445108-ba3d-42a8-b539-ce74f0d2f202","html_url":"https://github.com/silentbalanceyh/vertx-zero","commit_stats":{"total_commits":1,"total_committers":1,"mean_commits":1.0,"dds":0.0,"last_synced_commit":"1ede4c3596f491d5251eefaaaedc56947ef784cd"},"previous_names":[],"tags_count":6,"template":false,"template_full_name":null,"purl":"pkg:github/silentbalanceyh/vertx-zero","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/silentbalanceyh%2Fvertx-zero","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/silentbalanceyh%2Fvertx-zero/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/silentbalanceyh%2Fvertx-zero/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/silentbalanceyh%2Fvertx-zero/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/silentbalanceyh","download_url":"https://codeload.github.com/silentbalanceyh/vertx-zero/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/silentbalanceyh%2Fvertx-zero/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":269832882,"owners_count":24482330,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-11T02:00:10.019Z","response_time":75,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["async","full-stack","microservice","vertx-web","vertx3","zero"],"created_at":"2024-12-16T19:58:43.523Z","updated_at":"2025-08-11T05:08:42.004Z","avatar_url":"https://github.com/silentbalanceyh.png","language":"Java","funding_links":[],"categories":["开发框架"],"sub_categories":["微服务框架"],"readme":"# Zero Framework\n\n[![Maven Central](https://maven-badges.herokuapp.com/maven-central/cn.vertxup/vertx-zero/badge.svg?style=plastic)](https://maven-badges.herokuapp.com/maven-central/cn.vertxup/vertx-zero/)  [![Apache License 2](https://img.shields.io/badge/license-ASF2-blue.svg)](https://www.apache.org/licenses/LICENSE-2.0.txt)\n\nZero is a middleware framework based on [Vert.x](http://vertx.io) and it could help software engineers focus on business\nrequirements instead of technical detail of Vert.x. The original idea of this framework came\nfrom [Spring Boot](https://spring.io/projects/spring-boot/) as that there is no approximative tools in Vert.x sphere at\nthat time.\n\nZero has two metaphors, the original name is \"Zero Up\", \"Up\" means that I want to build a system that could be always\nrunning up online, \"Zero\" means no more workload for high production and you can build your own system efficiently with\nthe default configuration only.\n\nThe latest Zero Micro Architecture ( [Aeon System](https://github.com/silentbalanceyh/vertx-zero-cloud) ) will be\ndeployed to [K8S](https://kubernetes.io/) with [Istio](https://istio.io/) environment, it's a future focused method to\nbuild mature system with native cloud nature for more enterprise to execute critical valuable business efficiently. And\nI hope it could act as an important tool for more enterprise to complete digital transformation to satisfy the\nsustainable development, it could be high efficiently digital middleware in your side!\n\n* Gitee Repo: \u003chttps://gitee.com/silentbalanceyh/vertx-zero\u003e\n\n## 1. Features\n\n**Critical For Beginner**: Zero Framework has been re-factor many times, the features are very complex now, you can\nrefer following link for more details to know the power of Zero.\n\n* [功能支持表/Feature List](FEATURES.md)\n\n### 1.1. Structure\n\nZero Framework ( Latest Version ) contains five major projects as following:\n\n| Name         | Comment                                                                                                                                         |\n|--------------|-------------------------------------------------------------------------------------------------------------------------------------------------|\n| vertx-gaia   | **Zero Core** Runtime, it contains minimum zero environment and you can deploy your projects on zero.                                           |\n| vertx-ifx    | **Infix Architecture**, Useful plug-ins that could be supported by Zero and you can choose as required.                                         |\n| vertx-import | Zero Usage dependency to perform development, it provides uniform entrance for your projects.                                                   |\n| vertx-semper | **Aeon System**, The native cloud environment based on K8S with Istio.                                                                          |\n| vertx-pin    | **Zero Extension** Modules, it provides common business features to satisfy many enterprise requirements such as [ODOO](https://www.odoo.com/). |\n\n### 1.2. Usage Links\n\n| Name                                                                   | Comment                                                                                                                                                               |\n|------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| [Zero Ui](https://www.vertxui.cn)                                      | Zero UI Framework based on React and Ant Design.                                                                                                                      |\n| [Zero Ai](https://www.vertxai.cn)                                      | Zero Ai Toolkit for rapid development.                                                                                                                                |\n| [Zero Docs (EN)](https://onemsg.github.io/vertx-zero/)                 | Document that created by [onemsg](https://github.com/onemsg), the author blog is \u003chttps://juejin.cn/user/3597257778669592/posts\u003e.                                     |\n| [Zero Example](https://github.com/silentbalanceyh/vertx-zero-example)  | Zero original example demos for beginner.                                                                                                                             |\n| [Old Official Document](DOCUMENT.md)                                   | The previous zero document before `0.4.8`, EN version.                                                                                                                |\n| [《Zero冥思录》](https://lang-yu.gitbook.io/zero/)                          | The core training course for beginner to study Zero Framework, CN version.                                                                                            |\n| [《Vert.x逐陆记》](https://lang-yu.gitbook.io/vert-x/)                      | The basic vert.x framework training course, ( In Progress )                                                                                                           |\n| [《Zero云平台白皮书》](https://www.vertx-cloud.cn/document/doc-web/index.html) | The specification and guide for developer to process zero cloud platform / application. ( Include Zero Extension, Zero UI, Aeon Platform \u0026 Zero Ai etc ), CN version. |\n\n### 1.3. Agreed Metadata Specification ( AMS )\n\nIn latest version `0.9.0`, I have published a new project `vertx-ams` under `vertx-gaia` project, it's a shared library\nthat could be cross Vertx, Spring and other project etc, it provide common features of JVM language and could help you\nto do development more efficiently instead of `Util`. For more details you can\nrefer [《9.标准化》](https://www.vertx-cloud.cn/document/doc-web/index.html#_%E6%A0%87%E5%87%86%E5%8C%96).\n\nThe reference link is : \u003chttps://gitee.com/silentbalanceyh/vertx-zero/tree/master/vertx-gaia/vertx-ams\u003e, you can add\nfollowing segment to your own project:\n\n```xml\n\n\u003cdependency\u003e\n    \u003cartifactId\u003evertx-ams\u003c/artifactId\u003e\n    \u003cgroupId\u003ecn.vertxup\u003c/groupId\u003e\n    \u003cversion\u003e${ZERO_VERSION}\u003c/version\u003e\n\u003c/dependency\u003e\n```\n\n\u003e The latest doc involved serialization of jackson tools.\n\n## 2. Overlook\n\nHere I provide another view to let you know Zero Framework for more details.\n\n### 2.1. Modulat\n\n**Zero Extension** has been designed and re-factor to modulat environment, you can configure the modules as required,\nall the modules could support following:\n\n* OSGI Specification\n* JDK 9 Module\n\nhere are some standard modules in Zero Extension.\n\n![](./docs/_image/extension.png)\n\n### 2.2. Topology\n\nThe whole **Zero Framework ( Aeon Environment )** is as following:\n\n![](./docs/_image/arch.png)\n\n### 2.3. Modeling\n\nThe latest version `0.9.0` has involved the specification of Industry Modeling to support more factors:\n\n* ISO Specification such as ISO-27001, ISO-20000, ISO-9001 etc.\n* Eclipse Modeling Framework supported ( EMF ), include UML generator for reverse engineering.\n* BPMN 2.0 Specification supported.\n\n### 2.3. Schematic\n\nI have published the design schematic diagram of zero\nto: [Zero Architecture](https://www.edrawmax.cn/online/share.html?code=6a3c11741e9411edab98b3f29ce75cdd), you can refer\nthe interaction graphic online and this working is on going. The main diagram of **Zero Booting** is as following:\n\n![](./docs/_image/booting.png)\n\n## 3. Envrionment\n\n* **Back-End**: You can download scaffold project from \u003chttps://gitee.com/silentbalanceyh/vertx-zero-scaffold\u003e to\n  initialize zero environment.\n* **Front-End**: You can use command `ai init -name` instead,\n  refer [Front-End Initialize](http://www.vertxai.cn/document/doc-web/module-ai.html#.init).\n\n### 3.1. Configuration in pom.xml\n\nIf you want to use Zero framework, you can add following dependency into you `pom.xml` to use Zero:\n\n**JDK 17+**, vert.x 4.x\n\n```xml\n\n\u003cparent\u003e\n    \u003cartifactId\u003evertx-import\u003c/artifactId\u003e\n    \u003cgroupId\u003ecn.vertxup\u003c/groupId\u003e\n    \u003cversion\u003e0.9.0\u003c/version\u003e\n\u003c/parent\u003e\n```\n\n**JDK 11+**, vert.x 4.x\n\n```xml\n\n\u003cparent\u003e\n    \u003cartifactId\u003evertx-import\u003c/artifactId\u003e\n    \u003cgroupId\u003ecn.vertxup\u003c/groupId\u003e\n    \u003cversion\u003e0.8.1\u003c/version\u003e\n\u003c/parent\u003e\n```\n\n**JDK 8**, vert.x 3.9.x\n\n```xml\n\n\u003cparent\u003e\n    \u003cartifactId\u003evertx-import\u003c/artifactId\u003e\n    \u003cgroupId\u003ecn.vertxup\u003c/groupId\u003e\n    \u003cversion\u003e0.6.2\u003c/version\u003e\n\u003c/parent\u003e\n```\n\n### 3.2. Start Up ( Core )\n\nIn your project, you can provide main entry only as following to run Zero \\( Annotated with `@Up` \\) .\n\n```java\nimport io.vertx.up.VertxApplication;\nimport io.vertx.up.annotations.Up;\n\n@Up\npublic class Driver {\n\n    public static void main(final String[] args) {\n        VertxApplication.run(Driver.class);\n    }\n}\n```\n\nOnce the Zero is up, you can see following logs in your console \\( The default port is `6083` \\):\n\n```\n[ ZERO ] ZeroHttpAgent Http Server has been started successfully. \\\n    Endpoint: http://0.0.0.0:6083/\n```\n\n### 3.3. Start Up ( Native Cloud )\n\nWhen you want to enable **Aeon System**, you can switch the code as following:\n\n```java\nimport io.vertx.aeon.AeonApplication;\nimport io.vertx.up.annotations.Up;\n\n@Up\npublic class Driver {\n    public static void main(final String[] args) {\n        AeonApplication.run(Driver.class);\n    }\n}\n```\n\n## 4. Tips\n\n### 4.1. Data Specification\n\nIn zero framework, we designed uniform data specification as following response data format for business usage:\n\n```json\n{\n    \"data\":\n}\n```\n\nAfter `0.5.2`, it could support freedom data format response as you wanted such as:\n\n```shell\nHello World\n1\n...\n```\n\nIf you want to switch to freedom mode, you can set the configuration in `vertx.yml` file:\n\n```yaml\nzero:\n  freedom: true     # The default value of `freedom` is false.\n```\n\n### 4.2. Logging in Zero\n\nYou can use following function in your coding to get Logger component instead of `log4j` because we have re-designed the\ndetail implementation of logging system.\n\n```java\n// Zero Logger initialized, connect to vert.x logging system directly \n// but uniform managed by zero.\n\nimport io.horizon.log.Annal;\n\n// Then in your class\npublic final class Statute {\n\n    private static final Annal LOGGER = Annal.get(Statute.class);\n    ......\n}\n```\n\n### 4.3. Oracle Issue\n\nFrom `0.8.0`, if you want to use Zero Extension of Dynamic Modeling, you need the project\nof \u003chttps://github.com/silentbalanceyh/vertx-zero/tree/master/vertx-pin/zero-vista\u003e. The latest version\nis `0.8.0-SNAPSHOT`, you can modify the version and rebuild it. This feature is not needed in Core Framework.\n\n\u003e Above issue has been fixed in `0.9.0`.\n\n## 5. Other Information\n\n### 5.1. Cases List\n\n\u003e Because of Contract and Confidentiality Agreement, removed Sensitive information of customer include system name,\n\u003e customer name etc.\n\n* **Deprecated**: Not Running Now\n* **In Progress**: In Development or Upgraded Development\n* **Running**: Running on Production Environment\n\n| System Information                | Zero Version | Type       | System Status |\n|-----------------------------------|--------------|------------|---------------|\n| TLK Video Mobile System           | 0.4.6        | Commercial | Deprecated    |\n| ISCCC Enterprise Evaluation       | 0.8.1        | Commercial | Running       |\n| Digitization Cooperation Office   | 0.8.1        | Commercial | Running       |\n| Commercial Opportunity Management | 0.8.1        | Commercial | Running       |\n| Fruit PSI Management System       | 0.8.1        | Commercial | Running       |\n| Government Procurement System     | 0.8.1        | Commercial | Running       |\n| Invoice Verification Connector    | 0.8.1        | Commercial | Running       |\n| CMDB Platform of Bank             | Latest       | Commercial | Running       |\n| ITSM Platform of Bank             | Latest       | Commercial | Running       |\n| Integration of PBC Bank           | Latest       | Commercial | Running       |\n| ISO27000 Management Platform      | Latest       | Commercial | Running       |\n| Zero Training Platform            | Latest       | Internal   | Running       |\n| Data Analyzing Exam               | Latest       | Internal   | Running       |\n| Aeon Native Cloud Platform        | Latest       | Internal   | In Progress   |\n| Development Center                | Latest       | Internal   | In Progress   |\n| K8S Integration Monitor System    | Latest       | Internal   | In Progress   |\n| Medical Appliance Management      | Latest       | Commercial | In Progress   |\n| Hotel Management Platform         | Latest       | Commercial | In Progress   |\n| IoT Control System                | Latest       | Commercial | In Progress   |\n| Specification Management Platform | Latest       | Commercial | In Progress   |\n\n### 5.2. WeChat Group\n\nYou can send request to me: `445191171` to contact with the author of zero.\n\n\u003cimg src=\"./docs/_image/chat.jpg\" width=\"258\" height=\"258\" alt=\"作者微信\"/\u003e\n\n## DESIGNED IN CHINA（中国设计）\n\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsilentbalanceyh%2Fvertx-zero","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsilentbalanceyh%2Fvertx-zero","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsilentbalanceyh%2Fvertx-zero/lists"}