AMISS - Baidu's open-source low-code front-end framework
AMISS is an open-source low-code front-end framework from Baidu. It quickly generates various backend pages based on simple JSON configuration, eliminating the need for complex front-end code. AMISS supports forms, tables, charts, CRUD operations, and provides rich functionality...
What is Amis?
AMIS is an open-source low-code front-end framework from Baidu. It quickly generates various backend pages based on simple JSON configuration, eliminating the need for complex front-end code. AMIS supports forms, tables, charts, CRUD operations, and provides a rich set of out-of-the-box components. It boasts high extensibility and flexibility, allowing for easy integration into React or pure HTML projects. AMIS is equipped with a visual editor and supports enterprise-level features such as theme customization, internationalization, and access control, helping developers efficiently build complex backend systems, improving development efficiency and reducing development costs.
Amis's main functions
- Page generation based on JSON configurationGenerates page elements (such as forms, tables, charts, CRUD lists, etc.) directly from JSON strings, without writing any front-end code. Provides a visual drag-and-drop editor, allowing users with no prior experience to quickly get started.
- Strong low-code supportIt supports enterprise-level features such as complex form validation, internationalization, and access control. It provides custom field form controls and adaptive chart rendering to meet the needs of complex backend pages.
- High scalability and flexibilityIt offers a rich set of out-of-the-box components and supports theme and style customization. It boasts excellent compatibility, easily integrating into React or pure HTML projects, and supports secondary development.
- Enterprise-level feature supportSupports practical functions such as file upload and PDF preview. Provides complete CRUD (Create, Read, Update, Delete) operation support, making it easy to build a backend system.
- Highly efficient development experienceSimplify component-based development and support real-time preview. Provide detailed development guidelines and testing processes to facilitate quick learning and maintenance for developers.
AMIS's technical principles
- JSON-driven page renderingThe framework defines the page structure and interaction logic based on JSON configuration. The JSON data describes information such as the page layout, component types, data binding, and event handling. After parsing the JSON configuration, the framework dynamically generates the corresponding HTML structure and binds events to achieve page rendering and interaction.
- Component-based developmentAmis is based on a component-based design philosophy and includes a rich library of built-in components (such as form controls, tables, charts, etc.). Developers can quickly build complex pages by combining components. Components interact with each other and control behavior using JSON configuration.
- TypeScript and SCSSThe core of the framework is written in TypeScript, ensuring code maintainability and extensibility. Style development is based on SCSS, supporting custom themes and styles to meet the design needs of different projects.
- Compatible with multiple front-end frameworksBased on encapsulation and adaptation, it seamlessly integrates into React, Vue, or pure HTML projects. It provides a unified interface and configuration standard, allowing developers to easily embed AMIS pages into existing projects.
- Visual EditorIt provides a drag-and-drop UI editor, allowing users to generate JSON configurations through visual operations. The editor supports real-time preview, providing a WYSIWYG experience and further lowering the barrier to entry for low-code development.
Amis's project address
- Project official website:https://baidu.github.io/amis
- GitHub repository:https://github.com/baidu/amis
Application scenarios of AMISI
- Enterprise-level back-end management systemQuickly build backend systems for user management, order management, etc., supporting complex form validation and CRUD operations to meet enterprise-level needs.
- Data visualization and reportingGenerate dashboards, reports, and charts, supporting data binding and custom styles, making it suitable for quickly building data display pages.
- Rapid prototypingIt allows for the rapid generation of interface prototypes using a visual editor, making it suitable for verifying interaction logic and user experience during the product design phase.
- General form systemIt can be used to build online forms, questionnaires, etc., and provides rich form controls and validation functions without the need to write code manually.
- Microservice front-end integrationIn a microservice architecture, front-end pages of multiple services can be quickly integrated based on JSON configuration, reducing repetitive development work.