drip-table
                                
                                 drip-table copied to clipboard
                                
                                    drip-table copied to clipboard
                            
                            
                            
                        A tiny and powerful enterprise-class solution for building lowcode tables. 轻量、强大的企业级表格可视化搭建解决方案。
     Drip Table
    Drip Table
  
English | 简体中文 | Documentation | Discussions|Gitter
📖 Introduction
Drip tableis a dynamic table solution for enterprise level middle and background launched by JD retail. The project is based on React and JSON Schema . It aims to reduce the difficulty of developing table and improve work efficiency by simple configuration to quickly generate page dynamic table.
Drip table contains serval sub projects: drip-table, drip-table-generator, drip-table-driver-antd.
The introduction of each sub-project are as follows:
- 
drip-table: the core library of the solution for building dynamic tables. It's main ability is to render a dynamic table automatically when received data which conforms to theJSON Schemastandard.
- 
drip-table-generator: a visual tool for producing configuration data that meets theJSON Schemastandard in order to sent toDripTablefor rendering a table and columns.
- 
drip-table-driver-antd: a theme package which is composed ofAnt Designcomponents and icons.
⬆️ Getting Start
Drip table is divided into two application scenarios: configuration end and application end. The configuration side is mainly responsible for generating JSON Schema standard data through visualization and low-code. The function of the application side is to render the JSON Schema standard configuration data into a dynamic table.
The configuration side
- 
Install dependencies The configuration side depend on the application side, please make sure that drip-tableanddrip-table-driver-{drivername}are installed before installing dependencies.yarn yarn add drip-table-generatornpm npm install --save drip-table-generator
- 
Import at the entrance of a file import DripTableGenerator from "drip-table-generator"; import "drip-table-generator/dist/index.css";
- 
Use components in pages return <DripTableGenerator />;Then the configuration side can be rendered normally, as the sample screenshot below:  
The application side
- 
Install dependencies Install the drip-tableand adrip-tabletheme package at the same time:yarn yarn add drip-table drip-table-driver-{drivername}npm npm install --save drip-table drip-table-driver-{drivername}Theme packages below are available: - drip-table-driver-antd
 
- 
Import at the entrance of a file // import drip-table import DripTable from "drip-table"; // import a theme package, take antd as an example import DripTableDriverAntDesign from "drip-table-driver-antd"; // import ant-design css import "antd/dist/antd.css"; // import drip-table css import "drip-table/dist/index.css";
- 
Use components in pages const schema = { size: "middle", columns: [ { key: "columnKey", title: "Column Title", dataIndex: "dataIndexName", component: "text", options: { mode: "single", }, }, ], }; return ( <DripTable driver={DripTableDriverAntDesign} schema={schema} dataSource={[]} /> );Then the application side can be rendered normally, as the sample screenshot below:  
🤝 Contribution
If you're interested in this project, you're welcome to create ✨issue. We are appreciated for your ❤️star.
development
- 
Clone git clone https://github.com/JDFED/drip-table.git
- 
Install dependencies lerna bootstrap
- 
build independecies yarn yarn run buildnpm npm run build
- 
Run project yarn start
- visit http://localhost:8000
- drip-tabledemo page: /drip-table/guide/basic-demo
- drip-table-generatordemo page: /drip-table-generator/preview
For more commands, see DEVELOP . Please visit the official website address drip-table 。
License
MIT License