多维表格
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

8.5 KiB

NocoDB
开源 Airtable 替代品

将任何MySQL,PostgreSQL,SQL Server,SQLite&MariaDB转换为智能电子表格。

Build Status Node version Twitter

WebsiteDiscordTwitter

OpenSourceAirtableAlternative

NocoDB - The Open Source Airtable alternative | Product Hunt

快速尝试

一键式部署

Heroku

Deploy NocoDB to Heroku with 1-Click

使用Docker

docker run -d --name nocodb -p 8080:8080 nocodb/nocodb:latest

为了持久化数据,你可以挂载/usr/app/data/

使用NPM

npx create-nocodb-app

使用git

git clone https://github.com/nocodb/nocodb-seed
cd nocodb-seed
npm install
npm start

GUI

使用仪表板使用 : http://localhost:8080/dashboard

加入我们的社区



截图

1

2

5

6

7

8

9

9a

9b

10

11

特征

丰富的电子表格接口

  • 搜索,排序,过滤,隐藏uber轻松的列
  • 创建视图:网格,画廊,卡班,甘特,形式
  • 分享视图:公共和密码保护
  • 个人和锁定视图
  • 将图像上传到单元格(使用S3,Minio,GCP,Azure,Dimitedocean,Linode,OVH,Backblaze)!!
  • 角色:所有者,创建者,编辑器,评论者,查看器,评论者,自定义角色。
  • 访问控制:即使在数据库,表和列级别也是细粒度的访问控制。

工作流自动化应用商店:

  • 聊天:微软团队,松弛,不和谐,最重要的
  • 电子邮件:SMTP,SES,MailChimp
  • 短信:Twilio
  • whatsapp
  • 任何第三方API

Programmatic API访问通过:

  • 休息apis(播开)
  • GraphQLAPI。
  • 包括JWT身份验证和社交验证
  • 与Zapier,Integromat集成的API标记。

生产安装

NoCodb要求数据库存储电子表格视图和外部数据库的元数据。可以在NC_DB环境变量中指定此数据库的连接参数。

Docker

MySQL 示例

docker run -d -p 8080:8080 \
    -e NC_DB="mysql2://host.docker.internal:3306?u=root&p=password&d=d1" \
    -e NC_AUTH_JWT_SECRET="569a1821-0a93-45e8-87ab-eb857f20a010" \
    nocodb/nocodb:latest

Postgres 示例

docker run -d -p 8080:8080 \
    -e NC_DB="pg://host:port?u=user&p=password&d=database" \
    -e NC_AUTH_JWT_SECRET="569a1821-0a93-45e8-87ab-eb857f20a010" \
    nocodb/nocodb:latest

SQL Server 示例

docker run -d -p 8080:8080 \
    -e NC_DB="mssql://host:port?u=user&p=password&d=database" \
    -e NC_AUTH_JWT_SECRET="569a1821-0a93-45e8-87ab-eb857f20a010" \
    nocodb/nocodb:latest

Docker Compose

git clone https://github.com/nocodb/nocodb
cd docker-compose
cd mysql or pg or mssql
docker-compose up

环境变量

变量 强制 注释 如果缺少
NC_DB Yes 查看我们的数据库 URL 将在根文件夹中创建本地 SQLite
DATABASE_URL No JDBC URL 格式。 可以代替 NC_DB 使用。 用于一键式 Heroku 部署
DATABASE_URL_FILE No 包含 JDBC URL 格式的文件的路径。 可以代替 NC_DB 使用。 用于一键式 Heroku 部署
NC_PUBLIC_URL Yes 用于发送电子邮件邀请 从 http 请求参数的最佳猜测
NC_AUTH_JWT_SECRET Yes 用于认证和存储其他 secret 的 JWT secret 将会产生一个随机的 secret
NC_SENTRY_DSN No 用于 Sentry 监控
NC_CONNECT_TO_EXTERNAL_DB_DISABLED No 禁止使用外部数据库创建项目
NC_DISABLE_TELE No 禁用 telemetry
NC_BACKEND_URL No 自定义后端URL 将使用http://localhost:8080

开发安装

git clone https://github.com/nocodb/nocodb
cd nocodb

# 运行后端
cd packages/nocodb
npm install
npm run watch:run

# 在浏览器打开 localhost:8080/dashboard

# 运行前端
cd packages/nc-gui
npm install
npm run dev

# 在浏览器打开 localhost:3000/dashboard

对代码所做的更改会自动重新启动。

在本地运行 Cypress 测试

# 安装开发依赖(cypress)
npm install

# 使用 docker compose 使用所需的数据库运行 mysql 数据库
docker-compose -f ./scripts/docker-compose-cypress.yml up

# 使用以下命令运行后端 api
npm run start:api

# 使用以下命令运行前端 Web UI
npm run start:web

# 等到 3000 和 8080 端口都可用时,使用以下命令运行Cypress测试
npm run cypress:run

# or run following command to run it with GUI
npm run cypress:open

贡献

  • 请看一下 ./scripts/contribute/HowToApplyLicense.md
  • 忽略为 .json 或 .md 或 .yml 添加标头

🎯 为什么我们建立这个?

大多数互联网业务都配备了电子表格或数据库以解决其业务需求。电子表格每天都会合作地使用十亿+人类。但是,我们在数据库上运行类似速度的方式,这在计算时更强大的工具。用SaaS产品解决此问题的尝试已经意味着可怕的门禁控制,供应商锁定,数据锁定,突然的价格变化,最重要的是将来有可能的玻璃天花板。

❤ 我们的任务 :

我们的使命是为数据库提供最强大的无码界面,该界面是世界上每一个互联网业务的开源。这不仅将民主化进入强大的计算工具,而且还带来了一十亿+人,他们将在互联网上具有根本修补和建筑能力。