2024 JavaScript Rising Stars
这是一篇关于 2024 JavaScript Rising Stars 的文章,主要是对 2024 年 JavaScript 生态中的一些新兴技术进行了梳理和总结。查看原文链接:
欢迎阅读《JavaScript 新星》第 9 版,这是您了解 2024 年塑造 JS 生态系统的顶级趋势和项目的指南。
下图比较了过去 12 个月 GitHub 上新增的星星数量。我们分析了来自Best of JS 的项目,这是一份精选的与 Web 平台相关的最佳项目列表。请注意,您可以单击某个项目以获取更多信息。
总体最受欢迎项目

总冠军: shadcn/ui 再次获胜🏆
和 2023 年一样,shadcn-ui 是今年最热门的项目。它在强大的基础(由Radix Primitives等无头组件库提供)和定制可能性之间找到了完美的平衡。
让开发人员拥有自己的组件代码,而不是提供必须的组件import,这个想法确实改变了游戏规则。
2024 年增加了很多功能:
由Recharts库提供支持的图表 主题可生成可在代码库中自定义的 CSS 变量集 区块:一组布局,用于满足典型 Web 应用程序的需求 响应式和可扩展侧边栏等新组件 新的 CLI 更加强大且灵活:
shadcn add现在可以安装组件、主题、钩子、实用程序、依赖项等。 它支持多种框架:Next.js、Remix、Vite、Laravel 等。 它可以更新你的 Tailwind 配置,而不是覆盖它 支持 monorepos 其成功的另一个原因是与服务v0紧密集成,可以生成基于 shadcn/ui 构建的组件。
它也是一个很好的学习资源,可以展示如何创建易于扩展的可组合组件,因为组件就在你的源文件夹中。
第二名: Excalidraw
Excalidraw是一个开源在线工具,旨在创建具有独特手绘风格的数字绘图和可视化效果,使其成为集思广益或解释概念和工作流程的完美工具。
AI 功能包括:文本到图表、美人鱼到 Excalidraw 和线框到代码。
第三名: AFFiNE
AFFiNE是一个开源知识库和项目管理工具,它结合了 Notion(由块组成的文档)和 Miro(无限绘图画布)等工具的功能。
由于它是离线优先的,因此它是构建个人知识库的绝佳工具。
特别提名
如果你想了解浏览器的功能,请查看:
前端框架

它可以被视为 HTML 语言的扩展(因此得名),并且通常被视为库而不是框架。然而,界限很模糊。查看这篇文章,了解
如果您需要增强静态网站的交互性,或者您的应用程序状态是“服务器驱动”,那么它是一个很好的选择。通过仅使用 HTMLhx-*属性的组合,您可以实现数据获取等功能,而无需编写一行 JavaScript。
想看看它的实际效果吗?这个“Rising Stars”网站是用 Astro 构建的,并且 htmx 支持诸如向下滚动时延迟加载额外类别等功能。
在2 版中,React 不断自我重塑,这也是其成功的一部分。它花了三年多的时间才发布 19 版,但在经过与 Suspense API 相关的反复修改后,它终于
在新功能中,对 Web 组件(“自定义元素”)的支持是个好消息。说到 Web 组件,Solid(第 8 位)的创建者 Ryan Carnato 撰写了
在3 版中,
React 生态

2024 年,React 变得既更加固执己见,又变得更加不固执己见。
一方面,随着服务器组件和服务器函数的引入,React 变得更加固执己见,引导开发人员走向跨网络运行的架构。另一方面,随着这些新原语被多个框架采用和抽象,React 也变得不那么固执己见,每个框架都采用自己的方法。
React 不再只是一个库。它正在演变成框架规范,代表着生态系统向框架优先思维模式的重大转变。但是,如果开发人员愿意,它仍然允许他们选择退出这种思维模式并更接近客户。
在整个转型过程中,React 始终致力于完善其核心。
我现在对 React 19 带来的可能性感到兴奋。React 正在成为一个全栈框架,看到它将如何与 React 生态系统中的所有参与者一起塑造 Web 开发的未来,真是令人着迷。
Vue 生态

今年是 Vue 生态系统丰收的一年。Vue 本身的核心团队发布周期更加活跃,新的小版本定期带来性能改进。例如,
生态系统信心最明显的标志之一就是其 UI 库。它们正在蓬勃发展。当然,部分原因是 Tailwind CSS。其基于约定的 CSS 编写方法和跨框架功能意味着
然而,所有 UI 库中最好的结果来自
我们还看到许多框架(如 Nuxt、Slidev、VitePress 和Vue Element Admin)确实表现非常出色。
对于我们在列表中看到的所有库,开发人员体验仍然是重中之重,并且明年将为 Vue 开发人员带来一些非常令人兴奋的事情,例如 Vapor 模式(终于)、Vue 3.6 中稳定的 Suspense、下一个 Nuxt 主要版本 - 等等。
后端/全栈

