开源和开发人员是一段开放的恋情,而闭源代码并不喜欢。对于那些不喜欢这样声明的人来说,↓ 是波士顿咨询集团的一组指标,应该会让你开始热身。
不管统计数据如何,如果你为web开发编写代码,你会想知道2023年开源的最新和最棒的版本。所以,别再好奇了,直接研究一下你应该向老板推销的十种工具。
☝🏻 当我提出这个清单时考虑的因素,
- 人气
- 社区贡献
- 支撑节奏
- 释放速度
- 新功能开发
- 安全
Novu
https://novu.co
📢 用Novu的话来说,“Novu是产品的开源通知基础设施。为您的React、Vue和Angular应用程序添加一个通知中心🚀
他们在这份名单上的第五名表现如何
- 约16K的GitHub⭐
- 社区贡献价值:4/5
- 新功能开发的价值:3/5
- 释放速度:3/5
- 支撑节奏:5/5
在设计新应用程序时,开发通知层是一项常见的任务。它通常从发送一封简单的电子邮件开始,但随着应用程序的发展,您可能会通过多个渠道管理数百个通知。这可能是一个耗时且复杂的过程。这就是Novu的用武之地。Novu是一个基础设施开发平台,帮助开发人员构建和部署云原生应用程序。它的目标是让开发人员更容易在他们的产品和用户之间创建有意义的事务通信。
赞成的意见
- 易于设置和集成
- 适用于所有消息传递提供商的单一API(电子邮件、短信、推送、聊天)
欺骗
- 没有基于ORM的配置
- 没有云管理服务的定价计划
Novu提供易于使用的API,并注重开发人员体验。这意味着开发人员可以轻松地将通知集成到他们的应用程序中,而不用担心底层的基础设施。
有了Novu,你可以,
- 连接不同的提供商:使用内置的流行提供商集合-Sendgrid、Mailgun、Twilio等等。添加API密钥,就可以开始了。
- 设置多个通知通道:Novu支持许多通知,包括电子邮件、短信、推送通知等。这意味着您可以通过用户的首选渠道联系到他们,并确保您的消息得到传递。
- 使用动态模板:选择频道,使用{{Dynamic}}语法添加内容,以及自定义规则来控制通知的传递。
- 跟踪提要:Novu提供了一个通知活动提要,用于监视与其相关元数据相关的每个传出消息。
闭源替代方案
Appsmith
https://www.appsmith.com/
📢 用Appsmith的话说,“构建管理面板、内部工具和仪表板的低代码项目。与20多个数据库和任何API集成。”
🔎 他们在这份名单上的第五名表现如何
- 约247K的GitHub⭐
- 社区贡献价值:4/5
- 新功能开发的价值:4/5
- 释放速度:5/5
- 支撑节奏:5/5
Appsmith是一个低代码平台,允许开发人员在不编写大量代码的情况下创建软件应用程序。它提供了一个可视化界面,用于构建和连接各种组件,如窗体、按钮和数据源。这使得开发人员能够以最小的工作量快速建立原型和功能应用程序。
赞成的意见
- 几个预先构建的小部件可以在几分钟内构建任何内部工具界面。
- 企业功能-高级VCS、审核日志、自定义品牌、SSO。
- 几个自托管部署选项。
欺骗
- 移动设备的响应式UI(即将发布路线图)
有了Appsmith,你会得到,
- 预构建的小部件:Appsmith附带了一个预构建小部件库,您可以使用它来构建应用程序。这些小部件包括按钮、表格、窗体和图表,它们具有高级属性,如分页、在线编辑和事件。
- 本机集成:Appsmith通过超过20个本机集成,可以轻松连接到您喜欢的数据库和工具。其中包括Postgres、MongoDB和Airtable等流行选项,以及使用RESTful API或GraphQL插件连接到几乎每个API的能力。
- JavaScript代码支持。您可以在Appsmith的任何地方使用{{}}内的JavaScript。您可以将Appsmith中的每个实体引用为JavaScript变量,并对其执行所有JavaScript函数和操作。
- Git的版本控制:Appsmith上的这一功能允许多个开发人员在Git分支中添加他们的工作,提出代码审查的拉取请求,与CI/CD管道集成,并提供提交历史记录,以便在出现问题时返回到以前的版本。
闭源替代方案
Supabase
https://supabase.com/
📢 用Supadase的话来说,“Supadase是一个开源的Firebase替代品。从Postgres数据库、身份验证、即时API、边缘功能、实时订阅和存储开始你的项目。”
🔎 他们在这份名单上的第五名表现如何
- ~44万GitHub⭐
- 社区贡献价值:4/5
- 新功能开发的价值:4/5
- 释放速度:5/5
- 支撑节奏:4/5
近年来,数据库之间的竞争不断演变。经过三十年的发展和改进,Postgres以其可靠性和高性能而闻名,成为各种规模企业的热门选择。Oracle已经破坏了MySQL的开源特性,随着云存储的日益普及,Postgres已经成为领先的开源数据库选项。Suabase是谷歌Firebase的一种基于Postgres的替代品,它的兴起反映了开源选项挑战专有选项的趋势。
赞成的意见
- 带有即时REST的完整Postgres数据库
- 它带有电子邮件/社交身份验证
欺骗
- 其SDK仅适用于JS(对其他语言的支持仍处于测试阶段)
- 实时限制安全策略
有了Supadase,你可以,
- 设置数据库:大多数应用程序的核心是存储数据,并为用户提供快速、方便的访问。为了实现这一点,Suabase依赖于PostgreSQL,一个开源的关系数据库。这项技术使Suabase能够在应用程序中提供无缝的数据存储、检索和管理体验。
- Configure Auth:Supabase可以轻松集成所有主要的社交应用程序,为您提供各种验证应用程序用户的选项。但是,如果您喜欢更传统的方法,Supadase也支持电子邮件密码验证。
- 编写边缘函数:有时,您需要异步执行某些任务,或者在应用程序的后端运行操作。Suabase提供了边缘功能来处理这些类型的用例。部署边缘功能很容易,Suabase在全球范围内分发这些功能,以确保所有用户都能获得一致、快速的体验。
- 设置存储:作为管理员,Suabase平台允许您轻松地从浏览器管理文件。只需点击几下,您就可以搜索、上传、查看和删除文件。Supabase存储与PostgreSQL无缝集成,并提供简单的JavaScript API供您使用。
闭源替代方案
Supertokens
https://supertokens.io/
📢 用Supertokens的话来说,“Auth0/Firebase Auth/AWS Cognito的开源替代方案”
🔎 他们在这份名单上的第五名表现如何
- 约8K的GitHub⭐
- 社区贡献价值:4/5
- 新功能开发的价值:4/5
- 释放速度:3/5
- 支撑节奏:4/5
Supertokens是一个开源身份验证平台,为管理网络和移动应用程序中的用户身份验证和授权提供安全且可扩展的解决方案。使用类似库的超级令牌进行身份验证的主要好处之一是可以为开发人员节省大量时间和精力。开发人员可以使用超级令牌提供的预先存在的、经过彻底测试的代码,而不是从头开始编写整个身份验证系统。这可以减少身份验证过程中出现错误和安全漏洞的可能性。此外,超级代币的开源性质意味着开发人员可以访问源代码,这使他们能够根据需要定制和扩展库,以满足项目的特定需求。
赞成的意见
- 模块化架构使设置变得简单。
- 它提供了一个覆盖功能,使您能够完全自定义身份验证,并在前端和后端进行验证。
欺骗
- No不支持Java和Php等许多流行语言,而且它们没有为Angular和Vue等流行前端框架预先构建的UI。
- 缺乏企业功能,如SCIM供应、管理和组织支持。
除了核心身份验证功能外,SuperTokens还为管理用户会话提供了全面的端到端解决方案。有了这个解决方案,可以很容易地实现高级功能,如跨多个设备同步会话数据或限制用户可以登录的设备数量。这些功能可以帮助您构建更安全、功能更强大的应用程序,SuperTokens使其易于实现。
SuperTokens附带,
- 完全可定制的Auth用户界面:Supertoken在集成时带有预先构建的用户界面组件,使您可以轻松地在应用程序中实现身份验证。最棒的是,这些UI组件是完全可定制的,因此您可以根据应用程序的外观进行定制。
- 会话管理:它提供了一个强大的会话管理系统,使您能够轻松创建、验证、刷新和撤销具有高安全级别的用户会话。
- 角色管理:Supertoken还包括一个角色管理系统,使您能够轻松地将用户分配给特定的角色,并控制他们在应用程序中可以执行的操作。这是通过为会话赋予角色来实现的,因此您可以微调不同用户的访问级别。
闭源替代方案
Appwrite
https://appwrite.io/
📢 用Appwrite的话来说,“为您的[Flutter/Vue/Angular/Rect/iOS/Android/ANY OTHER]应用程序提供完整的后端解决方案”
🔎 他们在这份名单上的第五名表现如何
- 约28万个GitHub⭐
- 社区贡献价值:4/5
- 新功能开发值:3.5/5
- 释放速度:3/5
- 支撑节奏:4/5
Appwrite是一个流行的开源后台即服务(BaaS)平台,为构建现代、功能丰富的应用程序提供了各种工具和功能。对于寻找开源和高度可定制的BaaS平台的开发人员来说,这是一个极好的解决方案。使用Appwrite,您可以轻松地为应用程序设置后端,并利用实时数据库、文件存储、无服务器功能等功能。
赞成的意见
- 更好的自托管实例文档。
- 很容易上手。
欺骗
- •没有托管选项,因此它不是完全无服务器的,但如果您有自己托管BaaS的法律要求,它仍然是一个比从头开始构建自己的后端更好的选项。
- 您必须处理web服务器安全问题
使用Appwrite,您可以,
- 设置Auth:Appwrite提供了一个完整的用户管理系统,允许开发人员轻松地将身份验证和授权添加到他们的应用程序中。
- 管理数据存储:Appwrite提供了一个灵活且可扩展的解决方案,使开发人员能够轻松地存储、检索和查询数据。
- 编写函数:Appwrite提供了一个函数的运行时,允许开发人员在不维护服务器的情况下创建自定义后端逻辑和集成。
- 配置网络挂钩:当新用户注册您的应用程序时,您可以收到短信通知。您还可以使用webhook触发操作,例如在应用程序的某个文档更新时清除缓存。
闭源替代方案
Astro
https://astro.build/
📢 用Astro自己的话来说,“Astro是现代网络的网站构建工具——强大的开发人员体验满足轻量级输出。”
🔎 他们在这份名单上的第五名表现如何
- 约24K的GitHub⭐
- 社区贡献价值:4/5
- 新功能开发的价值:4/5
- 释放速度:3/5
- 支撑节奏:4/5
Astro是一个用于构建网站的新框架,允许您使用JavaScript框架来输出零JavaScript静态网站。默认情况下,Astro不向客户端提供JavaScript,而是将组件呈现为HTML。这有助于加快网站的性能,因为更多的JavaScript会导致加载时间变慢。如果您确实需要在网站上使用JavaScript,Astro提供了通过客户端指令使用部分水合作用的选项。这些指令允许您指定何时以及如何对组件进行水合或添加JavaScript。
赞成的意见
- 该模式提供了基于组件的体系结构的所有好处,例如可重用性和可维护性。
- 网站是SEO友好的,因为所有静态内容都在服务器上呈现。
欺骗
- 关于这个主题(Astro的岛屿建筑)没有太多争论。
- 许多框架声称支持该模式,这使得在它们之间进行选择变得困难。
Astro的一大优点是,它支持React/Precact(JSX)、Svelte、Vue和web组件等流行的组件库,使已经熟悉这些工具的开发人员能够轻松地快速启动和运行。
Astro将自己定位为,
- 以内容为中心:Astro旨在构建内容丰富的网站。这包括大多数营销网站、出版网站、文档网站、博客、公文包和一些电子商务网站。
- 服务器优先:Astro尽可能利用服务器端渲染而不是客户端渲染。这与传统的服务器端框架(PHP、RubyonRails等)几十年来一直使用的方法相同。但您不需要学习第二种服务器端语言即可解锁它。
- 完全灵活:Astro是一个一体化的网络框架,提供了构建网站所需的一切。Astro包括组件语法、基于文件的路由、资产处理、构建过程、绑定、优化、数据获取等。
Nhost
https://nhost.io/
📢 用Nhost自己的话来说,“GraphQL的开源Firebase替代方案。”
🔎 他们在这份名单上的第五名表现如何
- 约24K的GitHub⭐
- 社区贡献价值:4/5
- 新功能开发的价值:4/5
- 释放速度:3/5
- 支撑节奏:4/5
近年来,GraphQL作为RESTAPI的替代品获得了巨大的宣传。GraphQL是一种查询语言,允许客户端从服务器请求特定形状的数据,从而在客户端和服务器之间实现更高效、更灵活的通信。
Nhost是一个基于云的后端平台,它利用GraphQL使开发人员能够更快地构建和部署无服务器应用程序。Nhost提供了一系列功能,可以轻松构建可扩展且功能丰富的应用程序,包括用户管理、数据存储、无服务器功能、实时通信等。
赞成的意见
- 基于数据库中的表和列提供即时实时图形QL API。
- 支持无服务器功能。
欺骗
- 实时选项有限。
使用Nhost的一个关键好处是,它允许开发人员利用GraphQL,而不用担心设置和维护自己的GraphQL服务器的复杂性。
使用Nhost,您可以设置,
- Auth:Nhost提供了一个完整的用户管理系统,可以轻松地为您的应用程序添加身份验证和授权。这包括支持流行的身份验证方法,如电子邮件/密码、社交登录等。
- 无服务器功能:Nhost使您能够创建自定义后端逻辑和集成,而无需维护服务器。这样就可以很容易地将自定义功能添加到应用程序中,并根据需要进行扩展。
- 实时图形QL API:Nhost包含一个实时通信引擎,允许您管理订阅以实时同步数据。
闭源替代方案
Hoppscotch
https://hoppscotch.io/
📢 用Hoppscotch自己的话来说,“Hoppscotch是一个轻量级的、基于web的API开发套件。它是从头开始构建的,考虑到易用性和可访问性,为API开发人员提供了所需的所有功能,并具有简约、不引人注目的UI。它是免费的,并且是一个完全开源的附加功能!”
🔎 他们在这份名单上的第五名表现如何
- 约490K个GitHub⭐
- 社区贡献价值:4/5
- 新功能开发的价值:4/5
- 释放速度:3/5
- 支撑节奏:4/5
Hoppscotch是一个开源API测试工具,可以帮助开发人员快速轻松地测试和调试其API。它是一个轻量级工具,可用于发送HTTP请求并分析来自API的响应。
赞成的意见
- 重量轻、速度快。
- 文档生成器。
- 对WebSocket的支持还允许SSE、Socket.IO和MQTT
欺骗
- 几乎没有文档
- 缺少测试自动化功能
- 需要通过CLI添加一些功能。
Hoppscotch的一个关键特征是它的简单性。它有一个简单直观的界面,使开发人员很容易开始API测试。它还包括各种功能,使API测试易于定制和自动化,包括对变量、环境管理等的支持。
Hopscotch附带,
- REST和GraphQL支持:Hoppscotch同时支持REST和GraphiQLAPI,使其成为一个多功能工具,可用于测试使用各种技术构建的API。
- 实时平台:Hoppscotch包括一个实时平台,允许开发人员测试和调试他们的套接字或通道连接。这样可以很容易地识别和解决出现的问题。
- API文档:Hoppscotch允许开发人员快速轻松地创建全面的API文档。这对于帮助其他开发人员理解和使用API特别有用。
- PWA支持:Hoppscotch包括对渐进式Web应用程序(PWA)的支持,使开发人员可以轻松地测试和调试PWA使用的API。
闭源替代方案
NocoDB
https://www.nocodb.com/
📢 用NocoDB自己的话来说,“将任何MySQL、PostgreSQL、SQL Server、SQLite和MariaDB都变成一个智能电子表格。”
🔎 他们在这份名单上的第五名表现如何
- 约33K的GitHub⭐
- 社区贡献价值:4/5
- 新功能开发的价值:5/5
- 释放速度:5/5
- 支撑节奏:4/5
NocoDB是一个开源项目,为建立和管理在线数据库提供了一个基于网络的平台。它的设计简单而灵活,允许用户创建自定义数据库和工作流以满足他们的特定需求。
赞成的意见
- 分配和跟踪任务,提供第三方集成
- 将SQL数据库转换为智能电子表格
欺骗
- 无云版本(在私人测试版中开放)
NocoDB的一个关键特性是其可定制的数据模型。用户可以创建自定义数据库表,并定义字段及其之间的关系。这允许用户以一种对其特定用例有意义的方式对其数据进行建模。
使用NocoDB,您可以
- 设置丰富的电子表格界面:提供了几个操作,允许配置完整的电子表格功能,包括CRUD操作、视图权限类型以及共享基础和视图的能力。
- 设置自动化:NocoDB包括对自动化的支持,允许您自动化重复的任务和工作流。这可以帮助您在处理数据时节省时间并提高效率。
- 配置无头API:NocoDB包含一个无头API,允许您以编程方式访问和操作数据。这对于想要构建自定义集成或使用NocoDB的应用程序的开发人员来说尤其有用。
闭源替代方案
Strapi
https://strapi.io/
📢 用Strapi自己的话来说,“最先进的开源无头CMS,可以毫不费力地构建强大的API。”
🔎 他们在这份名单上的第五名表现如何
- 约51K的GitHub⭐
- 社区贡献价值:4/5
- 新功能开发的价值:5/5
- 释放速度:5/5
- 支撑节奏:4/5
Strapi是一个开源内容管理系统(CMS),允许开发人员为内容丰富的应用程序构建和管理API。它的设计简单而灵活,允许开发人员快速构建和部署应用程序的API。
赞成的意见
- 快速且可扩展
- 内置身份验证系统
- 用于自动化的多个工作流
欺骗
- 难以迁移现有API
- TypeScript支持有限
Strapi的一个关键特性是其基于插件的架构。Strapi包括一系列插件,允许开发人员轻松地为其API添加功能,例如支持文件上传、电子邮件发送等。这些插件可以很容易地安装和配置,从而很容易自定义API的功能。
除了插件架构外,Strapi还包括一个用户友好的管理面板,允许开发人员和内容编辑器轻松管理他们的内容。这包括对创建和管理内容类型以及预览和发布内容的支持。
有了Strapi,你就可以,
- GraphQL或RESTful:Strapi允许开发人员根据需要选择使用GraphQL还是RESTful API。这使它成为一个灵活的平台,可以用于为各种应用程序构建API。
- Webhooks:Strapi包括对Webhooks的支持,允许开发人员根据特定条件触发自定义事件和操作。这对于构建集成和自动化工作流程尤其有用。
- 身份验证和权限:Strapi包括一个用户管理系统,允许开发人员轻松地将身份验证和授权添加到他们的API中。这包括支持流行的身份验证方法,如电子邮件/密码、社交登录等。
- 国际化:Strapi包括对国际化的支持,使开发人员能够轻松构建支持多种语言的API。这对于构建面向全球受众的应用程序尤其有用。
闭源替代方案
感谢您阅读这篇文章!我很想听听你的想法和你的开源项目清单。
- 登录 发表评论