分享 7 个开源低代码平台
低代码开发平台 (LCDP),也称为低代码应用程序平台 (LCAP),是用于快速应用程序开发的软件。低代码平台是更传统软件开发方法的一种简单快捷的替代方法。
开源低代码开发平台是一个平台,其中源代码是免费的,可供最终用户下载和部署,用户可以根据需要编辑和升级代码。
大多数时候,它是拖拉拽式的,有时甚至是基于节点的,这允许使用流程图和其他图表在操作和功能中进行编程。
在现实开发中,有可能有低代码的需求,因此本文分享几个专门从事各自领域的不同平台,包括应用程序开发、自动化、网站和物联网:
- Budibase :用于最佳应用程序开发的操作系统
- Joget :简单有效的开源平台
- Convertigo :第一个开源企业无代码平台
- Huginn :创建和管理 Zaps,就像 Zapier 一样
- StackStorm :没有成本的企业平台
- Node-Red :物联网操作系统
- PyCaret:机器学习平台
通过使用用户界面,它不仅吸引并迎合了开发人员,还吸引了对创建 MVP 或完全开发和部署的应用程序感兴趣的普通非开发人员。如果需要,低代码确实允许最少的手工编码,尽管应用程序的底层功能取决于用户界面下的基础设施。
什么是开源低代码开发平台?
典型的低代码开发环境包含以下特征:
- 拖拉拽界面允许简单的开发过程。
- 一种可视化建模工具,允许创建 UI、数据模型和功能,并可选择在需要时添加手写代码。
- 处理数据结构、检索和存储的连接器。
- 开箱即用的功能无需从头开始构建核心模块,而是专注于构建新代码。
- 自动化的应用程序生命周期管理器,允许构建、部署、调试以及暂存和生产过程,也可以进行测试。
- 虽然低代码软件通常遵循这些准则,但基本没有两个低代码软件是相同的,它们都是为满足特定功能而设计的。
说到低代码,顺便介绍一下另外两个概念高代码和无代码。
- 高代码环境都提供自动化、模板、更全面的 UI 和资源,以使编程更轻松、更快速。这要归功于
Microsoft Visual Studio
等集成开发环境 (IDE)。 - 无代码开发中,不需要编码知识。只需要精通计算机即可使用无代码平台的开发工具,这允许没有开发人员背景的团队创建管理的软件并完成日常任务。
为什么要使用开源低代码?
开源低代码开发平台是一种开源解决方案,允许用户通过拖放界面创建应用程序,最大限度地减少编写和维护所需的代码量。开源低代码平台通常是免费的。但是,某些平台以合理的费用提供企业级功能。
封闭(私有)源代码软件和开源软件有什么区别?
有些软件的源代码只有创建它的人、团队或组织——并保持对它的独占控制——才能修改,称这种软件为“专有”或“闭源”软件。
只有专有软件的原始作者才能合法地复制、检查和更改该软件。为了使用专有软件,计算机用户必须同意(通常通过签署他们第一次运行该软件时显示的许可证)他们不会对软件作者未明确允许的软件进行任何操作。Microsoft Office 和 Adobe Photoshop 是专有软件的示例。
开源软件则不同,它的作者将其源代码提供给其他想要查看该代码、复制它、从中学习、更改它或共享它的人。
开源低代码平台的优缺点
低代码的优点 | 低代码的缺点 |
---|---|
灵活性:对于开源软件,灵活性是支持这种软件部署方法的关键特性,最终用户根据他们有权访问的开发人员资源获得最终的定制潜力,而无需担心公司违反条款和条件。 | 支持和售后限制:由于开源产品不是盈利或商业驱动的,用户支持可以由社区或专门从事该产品的承包商管理,这将导致基于产品的不同且通常不完整的知识。 |
控制:专有软件是封闭源代码,通常违反条款和条件对产品进行逆向工程。开源颠覆了这一点,最终用户可以自定义和控制产品背后的基本代码以供自己部署。拥有资源的公司可以利用这一点,创造出真正符合目的的产品。 | 可持续性和孤儿式软件:这个潜在问题是商业产品和开源项目的典型问题。最坏的情况是黑客攻击或产品由于缺乏社区或开发人员的兴趣而成为孤儿。但同样,管理自己资源的公司可以在未来支持这些平台。 |
可靠性:就像孤儿软件一样,可靠性可以通过开放软件和专有软件来实现。用户依赖公司更新、修补和增强代码库以及开源软件社区。更新和补丁可以通过社区进行管理和支持。 | 更改许可条款:开源软件的条款和条件仍然是社区驱动的,需要达成共识,但通常是开放的。如果您在平台之上为最终用户提供服务(由于缺乏控制),这可能会导致问题。 |
透明度:低代码平台的主要用例是它们很灵活,可以根据用户的要求进行定制。开源代码支持这一点,用户可以在其中查看和自定义代码,并且由于产品通常由社区驱动,因此路线图和产品计划更加透明。 | 企业使用费:一个小缺点是部署和运行自己的开源产品实例所需的成本和资源。从长远来看,这是微不足道的,但对于寻求廉价替代品的不成熟的消费者来说可能是一个障碍。 |
同行评审和社区:拥有热情的程序员和公民编码员的开源社区意味着代码可以得到同行评审和善意成员的支持。这是开发人群对开源项目(维基百科、GitHub 等)的集体支持性质的典型表现。 | |
没有供应商锁定和降低成本:除了开源项目的条款和条件,基本上是“aperta”或开放/免费供您随意使用。没有锁定条款和强制升级或付款,这可能导致某些平台由于高昂的拥有成本而无法持续使用。 |
开源低代码
1. Budibase:最佳应用程序开发的操作系统
Budibase 是一个开源低代码平台,可以更快地构建业务应用程序,从而增强团队能力并提高生产力。IBM、Deloitte、Proctor 和 Gamble、Rakuten 等企业在内部使用该平台。
它利用内部数据库,但也集成了领先的数据库,包括 ArangoDB、DynamoDB、Mongo DB、MySQL、S3 等。
产品特点包括:
- 为所有团队成员快速构建内部工具
- 在企业中设置和自动化表单
- 创建管理面板来管理数据和
- 团队和客户的简单门户
Budibase 可以直接部署到云服务器上,或者自定义部署。下面尝试通过 Docker 的方式来部署,先确保计算机上安装 docker 和 docker compose。
docker run -d -t --name=budibase -p 10000:80 -v $PWD/data:/data --restart unless-stopped budibase/budibase:latest
构建完成后,在浏览器输入 http://127.0.0.1:10000
,可以看到如下界面,输入用户名和密码:
2. Joget:简单有效的开源平台
Joget DX 被认为是新一代开源低代码平台,通常是为更快、更简单的数字转换 (DX) 而构建的。Joget 结合了快速应用程序开发、业务流程自动化和工作流管理的优点。
Joget 使业务用户、非编码人员或编码人员能够使用单一平台轻松构建、交付、监控和维护企业应用程序。Joget DX 在一个简单、灵活和开放的平台中结合了业务流程自动化、工作流管理和低代码应用程序开发的优点。
自成立以来,拥有超过 200,000
次开源下载和超过 12,000
名社区成员,最新的主要版本 Joget DX 是 Joget Workflow 的下一代继任者。Jogged DX 在一个简单、灵活和开放的平台中结合了流程自动化、工作流管理和低代码应用程序开发的优点。
产品特点:
- 渐进式 Web 应用程序 (PWA) 和用户体验 (UX)
- Web 推送通知和离线支持
- 内置应用程序性能管理
- Web 应用程序日志查看器
- 用于协同开发和部署的嵌入式 Git 集成
- 人工智能 (AI) 和智能决策
- 捆绑无代码 TensorFlow AI 插件
- 捆绑无代码规则引擎插件
- 通过附加构建器的可扩展性,以及
- 增强的工作流程
3. Convertigo:用低代码加速项目开发
想象一下,可以制作任何想要的应用程序。从简单方便的劳动力应用程序到企业级多设备交易应用程序,帮助公司加速业务发展。
使用 Low Code 平台应用程序开发更快上线,这使企业更高效地获得业务成功,交付完整的应用程序,类似于 Pro Code,但速度更快,成本更低。
Convertigo 的解决方案具有以下优势:
- 数据安全和用户认证,
- 离线数据和任务调度,
- 活动监控,
- 数据和 API 连接器,
- 网络和移动响应,
- 后端业务逻辑和工作流。
4. Huginn:创建和管理 Zaps,就像 Zapier 一样
就像 Zapier 和 Integromat 一样,Huginn 是支持用户创建低代码自动化和软件间连接的开源版本。Huginn 拥有一个超级活跃的社区,在 Github 平台上拥有超过 3 万颗星,如果在选择低代码自动化平台时必须坚持开源,Huginn 是一个简单的选择。
产品特点:
- 为他们的数据设置和抓取网站,甚至在他们更改时收到电子邮件。
- 连接到 Jabber、JIRA、MQTT、nextbus、Pushbullet、RSS、Slack、StubHub、翻译 API、Twilio、Twitter 等
- 在受控时间向您的听众发送摘要电子邮件。
- 跟踪高频事件的计数并在它们出现峰值时立即发送 SMS。
- 发送和接收 WebHook
- 随着时间的推移跟踪设备或人员的位置
Docker 启动
docker run -it -p 3001:3000 huginn/huginn
5. StackStorm:没有成本的企业平台
StackStorm 是 Linux 基金会的一部分,是他们的首要项目之一。它提供了强大的功能,包括用户可以设置简单或复杂的自动机的“If This Then That”平台。该平台的另一个出色功能是其强大的事件驱动自动化流程,可以使用以下步骤自动化复杂的工作流程:
- 传感器——这些传感器是基于 Python 软件的传感器,可以监视触发 StackStorm 系统采取行动所需的任何事件。
- 触发器——启动所需事件发生的外部事件。有通用触发器(例如计时器、webhooks)和集成触发器(例如 Sensu 警报、JIRA 问题更新)。可以通过编写传感器插件来定义新的触发器类型。
- 操作——一般操作,如 ssh、REST 调用或集成(OpenStack、Docker、Puppet)发生在输入触发器发生后。这些操作可以由用户通过 CLI 或 API 直接调用,或者作为规则和工作流的一部分使用和调用。
- 规则——把他想象成一张流量图,以及事件如何在系统中运行。您必须将操作与所需的输出相匹配。
- 工作流——工作流将操作连接在一起形成流,定义顺序、转换条件并传递数据。大多数自动化通常不止一步,因此需要不止一项操作。
- 包——用户创建的工作流可以通过对集成(触发器和操作)和自动化(规则和工作流)进行分组来下载为“包”。这些可以在 StackStorm Exchange 上下载。
- 审计——审计日志非常适合跟踪和管理平台的开发日志。
6. Node-Red:最适合物联网
一个事件驱动应用程序的低代码项目,用于以新颖有趣的方式将硬件设备、API 和在线服务连接在一起。提供了一个基于浏览器的编辑器,可以使用面板中的各种节点轻松将流连接在一起,只需单击一下即可部署到其运行时。
- 项目地址:https://nodered.org/
7. PyCaret:最适合机器学习
是 Python 中的开源低代码机器学习库,可自动执行机器学习工作流程。它是一种端到端的机器学习和模型管理工具,可以成倍地加快实验周期并提高您的工作效率。