Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/baidu/amis
前端低代码框架,通过 JSON 配置就能生成各种页面。
https://github.com/baidu/amis
admin frontend frontend-framework json low-code low-code-development-platform lowcode no-code
Last synced: 6 days ago
JSON representation
前端低代码框架,通过 JSON 配置就能生成各种页面。
- Host: GitHub
- URL: https://github.com/baidu/amis
- Owner: baidu
- License: apache-2.0
- Created: 2019-04-28T07:42:14.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2025-01-03T02:34:26.000Z (10 days ago)
- Last Synced: 2025-01-03T03:28:33.728Z (10 days ago)
- Topics: admin, frontend, frontend-framework, json, low-code, low-code-development-platform, lowcode, no-code
- Language: TypeScript
- Homepage: https://baidu.github.io/amis/
- Size: 180 MB
- Stars: 17,633
- Watchers: 239
- Forks: 2,545
- Open Issues: 1,386
-
Metadata Files:
- Readme: README-en.md
- License: LICENSE
Awesome Lists containing this project
- awesome - baidu/amis - 前端低代码框架,通过 JSON 配置就能生成各种页面。 (TypeScript)
- awesomeLibrary - amix - 前端低代码框架,通过 JSON 配置就能生成各种页面。 (语言资源库 / typescript)
- awesome-nodejs - amis - LowCode Framework, Generate various pages through JSON configuration. ![](https://img.shields.io/github/stars/baidu/amis.svg?style=social&label=Star) (Scene / Lowcode)
- awesome-coding-startup - baidu/amis
- awesome-list - amis
- awesome - amis
- awesome-coding - amis: 直接通过 JSON 即可配置出完整的MIS系统
- awesome-lesscode - amis - commit/baidu/amis?label=%E6%9C%80%E5%90%8E%E6%9B%B4%E6%96%B0%E6%97%B6%E9%97%B4) (精选 LessCode 项目)
- awesome-nodejs - amis - 百度低代码框架,通过 JSON 配置就能生成各种后台页面 (Uncategorized / Uncategorized)
- awesome-hacking-lists - baidu/amis - 前端低代码框架,通过 JSON 配置就能生成各种页面。 (TypeScript)
- StarryDivineSky - baidu/amis
README
[Documentation (China)](https://aisuda.bce.baidu.com/amis/) |
[Documentation (Global)](https://baidu.github.io/amis/) |
[Visual Editor](https://aisuda.github.io/amis-editor-demo/) |
[amis-admin](https://github.com/aisuda/amis-admin) |
[AiSuDa](https://aisuda.baidu.com/)
Ruliu Group: 3395342 |
Ruliu Group 2: 5511067 |![build](https://img.shields.io/github/actions/workflow/status/baidu/amis/gh-pages.yml)
![license](https://img.shields.io/github/license/baidu/amis.svg)
![version](https://img.shields.io/npm/v/amis)
![language](https://img.shields.io/github/languages/top/baidu/amis)
[![codecov](https://codecov.io/gh/baidu/amis/branch/master/graph/badge.svg?token=9LwimHGoE5)](https://codecov.io/gh/baidu/amis)
![last](https://img.shields.io/github/last-commit/baidu/amis.svg)A low-code front-end framework that allows you to generate various backend pages using JSON configuration, greatly reducing development costs, and even eliminating the need for front-end expertise.
## Development Guide
The following is for those who want to contribute to the development of amis. For usage, refer to the documentation above.
> If GitHub downloads are slow, you can use the mirror on [gitee](https://gitee.com/baidu/amis).
Node.js versions 12/14/16 are recommended. Use npm 7+ because the workspaces feature is required.
```bash
# Install project dependencies. There may be errors with Node.js 12, but they don't affect normal use.
npm i --legacy-peer-deps# Start the project. Once compilation is complete, access it at http://127.0.0.1:8888/examples/pages/simple.
npm start
```If you're developing the editor, access it at `http://127.0.0.1:8888/packages/amis-editor/`.
### Testing
> Note: After modifying code locally, you must run npm run build to complete compilation before executing test cases (`npm test --workspaces`), as Jest doesn't support TypeScript directly.
```bash
# Install dependencies
npm i --legacy-peer-deps# Build the project
npm run build# Run all test cases
npm test --workspaces# Run a specific test case
# is the name of the test case, e.g., inputImage
npm test --workspace amis -- -t# Run a specific test file
./node_modules/.bin/jest packages/amis/__tests__/renderers/Form/buttonToolBar.test.tsx# Run a specific example in a test file
./node_modules/.bin/jest packages/amis/__tests__/renderers/Form/buttonToolBar.test.tsx -t 'Renderer:button-toolbar'# View test coverage
npm run coverage# Update snapshots
npm run update-snapshot# Update a single snapshot
# is the name of the test case, e.g., inputImage
npm run update-snapshot --workspace amis -- -t
```### Release Version
```bash
# Publish to internal registry
npm run publish# Publish to external environment
# First, set the version number with the following command
npm run version
npm run release
```### How to Contribute
Please use a branch for development. First, create a branch:
git checkout -b feat-xxx
After committing your changes, use `git push --set-upstream origin feat-xxx` to create a remote branch.
Then submit a PR using the system-generated link: https://github.com/xxx/amis/pull/new/feat-xxx.
Please write in TypeScript. All reasonable changes, new public renderers, test cases, or documentation submissions will be accepted.
## Contributors
## Low-Code Platform
amis enables low-code front-end development. For a complete low-code platform, we recommend using [AiSuDa](https://aisuda.baidu.com/).