# alibaba/lowcode-engine

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/alibaba-lowcode-engine).**

15,881 stars · 2,754 forks · TypeScript · mit

## Links

- GitHub: https://github.com/alibaba/lowcode-engine
- Homepage: https://lowcode-engine.cn
- awesome-repositories: https://awesome-repositories.com/repository/alibaba-lowcode-engine.md

## Topics

`alibaba` `low-code` `lowcode`

## Description

This project is a modular framework designed for building custom visual editors and low-code design environments. It provides a core engine that manages the lifecycle of web application projects, enabling developers to construct extensible design surfaces, component management systems, and property configuration panels.

The platform distinguishes itself through a plugin-based architecture that allows for the injection of custom functionality and UI components at runtime. It utilizes a standardized protocol for component metadata, ensuring that materials remain interoperable across different design environments. By employing a schema-driven approach to state management, the engine synchronizes visual changes made within the editor directly with the underlying project model.

The framework includes comprehensive tools for interface construction, allowing for the modular configuration of panels, hotkeys, and layout components. It also provides programmatic interfaces for manipulating document nodes and component properties, alongside a suite of command-line utilities that facilitate the development, testing, and debugging of custom editor extensions.

## Tags

### Development Tools & Productivity

- [Low-Code Development Platforms](https://awesome-repositories.com/f/development-tools-productivity/low-code-development-platforms.md) — Provides a modular framework for building custom visual editors and design environments that support drag-and-drop development.
- [Editor Configurations](https://awesome-repositories.com/f/development-tools-productivity/editor-configurations.md) — Provides a modular kernel for building custom low-code design environments with extensible configuration setters. ([source](https://cdn.jsdelivr.net/gh/alibaba/lowcode-engine@main/README.md))
- [Plugin Orchestration](https://awesome-repositories.com/f/development-tools-productivity/plugin-orchestration.md) — Orchestrates the plugin lifecycle to manage the initialization and runtime behavior of modular extensions. ([source](https://lowcode-engine.cn/site/docs/api/))
- [Build Toolchains](https://awesome-repositories.com/f/development-tools-productivity/build-toolchains.md) — Manages the full lifecycle of building, testing, and deploying custom visual editors and component libraries.

### Software Engineering & Architecture

- [Development Kits](https://awesome-repositories.com/f/software-engineering-architecture/integration-extensibility/extensibility/development-kits.md) — Provides a set of core tools and interfaces for constructing extensible design surfaces and component management systems.
- [JSON-Driven Configuration Schemas](https://awesome-repositories.com/f/software-engineering-architecture/application-lifecycle-management/configuration-management/configuration-formats-and-schemas/configuration-formats/json-driven-configuration-schemas.md) — Maintains application structure through a centralized JSON schema that synchronizes visual changes with the project model.
- [Extensible Plugin Architectures](https://awesome-repositories.com/f/software-engineering-architecture/extensible-plugin-architectures.md) — Provides a modular kernel that allows for the injection of custom functionality and UI components at runtime.
- [Modular Plugin Architectures](https://awesome-repositories.com/f/software-engineering-architecture/modular-plugin-architectures.md) — Extends design environments by creating and managing modular plugins that modify editor behavior at runtime.
- [Design Project Models](https://awesome-repositories.com/f/software-engineering-architecture/project-management-governance/project-management/design-project-models.md) — Provides programmatic access to design project models, allowing for the manipulation of document nodes and component properties. ([source](https://lowcode-engine.cn/site/docs/api/))
- [Event Bus Architectures](https://awesome-repositories.com/f/software-engineering-architecture/event-bus-architectures.md) — Coordinates user interactions and state changes across the design surface using a centralized messaging bus.

### User Interface & Experience

- [Visual Component Builders](https://awesome-repositories.com/f/user-interface-experience/visual-component-builders.md) — Provides a modular framework for building custom visual editors and low-code design environments through drag-and-drop component assembly.
- [Component Registration Systems](https://awesome-repositories.com/f/user-interface-experience/component-registration-systems.md) — Automates the discovery and registration of UI components using standardized metadata descriptors.
- [Custom Component Extensions](https://awesome-repositories.com/f/user-interface-experience/custom-component-extensions.md) — Enables custom component integration by defining design-time metadata and property setters for drag-and-drop functionality. ([source](https://lowcode-engine.cn/site/docs/api/))
- [Editor Interface Builders](https://awesome-repositories.com/f/user-interface-experience/programmatic-element-construction/editor-interface-builders.md) — Enables the construction of custom design environments by managing panels, hotkeys, and layout components. ([source](https://lowcode-engine.cn/site/docs/api/))
- [Layout Composition Frameworks](https://awesome-repositories.com/f/user-interface-experience/layout-composition-frameworks.md) — Organizes the editor interface into modular panels and slots that can be dynamically configured.

### Graphics & Multimedia

- [Canvas Node Manipulation](https://awesome-repositories.com/f/graphics-multimedia/immersive-interactive-systems/user-interaction/canvas-node-manipulation.md) — Manages canvas interactions by tracking node selection, hover states, and drag-and-drop positioning. ([source](https://lowcode-engine.cn/site/docs/api/))

### Networking & Communication

- [Interoperability Standards](https://awesome-repositories.com/f/networking-communication/communication-protocols-architectures/communication-protocols-standards/interoperability-standards.md) — Defines standardized specifications for component metadata to ensure interoperability across different design environments.
