当前位置: 首页 > Web前端 > JavaScript

2021年最热门JavaScript明星项目榜单:zx、Vite、Next.js、React领跑热点

时间:2023-03-26 20:42:24 JavaScript

近日,risingstars发布了《2021年JavaScript新星》报告。该报告总结了2021年JavaScript领域的优秀项目,并结合过去12个月在GitHub上的加星数。这份“2021JavaScript新星”报告包括以下部分:最受欢迎的项目、前端框架、Node.js框架、构建工具、Vue生态系统、React生态系统、JavaScript中的CSS、测试框架、移动开发、桌面开发、静态站点生成器,状态管理GraphQL。在这份总结报告中,有很多有趣的结果。例如,在“最受欢迎的项目”中,新的“冠军”实际上是一个命令行工具。以下是本次报道的正文,一起来看看吧!Top10最受欢迎项目今年Top10热门项目中最受欢迎的是zx,这是Google推出的一个新工具,可以用来用JavaScript或TypeScript编写简单的命令行脚本。基本上,它允许您在代码中嵌入任何bash表达式(ls、cat、git...任何命令)并使用JavaScript模板字符串等待结果。它介绍了几个流行包提供的实用程序:node-fetch与浏览器中的fetch具有相同的API以创建HTTP请求。fs-extra处理文件系统操作。globby以用户友好的模式匹配给定的文件名。排在第二位的是Vite,这是一个使用esbuild编译器的优秀构建工具。最初创建时,它只接入了Vue.js社区,但现在已经提供了对React、Svelte、Lit等主流UI框架的支持。排在第三位的Next.js保持着React世界“元框架”的领先地位。除了前三名之外,在前十名中排名第五的Tauri是一种使用Web技术构建桌面应用程序的解决方案。与Electron不同,Tauri是用Rust编写的,它并没有在每个应用程序中都附带Node.js运行时(Tauri的1.0beta刚刚在5月发布)。除了前十,还有一些值得讨论的精选项目。例如,Astro是今年最值得关注的项目之一,尽管它没有进入前十。使用更少的JavaScript,Astro也是一个加载速度更快的网站构建器。它的概念接近静态网站生成(SSG),但主要区别在于Astro允许您在网页中引入称为“岛”的动态交互部分。在客户端渲染动态组件时可以应用不同的策略:当页面加载时当页面空闲时,如果它是低优先级组件(考虑跟踪。)当组件可见时,使用浏览器的最佳交集ObserverAPI其中一部分是Astro页面可以使用HTML和任何框架(React、Vue.js或Svelte...)编写的组件的组合来构建。在本次前端框架的报告结果中,“前端框架”一栏排名前五的分别是:React、Vue.js、Svelte、Angular、Solid。其中,排名第一的React是自“JavaScript新星”活动评选以来第一个被评为UI框架第一的项目,但考虑到Vue.js分为两个仓库(第二版和第三版),实际的GoingtoVue.js是第一位的。此次“前端框架”栏目的排名变化最大的是Svelte的崛起,超越Angular占据第三名。如今,越来越多的工具或组件将Svelte纳入目标框架(如Vite)。“Svelte的创造者RichHarris加入Next.js背后的Vercel团队”的重磅消息相信大家都听说过。与Next.js一样,Svelte也有自己的用于构建高性能应用程序的元框架:SvelteKit。排在第五位的是Solid——一个有趣的React替代品,它的组件是用JSX编写的,但不像React那样依赖于虚拟DOM。值得注意的是,Solid的出现也启发了Mitosis,这是一种为任何框架(React、Vue.js、Angular、Svelte...)编写和编译组件的工具。Node.jsFramework在本次榜单的“Node.jsFramework”栏目中,排名前五的项目分别是Next.js、Nest、Strapi、Remix和Nuxt。一般来说,主要的UI框架都有自己的“元框架”来构建现代和可扩展的应用程序,提供路由、服务器端渲染、提前静态生成的页面、生产优化构建等功能。React的Next.js是这个类别的冠军,也可以说是这个领域的先行者。Vue.js的Nuxt现在分为Vue.jsv2和v3两个版本。Svelte还有SvelteKit,比如排名第四的Remix。用于构建React应用程序的全栈框架。作为该类别的新人,Remix也是年度最“故事”的项目之一,因为它是由ReactRouter的作者创建的,直到10月,它只对付费支持者开放。自公开以来,Remix项目获得了很大的动力,其座右铭很明确:“WebFoundations,ModernUserExperience”,因为它的API尽可能遵循Web标准(HTTP响应、表单提交......)。除了这些元框架之外,排在第二位的Nest是更传统的服务器端Node.js框架的领导者,不依赖于任何UI库。排在第三位的是,Strapi似乎是“无头CMS”领域的领导者,这些应用程序为用户提供丰富的仪表板来管理数据,并为开发人员提供现代API以从数据构建任何东西(最新版本提供了一个构建在React之上的设计系统组件库)。构建工具在“构建工具”类别中,排名前五的是:Vite、esbuild、swc、Turborepo和Nx。在刚刚过去的2021年,一些新兴趋势得到进一步发展。例如,原生ES模块的采用仍在继续,Vite已被广泛采用(比snowpack更快),导致了一个新的工具生态系统(例如Vitest-一个现代的基于ES的测试框架)。ES模块也在Node.js生态系统中获得认可,TypeScript甚至推迟了对Node.js中ES模块的支持。知名开发者LeeRobinson曾说过“RustisthefutureofJavaScriptinfrastructure”。Rust特别有趣,因为它结合了出色的性能和与JavaScript的互操作性。NAPI-RS允许JavaScript和Rust相互通信而无需任何序列化成本。Next.js押注于SWC(一种可扩展的Rust编译器,允许他们将最流行的Babel插件移植到Rust)。Parcel2发布了一个新的Rust编译器。Rome工具链也在用Rust重写,但其创始人之一JamieKyle刚刚悄悄离开了公司。Rust显然是一种领先的非JS语言,但它并不是唯一提供出色性能的语言。Bun是用Zig语言写的,这个项目中排名第四的Turborepo和排名第二的esbuild都是用Go语言写的。值得注意的是,EvanWallace离开了Figma:这可能让他有更多时间从事esbuild工作。在monorepo世界中,Lerna仍然被广泛使用,但维护得不是很好。Nx是一种有助于大幅缩短构建时间的单引擎工具,一直在快速发展。它的新竞争对手Turborepo在被Vercel收购后受益于巨大的营销推动。Vue生态系统在“Vue生态系统”项目中,排名前五的是:Slidev、VueElementAdmin、HeadlessUI、NaiveUI、vue-next。在Vue3正式发布一年后,我们看到这个生态系统正在快速发展,并伴随着许多伟大的创新。比如Vue3核心中的,将组件编写的体验提升到一个新的高度;新的VSCode扩展Volar为Vue带来一流的TypeScript支持;基于CompositionAPI的新状态管理器Pinia成为了Vuex的继任者。随着Vite成为Vue新的默认工具,Nuxt3、Quasar和VitePress等元框架现在都使用Vite作为它们的默认引擎,让开发人员在体验巨大改进的同时,也为创新打开了许多新的大门。同时,社区也付出了很多努力来调整从Vue2到Vue3的开发者体验,使迁移过程更加顺畅。对于Vue开发人员来说,这是伟大的一年,他们的应用程序在开发人员体验和性能方面有了巨大的改进,期待在2022年看到进一步的发展。ReactEcosystem在“ReactEcosystem”项中,我们看到排在前五位的分别是:Next.js、AntDesign、MUI(MaterialUI)、Remix、react-use。随着React18的出现,是时候使用RC并从一些开箱即用的改进中受益,例如减少渲染的自动批处理或对Suspense的SSR支持。React18添加了期待已久的并发渲染器和对Suspense的更新,但没有任何重大的重大变化。React在浏览器和服务器中继续蓬勃发展,并且在ReactNative的多平台愿景中,它变得无处不在。最后,我们还将列出CSSinJavaScript、测试框架、移动开发、桌面开发、静态网站生成器、状态管理等类别,以及GraphQL中的明星项目列表:CSSinJavaScript:Top5Theyarevanilla-提取物,样式化,组件,缝线,双胞胎,情感。测试框架:前五名分别是Playwright、Storybook、Cypress、Puppeteer和Jest。移动开发:前五名是ReactNative、Ionic、Expo、Quasar和Flipper。桌面开发:前五名分别是Tauri、Electron、SvelteNodeGUI、NodeGUI和Neutralino。静态站点生成器:排名前五的是Next.js、Astro、Docusaurus、Nuxt、Nuxt3。状态管理:排名前五的是Zustand、XState、Jotai、Recoil、Pinia。GraphQL:前五名分别是Prisma、HasuraGraphQLEngine、Redwood、Gatsby和GraphQLCodeGenerator。综述:我们似乎已经进入了用于构建现代网站和应用程序的元框架时代:Next.js、Nuxt、SvelteKit……以及前途无量的新人Remix。如今,许多JavaScript社区的知名成员加入了科技公司,例如KentC.Dodds加入了Remix团队,Svelte的创造者RichHarris和Turborepo的创始人JaredPalmer加入了Vercel……越来越多的有才华的创造者正在努力一起研究这些解决方案。正如LeeRobinson所说:Rust是JavaScript基础架构的未来。关于工具,对速度的需求导致转向Rust和Go等语言,而不是JavaScript。作为2021年的一大主题,无服务器功能和边缘计算经常被谈论,这里有VercelEdgeFunctions、CloudFlareWorkers或NetlifyEdge等解决方案来将后端代码运行在靠近用户的位置。像Next.js或Remix这样的元框架恰好利用了边缘计算的优势,并使后端代码在React应用程序中的集成变得轻而易举。大胆预测一下,2022年会是JavaScript全栈应用的鼎盛时期吗?如果大家有相关的看法,也欢迎大家在评论区交流互动。点击查看完整报告:https://risingstars.js.org/20...