快速开发
- 18 次浏览
【快速Web 开发】5 个可以在 2022 年重新定义 Web 开发的开源项目
Appsmith, Supabase, Appwrite, Plasmic, and Hasura
在过去的几年里,开源项目一直是现代 Web 开发背后的重要推动力。一开始,jQuery 是世界上最受欢迎的项目。
但是今天,我们有几个流行的项目,如 React、Vue、Next.Js、Django、Express 等。这些项目改进了我们处理前端、后端的方式,并使新功能和创新功能的实现变得更加容易。
今年,我们可能会在 Web 开发中看到一些重大的创新,尤其是低代码,这可以减少开发时间并轻松扩展。这些创新将来自大公司,一些来自初创公司,还有一些来自过去几年流行的开源项目。在这个博客中,我总结了五个(按字母顺序列出)最有前途的开源 Web 开发项目,这些项目肯定会在今年引起更大的轰动!
Appsmith
星数:11.2k+ | GitHub 存储库 |社区
Appsmith 是一个开源框架,可通过连接到任何数据库、GraphQL 或 REST API 的预构建 UI 小部件快速构建任何自定义业务软件,如管理面板、内部工具、仪表板等,并使用 Javascript 控制一切。
几乎每个组织(以及业余爱好项目)都经常使用此类软件。通常,开发人员会在 React 或 Angular 之类的东西上花费无数时间来创建这些应用程序。
今天,Appsmith 拥有超过 15 个以上的数据源和 35 个以上的 UI 小部件。对于喜欢在自己的平台上构建个人或可定制的内部应用程序的团队和个人来说,这非常有用。 Appsmith 还提供免费的云社区版本,其中包含构建完美内部工具所需的所有基本功能。
Appsmith 如何重新定义 Web 开发?
几乎每个组织或个人在某些时候都需要一个内部应用程序;这个开源的低代码工具不是从头开始构建所有东西,而是最好的解决方案。它将降低开发成本,节省时间,让开发人员和企业专注于更重要的事情。
Appwrite
GitHub 星数:15.3k+ | GitHub|社区
Appwrite 是面向前端和移动开发人员的开源端到端后端服务器,可让您更快地构建应用程序。它的目标是抽象和简化 REST API 和工具背后的日常开发任务,帮助开发人员更快地构建高级应用程序。
这个漂亮的框架将通过引导所有后端需求(包括数据库、存储、用户、地理和本地化、功能、控制台、隐私和安全性)为开发人员节省大量时间。今天,Appwrite 服务器被打包为一个 Docker 容器,您可以使用终端上的简单 docker-compose 命令轻松设置它,无论是在本地机器上还是在任何云提供商上。
Appwrite 团队计划推出一个云版本,以减少自托管所需的所有额外配置
Appwrite 如何重新定义 Web 开发?
开发和维护后端并不是一件容易的事。在 2022 年,依靠 Appwrite 等工具是更快交付应用程序的最佳方式。这不仅可以节省时间,还可以让开发人员通过非常简单的自定义完全控制规模的后端。
莲修罗(Hasura)
星数:25k+ | GitHub |社区
Hasura 不需要太多介绍,它已经出现了一段时间,并且绝对是开源社区中最受欢迎的项目之一。
Hasura GraphQL 引擎是一个超快的 GraphQL 服务器,它通过 Postgres 为您提供即时、实时的 GraphQL API,在数据库事件和业务逻辑的远程模式上具有 webhook 触发器。
因此,如果您需要一个超快的 GraphQLAPI 引擎而不编写任何代码,Hasura 是首选解决方案。在过去的一年中,Hasura 凭借其无服务器功能、细粒度访问控制、管理 UI 和迁移等功能变得强大!
Hasura 可以在任何地方运行,从您的本地机器到 Heroku 免费层再到 Amazon、Google 或 Microsoft 上的服务器。它被为一些世界上最大的企业和最令人兴奋的初创公司工作的技术人员使用和喜爱。
Hasura 如何重新定义 Web 开发?
Hasura 已经是用于构建强大的 GraphQL API 的成熟工具。 2022 年,根据我的经验和人脉,一些开发者社区计划迁移到基于 GraphQL 的后端,以提高它们的速度和可扩展性。
等离子(Plasmic)
星级:950+ | GitHub
Plasmic 让非开发人员可以直观地构建页面和其他演示内容,然后开发人员可以将其渲染到现有网站和 Web 应用程序代码库中。
Plasmic 通过自定义代码接受逻辑、数据和行为,以实现更复杂的数字组件交互。根据您使用的框架,您还可以通过在其中创建自己的 UI 组件来扩展 Plasmic。
设计师、营销人员、产品经理等可以使用 Plasmic 创建页面——从登录页面到内容页面再到页面模板;这节省了大量时间和团队之间的来回沟通。简而言之,Plasmic 可以成为开发人员友好的 Webflow 替代方案,可以完全控制前端。
最常见的用例是通过 API 使用 Plasmic 设计,例如 CMS 内容。不过,您还可以在代码库中生成代码,甚至可以将页面发布到 Shopify 等平台。 Plasmic 的最终目标是成为最通用的构建器并集成到任何环境中。
Plasmic 如何重新定义 Web 开发?
Plasmic 可以成为网络的革命性产品。它使营销人员、设计师、内容团队能够直接发布应用程序,并将开发人员从像素推送中解放出来。虽然很容易开始,但 Plasmic 为您提供了任何设计工具或页面构建器中从未见过的工具,让您可以大规模创建可维护的前端。
超级基地(Supabase)
星数:26.3K+ | GitHub |不和谐
Supabase 是 Firebase 的开源替代品,旨在允许您快速设置后端。它主要侧重于大规模提供四个基本要素:数据库 (Postgres)、身份验证、文件存储和自动生成的 API。
所有这些都可以直接从其出色的仪表板轻松设置和使用,而无需编写任何代码。当然,这些可以通过添加我们的代码风味进行相应的定制和定制。
不仅如此,Supabase 还附带了一个客户端,这使得开发人员可以轻松构建安全且可扩展的产品。 如果你是新手,我推荐这个关于蛋头的免费课程。
今天,Supabase 既可以在云版本上,也可以使用 Docker 在我们自己的基础设施上自托管。 更多细节在这里。 不仅仅是产品,Supabase 有很好的文档和社区。 他们几乎开源了他们构建的所有东西,甚至他们的 UI 库,仪表板!
Supabase 如何重新定义 Web 开发?
Supabase 是 Google 的 Firebase 的最佳开源替代品,它提供了一些其他实时数据库解决方案所没有的强大功能。 有了这个,开发人员可以将更多时间花在更多地关注产品上,而不是配置后端。
感谢您阅读这篇文章! 我很想听听你的想法。
原文:https://betterprogramming.pub/5-open-source-projects-which-can-redefine…
- 196 次浏览
【快速应用开发】构建 CRUD 应用程序的最佳工具
创建、读取、更新和删除 (CRUD) 是大多数应用程序所需的基本功能。换句话说,CRUD 应用程序使用户能够将数据输入和输出数据存储。
例如,考虑一个笔记应用程序。您可以创建一个将存储在数据库中的新笔记(创建)。每次重新访问应用程序(阅读)时,您都可以查看从数据库中检索到的所有笔记。您可以编辑笔记的内容(更新),也可以删除笔记(删除)。由于它们的基本性质和构成大多数 CRUD 应用程序的重复代码,它们非常适合使用无代码或低代码工具进行构建。
无代码或低代码工具使软件开发更易于访问,因为用户不必知道如何编写代码来构建应用程序。至少在某些方面,您可以避免开发人员进行简单构建的费用,或者只是更快地构建应用程序,通常使用拖放界面。
一个工具是无代码还是低代码绝对是您在将其应用到您的工作流程之前需要考虑的事情——您是否需要该工具可供没有编码经验的人使用?还是您只是需要它来消除一些重复的编码任务,例如设置 Web 服务器? - 但这远不是要记住的唯一标准。
本文比较了一些用于构建 CRUD 应用程序的最佳无代码和低代码工具的广泛特性。我们将介绍每种工具的灵活性、用户友好性、可扩展性、价格和其他独特功能。当我们结束时,您应该能够就哪种工具最适合您的用例做出明智的决定。
1. Appsmith “用于 CRUD 应用程序、管理面板和工作流的 Appsmith 开源框架”)
Appsmith 是一个开源工具,非常适合构建管理仪表板、CRUD 应用程序和工作流。这个低代码工具具有预先构建的 UI 小部件,例如表格、图表、表单和地图查看器,可帮助您构建连接到现有或新数据源的前端。 Appsmith 是构建内部工具的理想选择,虽然应用程序可以公开,但它不是为复杂的 UI 交互而构建的,就像您在现代电子商务或面向消费者的网站中看到的那样。
特征
- 直观的拖放小部件
- 轻松直接连接并查询您选择的受支持数据库,或使用 REST 或 GraphQL API 作为您的数据源
- 支持应用程序构建和测试的协作
- 在 Appsmith 云或您自己的 Docker 实例上托管的选项
- 完整的文档和视频学习材料
- 他们具有无限应用程序和页面的标准计划目前是免费的
- 通过 Google 或 GitHub 进行用户身份验证
- 申请可以公开
缺点
- 您需要知道如何编写查询和一些 JavaScript 才能充分利用该平台
- 面向公众的应用程序没有精细的权限
2. Budibase
Budibase 是另一个开源低代码工具,可以更轻松地构建和发布内部工具和 CRUD 应用程序。它具有与多个外部工具的集成,支持大多数主要数据库,并允许您使用 webhook 或 CSV 导入来填充应用程序中的数据。
像 Appsmith 一样,Budibase 是为构建基于 Web 的内部软件而构建的,但它需要更多的工作才能开始,因为您需要在您的计算机上安装他们的客户端。这也意味着如果不教他们使用 npm 和终端,您将无法让您的非技术团队成员在 CRUD 应用程序的某个地方进行快速更改。
特征
- 离线构建和测试应用程序
- 有吸引力的小部件以及其他样式属性可帮助您构建漂亮的 UI
- 在您的基础架构上自行托管您的应用程序或在 Budibase 云上托管
- 连接外部数据库或使用 Budibase 的内置数据库
- 广泛且经过深思熟虑的文档
- 内置身份验证和用户管理
缺点
- 需要您下载本地客户端
- 需要 JavaScript 和命令行技能
- 没有预建模板
3.Knack
Knack 是一个无代码工具,用于构建 CRUD 应用程序并允许用户查看、更新、管理、共享和分析他们的数据。 Knack 非常适合构建基于 Web 的内部应用程序,这些应用程序可以自动执行手动或基于纸张的流程,但如果您要插入现有数据集,它会受到一些主要限制。由于 Knack 仅支持内置数据库,因此您必须将应用程序数据导入 Knack,并且不会自动保持同步。 Knack 也有一些非常严格的 API 限制,因此您必须在扩展时要求增加使用上限。
特征
- 适用于不同用例的应用程序模板,可快速上手
- 应用程序托管在唯一的 URL 上,但您也可以将应用程序直接嵌入到现有网站中
- 内置身份验证、用户管理、电子邮件和通知自动化工作流程
- 内置数据库
- 编写自定义 JavaScript 和 CSS 以进行进一步自定义的选项
- 包含大量外部学习材料和活跃社区论坛的大量文档
- 使用 Zapier 和 Integromat 将数百种其他服务集成到您的应用程序的选项
缺点
- 仅适用于平台自己的内置数据库
- 没有免费计划。在为期 14 天的免费试用后,入门套餐的起价为每月 39 美元。
- API 速率限制可能会限制您的扩展能力
- 非常简单的 UI 组件
4. Bubble
Bubble 是一个无代码工具,主要用于构建全栈 Web 应用程序。虽然您几乎可以构建从 CRUD 应用程序到复杂的市场 SaaS 产品的任何东西,但对于较小的内部工具来说,这可能是矫枉过正。它学习起来很复杂,并且不能托管在您自己的基础架构上,因此您必须信任 Bubble 才能让您的应用程序保持运行。对自定义代码的支持也相当有限,因为 Bubble 主要是为非编码人员设计的。
特征
- 拖放、像素完美、完全可定制的小部件和设计
- 处理部署和托管
- 对用户数量、流量或存储的数据量没有硬性限制
- 广泛的文档以及 YouTube 和论坛上的活跃社区
- 具有第三方身份验证支持的内置用户管理系统
- 内置本地化会自动翻译您应用的文本
- 邀请多达 40 人使用托管权限和访问权限进行协作
- 能够从 Figma 导入设计并快速将它们转换为功能页面
- 您可以使用 Bubble 内置的无代码托管数据存储或连接到您自己的 SQL 数据库或 RESTful API 作为数据源
- 强大的应用程序模板和插件市场,让您更快地开始
- 免费套餐提供许多基本功能
- 带有测试和实时环境的内置版本控制
缺点
- 不能自托管以最大限度地提高安全性和性能
- 每个应用程序需要单独的计费计划
- 构建复杂应用程序时管理界面很慢
- 不是为创建简单的内部工具而设计的
- 陡峭的学习曲线
5. UI Bakery
UI Bakery 是另一个用于创建内部工具和 CRUD 应用程序的无代码 UI 构建器。它提供了现成的模板、预定义的小部件和其他可用于构建应用程序 UI 的 UI 组件。换句话说,UI Bakery 只处理 UI 开发,而您负责提供数据源和第三方集成。
由于 UI Bakery 专注于内部工具,因此您可能不会将其用于面向公众的应用程序、移动应用程序或面向客户的网站。它还需要相当高水平的技术专业知识才能开始,因为您会发现自己在构建 CRUD 应用程序时编辑 JavaScript 代码以连接数据库或 API。
特征
- 拖放式 UI 小部件
- 现成的模板
- 通过 UI Bakery 的内置工具或使用 Google、Twitter 或 Facebook 进行身份验证和用户管理
- 能够轻松自定义应用小部件的外观和感觉
- 处理在唯一 URL 上托管的应用程序
- 连接到 SQL 数据库,例如 Postgres、MySQL、Google Sheets 或 Firebase,或使用 HTTP API 作为数据源
缺点
- 免费套餐仅允许您试用产品
- 非常小的用户社区,因为它是一个相对较新的产品
- 添加数据连接和 API 集成所需的技术背景
- 目前无法从头开始创建自定义组件
6. Retool
Retool 是一个以企业为中心的低代码平台,用于使用拖放构建块构建自定义内部 CRUD 应用程序。像上面讨论的大多数工具一样,Retool 主要是一个 UI 构建器。您必须编写查询或自定义 JavaScript 从数据库或外部 API 获取数据。
Retool 的免费计划非常有限,而且会很快变得昂贵,因为它们是按最终用户收费的。这意味着如果您希望您的十个队友在 Retool 上访问您的 CRUD 应用程序,您将每月支付 100 美元!
特征
- 通过与大多数数据库或任何使用 REST、GraphQL 或 gRPC API 的连接来提供您自己的数据
- 内置身份验证、授权和审计日志管理
- 可以通过 Docker 或 Kubernetes 或通过具有唯一 URL 的 Retool 进行本地托管
- 通过同步 Git 存储库支持版本控制
- 各种现成的模板
- 使用 JavaScript 进行自定义的选项
- 广泛的文档和活跃的社区论坛
-
缺点
- 有限的免费套餐,对于大型团队来说价格昂贵
- 必须编写自己的数据库查询或 HTTP 请求来与数据源交互
- 不支持面向公众的应用程序
7. Glide
Glide 是一个无代码 CRUD 应用程序构建器,专门使用 Google 表格作为数据源。虽然这对于许多用例来说是一个严重的限制,但它也使非技术用户可以很容易地构建内部或面向公众的 Web 应用程序的原型。
虽然 Glide 与 Zapier 集成以允许您与其他服务集成,但自动化工作流程仍然相当有限。这不是一个糟糕的原型设计工具,特别是如果你想让你的非技术团队成员能够创建移动应用程序,但你很快就会遇到它的局限性。
特征
- 方便的拖放界面构建器
- 预构建的即用型模板和应用程序可帮助您快速入门
- 支持 iOS 和 Android 部署,因此您可以构建多平台应用程序
- 简单地部署到 Glide 的服务器和使用您自己的域的选项
- 直截了当的文档和活跃的社区论坛
缺点
- 免费套餐仅支持移动应用
- 不能使用外部数据源或 API
- 有限的集成和自动化选项
8. Airtable
Airtable 是一个通过类似电子表格的界面创建和共享关系数据库的平台,但您也可以将它用于非常有限类型的 CRUD 应用程序。用户界面简单、多彩且友好,任何人都可以在几分钟内启动数据库。每个 Airtable 基础都带有一个 API 和有限的免费存储空间。
虽然使用 Airtable 很容易上手——即使对于非技术团队成员也是如此——但你自己定制 Airtable 的选择非常有限。它不与其他数据库或 API 源同步,权限不是很精细,使用 Airtable 创建用户界面的选项有限。
特征
- 支持与其他 Airtable 应用程序、第三方服务或使用其 API 的您自己的自定义应用程序集成
- 支持实时协作和设备同步
- 展示不同用例的模板库
缺点
- 必须使用 Airtable 的存储系统,并且不能与没有自定义代码的现有数据库集成
- API 将您限制为每秒 5 个请求
- 对于大型团队来说可能会变得昂贵,因为定价是基于每个用户的
- 文档难以定位和导航
- 无法自托管或使用自定义域
9. Jet Admin
Jet Admin 是另一个无代码内部 CRUD 应用程序构建器。它提供了一个简单的拖放界面,允许您连接块并添加自定义工作流程以自动化后端流程。虽然它们有许多集成,但它们目前不支持 DynamoDB、MongoDB 或 Zapier,因此您的数据库和自动化选项有些有限。
特征
- 免费套餐包括支持和用户入职计划
- 涵盖一些常见用例的模板库
- 使用 AWS、Heroku 或您自己的专用服务器的自托管选项
- 内置协作、身份验证和授权选项
- 自定义 JavaScript、HTML 和 CSS 支持以扩展核心布局和功能
- 通过其客户门户支持有限的面向公众的应用程序
缺点
- 数据源和自动化仍然相当有限
- 必须维护自己的数据源,因此可能需要开发人员设置和修改字段
- 免费计划有限,不允许与您的团队协作
10. Internal.io
Internal.io 是另一种无代码工具,用于在现有数据库、API 或业务应用程序之上构建内部应用程序。它具有面向非编码人员的直观界面,但还包括面向开发人员的强大工具和对 CRUD 应用程序的精细访问控制。
虽然精细控制和企业 SSO 选项对某些用例很有吸引力,但没有选项可以通过 Internal.io 公开应用程序。您还将按每个用户付费,因此为整个团队运行应用程序每月可能要花费数百美元。
特征
- 支持关系数据库、非关系数据库、电子表格和某些基于 HTTP 的服务作为数据源
- 精细的权限和访问控制
- 拖放式 UI 小部件
- 自动为您的数据库上的 CRUD 操作生成函数,无需查询或 API 工作
- 使用 JavaScript 添加自定义业务逻辑的选项
- 支持多种环境(例如,登台和生产)
缺点
- 没有现成的模板
- 对于大型团队来说很昂贵
- 不支持面向公众的应用程序
- 文档主要关注开发人员,而不是无代码用户
11. 应用表
AppSheet 是另一个类似于 Glide 的无代码应用程序构建器。 AppSheet 是 Google 生态系统的一部分,因此它与其他 Google 产品集成,让您无需数据科学家即可将机器学习算法与您的应用程序集成。
AppSheet 可能是构建跨设备兼容的 CRUD 应用程序的不错选择,但它仅适用于电子表格和一些选定的数据库作为数据源。如果您的应用程序依赖于外部 API 或 MongoDB 等非关系型数据库,那么它不适合您。
特征
- 多平台应用程序支持 Web、桌面和移动部署
- 支持与团队成员的协作
- 涵盖常见用例的示例应用程序集合
- 活跃的社区论坛
- 主要专注于面向公众的应用程序
缺点
- 免费计划只允许原型设计和测试。部署您的应用程序需要付费计划
- 数据源选项有限(不支持 HTTP API 或 MongoDB)
- 文档难以浏览
结论
每个应用程序都是不同的,因此根据您的 CRUD 应用程序的具体情况,您选择的工具会有所不同。
如果您的团队是非技术人员,并且想要一些不需要开发人员参与的工作,那么 Knack 或 Bubble 可能是一个不错的选择。另一方面,如果您的团队包括想要更快地构建内部工具的开发人员,并提供许多用于呈现和操作数据的选项,那么 Appsmith 可能是正确的选择。
拥有如此多不同的优势和功能集,一定会满足您的业务对内部和外部应用程序的需求。 建设愉快!
原文:https://vihark.medium.com/the-best-tools-for-building-crud-applications…
- 137 次浏览