# zTable
**Repository Path**: cpsoft13/z-table
## Basic Information
- **Project Name**: zTable
- **Description**: 开源多维表格
- **Primary Language**: Unknown
- **License**: MIT
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2026-05-12
- **Last Updated**: 2026-05-29
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# zTable — 协作数据平台 / Collaborative Data Platform
[English](#english) | [中文](#chinese)
---
## English
**zTable** is an open-source collaborative data platform that combines the familiarity of spreadsheets with the power of relational databases. Build tables, create forms, design automation pipelines, and compose application pages — all in one place.
### Features
- **Spreadsheet Grid** — Inline cell editing, range selection, copy/paste, sort, filter, group, import/export CSV & Excel
- **Multiple Views** — Grid, Kanban, Calendar, Gallery, Form, and Dashboard
- **Field Types** — Text, Number, Date, Checkbox, Single/Multi Select, Attachment, URL, Email, Rating, Duration, Link Record, Lookup, Formula, Auto Number
- **Form Designer** — Drag-and-drop form builder with publishable public forms
- **App Page Builder** — Compose app pages with widgets, responsive layout for desktop/tablet/mobile
- **Automation Engine** — Lua scripting + visual flow editor with trigger-executor architecture
- **WASM Plugin Host** — Extend functionality with WebAssembly plugins
- **Permission System** — Role-based access control
- **REST API** — Full CRUD API for programmatic access
### Tech Stack
| Layer | Technology |
|-------|-----------|
| Backend | Rust, Axum, SeaORM, SQLite/PostgreSQL, WASM (wasmtime), Lua (mlua) |
| Frontend | React 18, TypeScript, Vite 6, Ant Design, ReactFlow, Zustand |
| Automation | Lua sandbox, Visual flow DAG editor, Bidirectional code<->graph sync |
| Infrastructure | Docker, Nginx, GitHub Actions CI |
### Quick Start
```bash
# Clone
git clone https://gitee.com/cpsoft13/z-table.git
cd z-table
# Backend
cp dev.toml.example dev.toml # edit as needed
cargo run -p ztable-api
# Frontend (separate terminal)
cd web
npm install
npm run dev
```
Backend runs on `http://localhost:10087`, frontend on `http://localhost:10001`.
### Docker
```bash
docker build -t ztable .
docker run -p 8080:80 ztable
```
### Project Structure
```
zTable/
├── crates/ # Rust workspace
│ ├── api/ # Axum HTTP server
│ ├── core/ # Domain models & business logic
│ ├── common/ # Shared types & utilities
│ ├── storage/ # Database abstraction
│ ├── plugin-host/ # WASM runtime
│ └── automation-engine/ # Lua sandbox & codegen
├── web/ # React frontend
├── wiki/ # Documentation & knowledge base
└── scripts/ # Dev utilities
```
### License
MIT — see [LICENSE](./LICENSE)
---
## 中文
**zTable** 是一款开源的协作数据平台,融合了电子表格的易用性与关系型数据库的强大能力。支持建表、表单、自动化流水线和应用页面搭建。
### 功能特性
- **电子表格视图** — 内联编辑、区域选择、复制/粘贴、排序、筛选、分组、CSV/Excel 导入导出
- **多视图** — 表格、看板、日历、画廊、表单、仪表盘
- **字段类型** — 文本、数字、日期、勾选框、单选/多选、附件、URL、邮箱、评分、时长、关联记录、查找、公式、自动编号
- **表单设计器** — 拖拽式表单搭建,支持公开发布
- **应用页面搭建器** — 组件化页面编排,PC/平板/手机三端响应式布局
- **自动化引擎** — Lua 脚本 + 可视化流程图编辑器,触发器-执行器分离架构
- **WASM 插件宿主** — 通过 WebAssembly 扩展平台能力
- **权限系统** — 基于角色的访问控制
- **REST API** — 完整 CRUD 接口,支持编程访问
### 技术栈
| 层次 | 技术 |
|------|------|
| 后端 | Rust, Axum, SeaORM, SQLite/PostgreSQL, WASM (wasmtime), Lua (mlua) |
| 前端 | React 18, TypeScript, Vite 6, Ant Design, ReactFlow, Zustand |
| 自动化 | Lua 沙箱, 可视化 DAG 编辑器, 代码↔图表双向同步 |
| 基础设施 | Docker, Nginx, GitHub Actions CI |
### 快速开始
```bash
# 克隆
git clone https://gitee.com/cpsoft13/z-table.git
cd z-table
# 后端
cp dev.toml.example dev.toml # 按需修改
cargo run -p ztable-api
# 前端(另起终端)
cd web
npm install
npm run dev
```
后端运行在 `http://localhost:10087`,前端运行在 `http://localhost:10001`。
### Docker
```bash
docker build -t ztable .
docker run -p 8080:80 ztable
```
### 项目结构
```
zTable/
├── crates/ # Rust workspace
│ ├── api/ # Axum HTTP 服务
│ ├── core/ # 领域模型与业务逻辑
│ ├── common/ # 共享类型与工具
│ ├── storage/ # 数据库抽象层
│ ├── plugin-host/ # WASM 运行时
│ └── automation-engine/ # Lua 沙箱与代码生成
├── web/ # React 前端
├── wiki/ # 文档与知识库
└── scripts/ # 开发工具脚本
```
### 开源协议
MIT — 详见 [LICENSE](./LICENSE)