5 个可以拓展全栈技能的开源项目
在过去的几年里,开源项目一直是现代 WEB 开发背后的重要驱动力,刚开始,jQuery 可以说是世界上最受欢迎的项目。在最近的几年里面,有几个开源项目非常受前端欢迎:如 React、Vue、Next.Js、Django、Express 等。这些开源项目改进了处理前端、后端数据的方式,并使新功能或者创新功能的实现变得更加容易。
今年,可能会看到 WEB 开发方面的一些重大创新,尤其是低代码,这可以减少开发时间并轻松扩展。这些创新有些来自大公司,有一些来自初创公司,还有一些来自过去几年流行的开源项目。本文将介绍 5 个可以开拓全栈技能、提高项目开发效率的 WEB 开源项目,让前端开发者开拓一些构建后端数据服务的思维,有些可能成为新的技术解决方向。
Appsmith
Appsmith 是一个开源框架,可以快速构建任何定制的商业软件,比如管理面板、内部工具、仪表板等,并可以使用 JavaScript 来预构建的 UI 小部件连接到任何数据库、GraphQL
或 REST API
。
几乎每个开发团队经常使用此类软件,通常,开发人员会在 React 或 Vue 之类的框架上花费大量的时间来创建这些应用程序小部件。
- 官方网站:https://www.appsmith.com/
- Git仓库:https://github.com/appsmithorg/appsmith
- Star:
11.8K
Appsmith 拥有超过 15 个数据源和 35 个以上的 UI 小部件,对于喜欢在自己的平台上构建个人或可定制的内部应用程序的团队和个人来说,这非常方便,整个过程就是几年流程的低代码。Appsmith 还提供免费的云社区版本,其中包含构建完美内部工具所需的所有基本功能。
Hasura
Hasura 使数据访问变得简单,它可以立即组合一个由数据库和服务支持的 GraphQL API,这样开发团队(或API消费者)就可以立即获得生产力。GraphQL本身的特性和 Hasura 的动态方法使得集成和迭代变得很容易,并且绝对是开源社区中最受欢迎的项目之一。
- 官方网站:https://hasura.io/
- Git仓库:https://github.com/hasura/graphql-engine
- Star:
25.3K
Hasura GraphQL 引擎是一个超快的 GraphQL 服务器,它通过 Postgres 提供即时、实时的 GraphQL API,在数据库事件和业务逻辑的远程模式上具有 webhook 触发器。因此,如果需要一个超快的 GraphQLAPI 引擎而无需编写任何代码,Hasura 是首选解决方案。
Hasura 可以在任何地方运行,从本地机器到 Heroku 免费层再到 Amazon、Google 或 Microsoft 上的服务器。它被为一些世界上大型企业和初创公司工作的技术人员使用和喜爱。
Appwrite
Appwrite 是面向前端和移动开发人员的开源端到端后端服务器,可让快速地构建应用程序。其目标是抽象和简化 REST API
和工具背后的日常开发任务,帮助开发人员更快地构建高级应用程序。
- 官方网站:https://appwrite.io/
- Git仓库:https://github.com/appwrite/appwrite
- Star:
16K
这个漂亮的框架将通过引导所有后端需求(包括数据库、存储、用户、地理和本地化、功能、控制台、隐私和安全性)为开发人员节省大量时间。Appwrite 服务器可以通过 Docker 容器快速启动,在终端上简单的通过 docker-compose
命令轻松设置它,无论是在本地机器上还是在任何云提供商上。
Appwrite 团队计划推出一个云版本,以减少自托管所需的所有额外配置。
Supabase
Supabase 是 Firebase 的开源替代品,目的是可以快速构建后端服务。它主要侧重于大规模提供四个基本要素:数据库 (Postgres)、身份验证、文件存储和自动生成的 API。
- 官方网站:https://supabase.com/
- Git仓库:https://github.com/supabase/supabase
- Star:
26.9K
所有这些都可以直接从其出色的仪表面板轻松设置和使用,而无需编写任何代码。当然,这些也可以通过添加自己编写的代码进行相应的定制。
不仅如此,Supabase 还提供了客户端,使得开发人员可以轻松构建安全且可扩展的产品。在容器化的时代,Supabase 也可以使用 Docker 在自己的基础架构上进行部署。
Plasmic
Plasmic 让非开发人员可以直观地构建页面和其他演示内容,然后开发人员可以将其渲染到现有的网站和 Web 应用程序代码库中。
- 官方网站:https://www.plasmic.app/
- Git仓库:https://github.com/plasmicapp/plasmic
- Star:
1.1K
Plasmic 通过自定义代码接受逻辑、数据和行为,以实现更复杂的数字组件交互。根据使用的框架,还可以通过在其中创建自己的 UI 组件来扩展 Plasmic 。Plasmic 可以成为对开发人员友好的 Webflow 替代方案,可以完全控制前端。最常见的用例是通过 API 使用 Plasmic 设计,例如 CMS 内容。