-
第一:
Next.js 连续四年成为最受欢迎的全栈框架。版本 15发行版支持 React 19,并利用新的 Cache API 带来性能改进,同时由于全面采用 Turbopack 作为构建工具,开发人员体验 (DX) 也得到增强。 -
第二:该类别的新人是 Web 服务器
Hono ,位居第二。它可以被视为Express 的现代替代品(尽管已有 15 年历史,但排名第 15 位!)并且能够在多个 JavaScript 运行时中运行:当然是 Node.js,还有 Deno、Bun 和无服务器环境,如 Lambda 或 Cloudflare Workers。它因其占用空间极小而脱颖而出。阅读其创建者的故事。 -
第三:
Astro 已成为构建内容密集型应用程序的多功能解决方案。版本 5引入了新的内容层,支持从任何来源(无论是文件系统还是外部 API)获取类型安全的数据。
我使用 Astro 建立了这个网站,DX(称你为宇航员的 CLI 太可爱了!)以及它提供的卓越网络性能给我留下了深刻的印象。
工具

2024 年是 JS 工具的又一个丰收年,我们将继续致力于创新和提高性能。许多项目已经成熟并获得发展势头,而其他超级令人兴奋的项目仍在开发中。
State of JS 大奖,成为最受欢迎和采用率最高的技术。同时拥有高使用率和高留存率实属罕见,更不用说维持了。我们热切期待看到新公司
值得一提的是,最成功的工具都很容易被采用:
移动端

2024 年,React Native 将继续主导移动应用领域,保持其作为构建跨平台应用程序最受欢迎的框架的地位。Expo 连续第二年保持排名第一的项目,自 2023 年以来大幅增长。
今年最大的趋势之一是 React Native 越来越重视 Web/通用支持。Expo Router 在弥合 Web 原生差距方面取得了实质性进展,引入了 Expo DOM 组件(“use dom”),以实现 React Web 和通用 React 之间的增量迁移。Meta 从
样式仍然是生态系统的重点。这一点在Yoga v3(React Native 样式引擎)中尤为明显,它为内置的 React Native 样式带来了许多增强功能,这主要得益于 Meta 为 Instagram 和 Facebook for Quest(使用 React Android 构建)等第一方应用所做的工作。与此同时,社区驱动的解决方案继续蓬勃发展,多种方法和观点通常都将 Web 的最佳部分带到了原生版本。
展望未来,我预计人工智能将在原生开发工具和应用体验中发挥更大作用。Expo Router 对通用 React Server Components 的早期预览可能会激发新的可组合服务器库的出现。此外,原生 UI 可能会进一步发展,与 SwiftUI 和 Jetpack Compose 的绑定会更多,从而整体上扩大“成功之坑”。
我还预测,随着 Expo DOM 组件的引入以及单命令应用程序部署工具(如EAS Build)的持续改进,原生社区将变得更加庞大,为所有开发人员带来更加熟悉和令人兴奋的空间。
2025年必定是令人兴奋的一年!
状态管理

如果我们根据状态管理的风格来查看结果,就会发现一些有趣的模式。Zustand、
从这些结果中我们可以得出一个结论:正式的 Redux 风格状态管理(虽然不是 Redux 库本身)仍然是最流行的状态管理风格。而原子模型也在取得长足进步(最初的原子库 Recoil 刚好跌出前十名)。
但是,
我没有在这个列表中看到信号。我不确定这是因为人们正在等待 TC39 提案最终确定并被广泛采用,还是因为它已经融入
接下来的几年将是 React、Vue、JavaScript 等技术状态管理领域激动人心的几年。
人工智能

人工智能和大型语言模型 (LLM) 正在极大地改变开发人员的工作方式,彻底改变前端和后端开发。
-
第一:
n8n 是一个无代码自动化平台,它已经存在了一段时间,但由于其 AI 功能而人气飙升,它使开发人员能够使用本地运行的模型构建 AI 功能。它是入门套件的一部分,可以使用 Docker 快速设置本地 AI 环境。 -
第二:
Flowise 是另一款基于 LangChain 的自动化工具,专门用于使用本地 LLM 创建工作流。构建工作流非常简单,只需选择一个可用的构建块并通过 UI 连接输入和输出即可。 -
第三:
bolt.new 是一个了不起的工具,它可以使用任何框架(Next.js、Remix、Astro、Nuxt 等)构建全栈应用程序,并以创纪录的时间部署它们(使用Supabase ),只需一个提示即可完成。 -
第四:
Transformers.js 是一个 JavaScript 库,它将最先进的自然语言处理 (NLP) 模型(例如 Hugging Face 的模型)直接引入浏览器和 Node.js。它使开发人员能够在本地运行 AI 模型,而无需依赖云 API,从而使 NLP 任务更快、更私密、更易于访问。查看此简介中如何检测图像中的情绪和对象。 -
第五:
Vercel AI SDK 是将 AI 代理集成到 Web 应用程序中的绝佳工具。SDK 提供了一个抽象,可让您连接到任何 LLM。它与 Next.js 应用程序无缝协作,允许开发人员利用流媒体等功能创造卓越的用户体验。虽然它在代理编排方面没有 LangChain 的灵活性,但它通常被认为是 TypeScript 生态系统中 LLM 交互的最佳选择。