《GitHub精选》是Github的高质量项目共享计划,包括技术、学习、实用性和有趣的内容。
本期推荐的是nocodb,知名电子表格-数据库混合体 Airtable 产品的开源替代品。一.nocodb介绍
nocodb不仅是数据管界面化的管理工具,它还可以把数据库和图片等数据转化成表格的方式展现,还提供了团队协作、工作流接入以及更加开放 API 服务。让团队在数据上工作,真正体会到了数据就在手边“即视即用”。nocodb可以将任何 Mysql、PostgreSQL、SQL Server、SQLite 和 MariaDB 转换为智能电子表格。
二.快速入手
1.使用Docker
docker run -d --name nocodb -p 8080:8080 nocodb/nocodb
保留数据可以在/usr/app/data/下面操作
2.使用Npm
npx create-nocodb-app
3.使用Git
git clone
cd nocodb-seed
npm install
npm start
三.nocodb特点
nocodb拥有丰富的电子表格界面,支持以下多种
1.轻松搜索、排序、过滤、隐藏列
2.创建视图:网格、图库、看板、甘特图、表单
3.共享视图:公共和密码保护
4.将图像上传到单元格(适用于 S3、Minio、GCP、Azure、DigitalOcean、Linode、OVH、BackBlaze)
5.角色:所有者、创建者、编辑者、评论者、查看者、评论者、自定义角色
6.访问控制:即使在数据库、表和列级别也有细粒度的访问控制
nocodb还可以用在流程化工作软件上,比如微信,短信,电子邮件,支持多种API方式。
nocodb支持
REST API (Swagger)方式访问。
GraphQL API方式访问。
包括 JWT 身份验证和社交身份验证方式访问。
与 Zapier、Integromat 集成的 API 令牌方式访问。
四.相关设置信息
NocoDB 需要一个数据库来存储电子表格视图和外部数据库的元数据。这个数据库的连接参数可以在NC_DB环境变量中指定。
例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
环境变量的设置:详见Git介绍
开发设置
git clone
cd nocodb
# run backend
cd packages/nocodb
npm install
npm run watch:run
# open localhost:8080/dashboard in browser
# run frontend
cd packages/nc-gui
npm install
npm run dev
# open localhost:3000/dashboard in browser
开发者们建造这个的目的还是非常明确的,我们生活工作中很多地方都要用到电子表格或者数据库来解决业务需求。然而在数据库上工作的速度远赶不上有图形化界面的速度,试图用其他SaaS产品来解决问题意味着不断的支出和不稳定因素,所以开源一个这样的项目无疑是对每一位工作者的帮助。
GITHUB:gi