[Open-source] Enterprise-level PaaS platform for cloud-native technologies such as microservices, containers, and DevOps
![[Open-source] Enterprise-level PaaS platform for cloud-native technologies such as microservices, containers, and DevOps](https://yy123.ink/api/img/1782583986895-6jkk9c.jpg)
1. Project Overview
HZERO Application Microservices, Containers, DevOps, etc. Cloud Native Technologies, Encapsulated a Large Number of Technical Development Packages, Technical Application Components, Technical Scenario Implementation Capabilities, and Supports SaaS Mode Applications, Providing a Microservices Application Digitalization Integration Platform that Supports Enterprise Various Business Systems or Products Rapid Development and Implementation, Rich in Various Ready-to-Use Components G-General, A-AI, B-BigData, M-Mobile, D-DevOps, Helping Enterprises Cross the Cloud (IaaS/PaaS) and Digitalization Gap, Sharing Business Service Combinations, Providing Powerful Support for Enterprise Service-Oriented Middle Platform Integration and Digitalization Transformation, and Providing Enterprises with Best Architecture Practices
HZERO Provides:
- Common Ready-to-Use Modules Contained in Enterprise-Level Application Systems, Supporting Flexible Configurability and Extensibility
- A Set of Spring Cloud-Based Microservices Application Frameworks, Helping Companies Develop Microservices Faster and More Efficiently
2. Open Source License
Licensed under Apache-2.0
3. Screenshots
System Screenshot
Partial Main Open-source Service Function System Screenshots:
Home Page:

UI Style Switching:
Optional Classic Left and Right or Top and Bottom Menu Structures, Providing Multiple Appearance Skin Choices, Users Can Customize Each Component's Display Style According to Personal Preferences

Menu Role:
After Maintaining the Relationship Between Menus and Permissions in Menu Configuration, Permissions Can Be Allocated and Recovered in Role Management. Only Roles with Menu Permission Sets Can Normally Use the Menu
File Management:
Currently Supporting Aliyun, Huawei Cloud, Minio, Tencent Cloud, JD Cloud, AWS, Baidu Cloud, Microsoft Cloud, and Ceph Nine File Storage Servers Plus Local Storage, the Page Will Adapt Parameters According to Different Servers
Message Management:
Message Templates are Used to Define and Manage Message Sending Using Message Templates, Configure and Manage Associated Message Sending, Associate Successful Templates and Sending Servers, and Test Sending Messages
Report Platform:
Template Types Currently Include Html, Excel, and RTF Three Types, Defining Reports Can Associate Template Information, and Viewing Running Details After Definition
4. Feature Overview
HZERO Main Characteristics
- Platform Governance - Provides a series of service governance functions, users can quickly implement service routing management, circuit breaking, rate limiting, and API permission refresh functions under this service, as well as monitor deployed services through the service monitoring console. Function points include service management, service configuration, rate limiting rules, circuit breaking rules, service monitoring console, API access control, and request link tracking.
- System Management - This functional module is the HZERO foundation data management module, mainly includes tenant management, role management, menu management, user management, configuration management, permission management, login management, data group management, and server definition functions. Users can maintain account, role, menu, and permission information under this functional module, and can also customize some basic information within the HZERO environment, such as modifying the logo, system title, and page layout method. In addition, this functional module provides user login logs and online user viewing, and users can view user login information and user online status under this function.
- Development Management - The functions under this functional module are mainly used to provide support for HZERO development, mainly includes rule management, multi-language management, personalized management, value set management, data source management, static text management, CA certificate management, and system tools. Users can configure some data needed in the development process under this functional module, such as configuring data sources, static texts, value sets, and multi-languages, and can call the client API provided by the platform to implement unified management of some configuration data.
- Organization Management - The functions under this functional module are used to maintain enterprise organizational structure information and employee information. Mainly includes organizational information, employee definition, organizational structure, enterprise directory, and communication directory synchronization functions. Users can maintain company organizational structure information (company/department/position) and employee information under this functional module, and can also import organizational structure information from third-party channels (DingTalk/Enterprise WeChat) into the system with one click. In addition, you can use the organizational structure and employee information import function to import data into the system.
- Message Management - Provides multiple types of message configuration and sending capabilities, provides a general API for message sending, and users can easily implement multiple types of message sending under this functional module without worrying about integrating multiple message platforms. Function points include system announcements and notifications, message template configuration, message sending configuration, message receiving configuration, account configuration (including email, SMS, Enterprise WeChat, WeChat public account, DingTalk, webhook, and phone voice configuration), group maintenance, and message monitoring.
- File Management - Integrated multiple commonly used file functions, users can easily implement file upload, download, online preview, and editing under the interface. Function points include file storage configuration, upload configuration, summary query, online editing, file preview, server upload, and PDF watermark, and file storage configuration supports multiple cloud platforms, including Baidu Cloud, Alibaba Cloud, Tencent Cloud, Huawei Cloud, and JD Cloud.
- Distributed Scheduling - Based on Quartz 2.3.0 self-developed distributed scheduling platform, provides a series of configuration APIs, users can quickly create distributed scheduling tasks through configuration under the interface. Function points include executor management, scheduling tasks, scheduling logs, executable definitions, request definitions, and concurrent requests.
- Report Platform - No need to develop any code, users only need to configure a series of parameters under the interface to implement multiple types of report configuration, online report content rendering, report export, and label printing. Function points include data sets, report template management, report definitions, report queries, report requests, and label printing management.
- Common Data Import - Provides a general data import scheme, users only need to configure the import template to implement data import functions under the import template management function, and users can also use the common import component provided by HZERO to customize the implementation of data import (such as custom validation of imported data). Supports Excel and CSV import methods, and HZERO also provides import history functions to view data import situations.
In addition, you can view the screen shots to understand HZERO in the most intuitive way, and you can also access the HZERO open platform website to obtain the open-source version of HZERO and get the platform detailed documents.
5. Tech Stack
Source Code Download Instructions
HZERO platform is composed of multiple micro-service programs, please refer to the service download links listed in HZERO Composition below for each micro-service download, or switch to the open-hand parent organization and search for hzero-xxx code repository to find the corresponding source code.
This code repository is only used as a guide for HZERO platform usage, and does not contain platform source code, please carefully read the contents below.
Version Description
Currently, the open-source version code is based on version 1.4 and has partially opened some functions, and the enterprise version has been released to version 1.6. Compared to the open-source code, the enterprise version has added many distinctive features and enhanced and optimized existing functions, for details, please refer to the update log for understanding.
Service and Component Relationship List
To get detailed component information of HZERO, please refer to the document component explanation
└─ hzero-parent HZERO Parent Dependencies
├─ hzero-register Registration Center Service
├─ hzero-config Configuration Center Service
├─ hzero-gateway Gateway Service
├─ hzero-swagger Swagger Service
├─ hzero-admin Platform Governance Service
├─ hzero-oauth Authentication Service
├─ hzero-iam IAM Service
├─ hzero-platform Platform Management Service
├─ hzero-file File Service
├─ hzero-import Import Service
├─ hzero-message Message Service
├─ hzero-scheduler Scheduler Service
├─ hzero-report Report Service
├─ hzero-gateway-helper Gateway Authentication Component
│ ├─ hzero-gateway-helper-api Gateway Authentication Abstract Component
│ ├─ hzero-gateway-helper-default Gateway Authentication Default Implementation Component (User Role Authentication)
│ └─ hzero-gateway-helper-login Login Access Authentication Component
├─ hzero-plugin-parent Service Plug-in Function Management Service
│ └─ platform-hr HR Organization Structure Function Plug-in
├─ hzero-boot-parent Client Service
│ ├─ hzero-boot-admin Platform Governance Service Client
│ ├─ hzero-boot-message Message Service Client
│ ├─ hzero-boot-import Import Service Client
│ ├─ hzero-boot-platform Platform Management Service Client
│ ├─ hzero-boot-scheduler Scheduler Service Client
│ ├─ hzero-boot-file File Service Client
│ ├─ hzero-boot-iam IAM Service Client
│ ├─ hzero-boot-oauth Authentication Service Client
│ └─ hzero-boot-report Report Service Client
├─ hzero-starter-parent Common Development Parent Component
│ ├─ hzero-starter-core Basic Dependency Component
│ ├─ hzero-starter-redis Redis Component
│ ├─ hzero-starter-mybatis-mapper Common Mapper Component
│ ├─ hzero-starter-export Data Export Component
│ ├─ hzero-starter-websocket WebSocket Component
│ ├─ hzero-starter-lock Redis Lock Component
│ ├─ hzero-starter-register-event Service Registration Component
│ ├─ hzero-starter-local-feign Feign Local Call Component
│ ├─ hzero-starter-feign-replay Feign Call Client Support Component
│ ├─ hzero-starter-apollo-config Apollo Configuration Center Client Component
│ ├─ hzero-starter-metric JVM Monitoring Component
│ ├─ hzero-starter-config-client Configuration Center Client Component
│ ├─ hzero-starter-jdbc Dynamic JDBC Component
│ ├─ hzero-starter-excel Excel Development Help Component
│ ├─ hzero-starter-fragment File Fragment Component
│ ├─ hzero-starter-sqlparser SQL Parser Component
│ ├─ hzero-starter-keyencrypt Primary Key Encryption Component
│ └─ hzero-starter-seata Seata Distributed Transaction Component
├─ hzero-starter-sso-parent Single Sign-on Parent Component
│ ├─ hzero-starter-sso-core Single Sign-on Core Component
│ ├─ hzero-starter-sso-cas CAS Single Sign-on Component
│ ├─ hzero-starter-sso-oauth OAuth2 Single Sign-on Component
│ ├─ hzero-starter-sso-saml SAML Single Sign-on Component
│ ├─ hzero-starter-sso-azure Microsoft Azure Single Sign-on Component
│ └─ hzero-starter-sso-idm IDM Single Sign-on Component
├─ hzero-starter-file-parent File Object Storage Parent Component
│ ├─ hzero-starter-file-core Object Storage Support Core Component
│ ├─ hzero-starter-file-minio MinIO Storage Support Component
│ ├─ hzero-starter-file-aliyun Aliyun Storage Support Component
│ ├─ hzero-starter-file-bos Baidu Cloud Storage Support Component
│ ├─ hzero-starter-file-obs Huawei Cloud Storage Support Component
│ ├─ hzero-starter-file-cos Tencent Cloud Storage Support Component
│ ├─ hzero-starter-file-aws AWS Storage Support Component
│ ├─ hzero-starter-file-azure Microsoft Azure Storage Support Component
│ ├─ hzero-starter-file-jdcloud JD Cloud Storage Support Component
│ └─ hzero-starter-file-ceph Ceph Storage Support Component
├─ hzero-starter-social-parent Third-party Login Parent Component
│ ├─ hzero-starter-social-core Third-party Login Core Dependency
│ ├─ hzero-starter-social-qq Third-party QQ Login
│ ├─ hzero-starter-social-wechat Third-party WeChat Login
│ ├─ hzero-starter-social-sina Third-party Sina Weibo Login
│ ├─ hzero-starter-social-wechat-enterprise Enterprise WeChat Login
│ ├─ hzero-starter-social-hippius Haima Hui Third-party Login Component
│ └─ hzero-starter-social-apple Apple IOS Third-party Login
├─ hzero-starter-integrate-parent Third-party Support Parent Component
│ ├─ hzero-starter-integrate-core Third-party Support Core Component
│ ├─ hzero-starter-integrate-wechat-official WeChat Official Account Support Component
│ ├─ hzero-starter-integrate-dd DingTalk Support Component
│ └─ hzero-starter-integrate-wechat-enterprise Enterprise WeChat Support Component
├─ hzero-starter-sms-parent SMS Service Parent Component
│ ├─ hzero-starter-sms-core SMS Service Core Support Component
│ ├─ hzero-starter-sms-aliyun Aliyun SMS Support Component
│ ├─ hzero-starter-sms-qcloud Tencent Cloud SMS Support Component
│ └─ hzero-starter-sms-baidu Baidu Cloud SMS Support Component
├─ hzero-starter-call-parent Voice Message Parent Component
│ ├─ hzero-starter-call-core Voice Service Support Component
│ └─ hzero-starter-call-jingdong JD Voice Service Component
└─ hzero-template-parent Login Template Parent Component
├─ hzero-template-oauth-main Simplified Login Template Component
└─ hzero-template-oauth-slide Login Template with Carousel Component
Installation
Please follow the installation documents to install HZERO, and choose the installation mode according to your actual situation.
Start using HZERO
For more information, please read the document.
Start development
HZERO microservice development framework has two aspects, namely Microservice backendand Frontend。
If you want to develop microservice backend, please refer to the document for microservice developers.
In addition, with the help of the document for frontend developers, you can use HZERO's frontend styles.
HZERO composition
This repository contains the source code of HZERO documents. If you want to find a single component, you can access the repository of the component itself.
Frontend application
- hzero-front - HZERO frontend uses AntD Pro for encapsulation and extension. The core technical stack includes React, AntD Pro, and Node.js
- hzero-template-parent- HZERO login homepage template, developed based on thymeleaf. Currently supports standard pages and sliding pages.
Backend microservice
- hzero-register - Based on Eureka, the platform registration center service includes service registration and discovery, service health checks, service monitoring, and other registration center functions.
- hzero-config - Configuration service as configuration center, provides configuration storage and push service for other services in the microservice system. Spring Cloud provides a default configuration center implementation, including svn, git, etc. Hzero-config is based on database implementation, can manage large amounts of configuration, and has a faster configuration push way.
- hzero-gateway - HZERO gateway service, based on Spring Cloud Gateway for secondary encapsulation, as the platform's unified external entrance, mainly has service routing, authentication, traffic control, etc. management functions.
- hzero-oauth - hzero-oauth service is based on Spring Security, Spring OAuth2, JWT implementation of unified authentication service center, login based on Spring Security's standard login flow. Client authorization supports OAuth2.0's four authorization modes: authorization code mode, simplified mode, password mode, client mode, authorization flow is consistent with standard OAuth2 flow. Web end uses simplified mode (implicit) login system, mobile end can use password mode (password) login system. At the same time, it also supports three-party account login way based on Spring Social, such as WeChat/QQ, Alipay, Weibo, etc., and provides extension mode, supports more three-party channels.
- hzero-swagger - Used for managing and debugging API documents for platform development and testing
- hzero-admin - Management service, basic service, puts routing, limit, break, etc. functions in an easy-to-use way, centralized in management service to control, provides automatic routing refresh, permission refresh, Swagger information refresh service, provides interface-based service, configuration, routing, limit, break management functions, and Spring Boot Admin console.
- hzero-platform - Platform basic function service, mainly includes system basic settings, such as system configuration, configuration management, etc.; development management, such as value set management, personalized management, data source management, etc.
- hzero-iam - Permission management service, platform's unified permission architecture, used to manage roles, menus, sub-accounts, etc.
- hzero-file - File management service, provides simple and easy-to-use file storage functions, has the ability to interface with multiple cloud object storage services, and is easy to extend, at the same time supports server FTP protocol file upload, supports large file breakpoint resume, file preview, word online editing, PDF watermark, etc.
- hzero-message - Message management service, supports SMS, email, enterprise WeChat, DingTalk, phone voice, Webhook, internal message sending, and can flexibly manage message templates and interface with cloud platforms supporting microservices.
- hzero-scheduler - Distributed scheduling service - Quartz service end responsible for task scheduling, task execution by executor to complete. This service specifically includes executor management, concurrent task management, log management, and concurrent request, etc.
- hzero-report - Report service, through configuring data sets, executing SQL or query URL, getting data to render flat reports, bill reports, graph reports, etc.
- hzero-import - General import service, supports Excel, CSV data import, supports custom rendering of Excel templates, custom data validation, and custom data import. Excel reading will never overflow memory.
Service Plugin
- hzero-plugin-parent - Service plug-in management service, unified management of service plug-in functions, service plug-ins can be deployed through POM dependencies when needed.
- hzero-gateway-helper - Gateway authentication component, provides top-level interface endpoints and authentication filter interfaces, products or projects can customize authentication logic or add specific authentication logic.
Service Client
- hzero-boot-parent - Service client management service, extracts client components from corresponding services for high-frequency HZERO functions, making it easier to use and maintain in services, and only needs to be imported and injected with the corresponding client entry class when calling in services.
General Development Component
- hzero-starter-parent - HZERO general development component, mainly provides some basic capabilities within HZERO services, including general mapper components, general Redis tool components, dynamic JDBC components, and SQL parser components.