15

Recently, risingstars released the "2021 JavaScript Rising Stars" report. The report summarizes the top projects in the JavaScript space in 2021, combined with the number of new stars added to GitHub in the past 12 months.

This "2021 JavaScript Rising Stars" report includes the following sections: most popular projects, front-end frameworks, Node.js frameworks, build tools, Vue ecosystem, React ecosystem, CSS in JavaScript, testing frameworks, mobile development, desktop Development, Static Site Generator, State Management
GraphQL。

In this summary report, there are many interesting results. For example, in the "Most Popular Projects", the new "champion" is actually a command-line tool. The following is the main part of the report, let's take a look!

Most Popular Items

Top10


The most popular of this year's Top 10 Popular Projects is zx - a brand new tool from Google for writing simple command-line scripts in JavaScript or TypeScript. Basically it allows you to embed any bash expression (ls, cat, git...anything) in your code and await the result using a JavaScript template string.

It introduces utilities provided by several popular packages:

  • node-fetch has the same API as fetch in the browser to create HTTP requests.
  • fs-extra handles file system operations.
  • globby matches the given filename in a user-friendly pattern.

In second place is Vite, a high-performance build tool that uses the esbuild compiler. When it was originally created, it was only connected to the Vue.js community, but now it has support for all major UI frameworks such as React, Svelte, and Lit.

Next.js, in third place, retains its lead as a "meta-framework" in the React world.

In addition to the top three, fifth in the top ten is Tauri, a solution for building desktop applications using web technologies. In contrast to Electron, Tauri is written in Rust, and it doesn't ship the Node.js runtime in every application (Tauri's 1.0 beta was just released in May).

In addition to the top ten, there are also a few select items worth discussing. Astro, for example, was one of the most noteworthy projects of the year despite not making the top 10. Astro also becomes a faster loading website builder due to less JavaScript.

Its concept is close to static site generation (SSG), but the key difference is that Astro lets you introduce dynamic interactive parts called "islands" into your web pages.

Different strategies can be applied when rendering dynamic components on the client side:

  • when the page loads
  • When the page is free, if it is a low priority component (consider tracking.)
  • When the component is visible, use the browser Intersection Observer API

One of the best parts is that Astro pages can be built in combination with HTML and components written in any framework (React, Vue.js or Svelte...).

front-end framework

In the results of this report, the top five in the "Front-end Framework" column are: React, Vue.js, Svelte, Angular, and Solid.

Among them, the No. 1 React is the first project to be rated as the No. 1 UI framework since the "JavaScript Rising Stars" campaign, but considering that Vue.js is divided into two warehouses (the second and third versions), so the actual Vue.js is the first place.

The biggest change in the ranking of the "front-end framework" column is the rise of Svelte, which surpassed Angular to occupy the third place. Today, there are more and more tools or components that incorporate Svelte into target frameworks (eg Vite).

I believe everyone has heard the news about "Svelte creator Rich Harris is joining the Vercel team behind Next.js". Like Next.js, Svelte has its own meta-framework for building high-performance applications: SvelteKit.

Solid in fifth place - an interesting alternative to React whose components are written in JSX, but it doesn't rely on the virtual DOM like React does.

Notably, the emergence of Solid also inspired Mitosis, a tool for writing and compiling components for any framework (React, Vue.js, Angular, Svelte...).

Node.js framework

In the "Node.js framework" column of this list, the top five projects are Next.js, Nest, Strapi, Remix, and Nuxt.

In general, major UI frameworks have their own "meta-framework" to build modern and scalable applications, providing features such as routing, server-side rendering, statically generating pages ahead of time, building optimized for production...etc.

  • React's Next.js, the champion of this category and arguably a pioneer in this field
  • Nuxt for Vue.js, now divided into two versions of Vue.js v2 and v3
  • Svelte also has SvelteKit

For example, Remix, ranked fourth, is a full-stack framework for building React applications. A rookie in the category, Remix is also one of the year's most "story" projects, as it was created by the author of React Router, and until October, it's only available to paid backers.

The Remix project has received a lot of support since it was made public, and its motto is clear: "Web Basics, Modern User Experience", as its API follows web standards as closely as possible (HTTP responses, form submissions...).

In addition to these meta-frameworks, Nest in second place is the leader of the more traditional server-side Node.js frameworks, not tied to any UI library.

In third place, Strapi seems to be a leader in "headless CMS", those applications that provide rich dashboards for users to manage data and modern APIs for developers to build anything from data (the latest version provides a design system built on top of the React component library).

build tools

In the "build tools" item, the top five are: Vite, esbuild, swc, Turborepo, Nx.

In the past 2021, some emerging trends have developed further. For example, the adoption of native ES modules continues, and Vite has also been widely adopted (faster than snowpack), leading to a new ecosystem of tools (such as Vitest - a modern ES-based testing framework). ES modules are also gaining acceptance in the Node.js ecosystem, and TypeScript even deferred support for ES modules in Node.js.

Well-known developer Lee Robinson once called "Rust the future of JavaScript infrastructure". Rust is especially interesting because it has both great performance and interoperability with JavaScript. NAPI-RS allows JavaScript and Rust to communicate with each other without any serialization cost. And Next.js is betting on SWC (an extensible Rust compiler that allows them to port the most popular Babel plugins to Rust).

Parcel2 has released a new Rust compiler. The Rome toolchain is also being rewritten in Rust, but one of its founders, Jamie Kyle, just quietly left the company.

Rust is clearly a leading non-JS language, but it's not the only language that offers great performance. Bun is written in Zig, the fourth-ranked Turborepo and second-ranked esbuild are written in Go. It's worth noting that Evan Wallace left Figma: this may give him more time to work on esbuild.

In the monorepo world, Lerna is still widely used, but not very well maintained. And Nx, a single-engine tool that helps drastically reduce build times, has been growing rapidly. Its newer competitor, Turborepo, benefited from huge marketing after it was acquired by Vercel.

Vue Ecosystem

In the "Vue Ecosystem", the top five are: Slidev, Vue Element Admin,
Headless UI,Naive UI,vue-next。

A year after the official release of Vue 3, we're seeing the ecosystem grow rapidly with many great innovations. Take the component authoring experience to the next level, such as <script setup> in Vue 3 core; Volar, a new VS Code extension that brings first-class TypeScript support to Vue; and a new state manager built on top of the Composition API Pinia becomes the successor to Vuex.

With Vite being the new default tool for Vue, meta-frameworks like Nuxt 3, Quasar, and VitePress are now using Vite as their default engine, opening up many new doors for innovation while providing a vastly improved developer experience.

At the same time, the community has put a lot of effort into adapting the developer experience from Vue2 to Vue3 to make the migration process smoother. It's been a great year for Vue developers, their apps have seen huge improvements in both developer experience and performance, and look forward to seeing further development in 2022.

React ecosystem

In the "React Ecosystem", we see that the top five are: Next.js, Ant Design, MUI (Material UI), Remix, react-use.

With React 18 just around the corner, the RC version is now available and benefits from some out-of-the-box improvements like automatic batching to reduce rendering or SSR support for Suspense.

React 18 adds the long-awaited concurrent renderer and an update to Suspense without any major breaking changes.

React continues to power the browser and server, and it's becoming ubiquitous under React Native's multi-platform vision.

Finally, we will also list the following categories such as CSS in JavaScript, testing frameworks, mobile development, desktop development, static website generators, state management, and star projects in GraphQL:

CSS in JavaScript:

The top five are vanilla-extract, Styled, Components, Stitches, Twin, Emotion.

Test framework:

The top five are Playwright, Storybook, Cypress, Puppeteer, Jest.

Mobile development:

The top five are React Native, Ionic, Expo, Quasar, Flipper.

Desktop development:

The top five are Tauri, Electron, Svelte NodeGUI, NodeGUI
,Neutralino。

Static site generator:

The top five are Next.js, Astro, Docusaurus, Nuxt, Nuxt 3.

State management:

The top five are Zustand, XState, Jotai, Recoil, and Pinia.

GraphQL:

The top five are Prisma, Hasura GraphQL Engine, Redwood, Gatsby, and GraphQL Code Generator.

:

For building modern websites and applications, we seem to have entered the era of meta-framework: Next.js, Nuxt, SvelteKit... and the promising newcomer Remix.

Today, many well-known members of the JavaScript community have joined tech companies, such as Kent C. Dodds to the Remix team, Svelte creator Rich Harris and Turborepo founder Jared Palmer to Vercel... more and more There are many great creators working on these solutions together.

As Lee Robinson put it: Rust is the future of JavaScript infrastructure. Regarding tooling, the need for speed has led to a shift towards languages like Rust and Go rather than JavaScript.

Serverless functions and edge computing are often talked about as a major theme in 2021, and there are solutions like Vercel Edge Functions, CloudFlare Workers or Netlify Edge that run backend code close to the user. Meta frameworks like Next.js or Remix just take advantage of edge computing to make integration of backend code in React applications a breeze.

Let's make a bold prediction, will 2022 be a heyday for full-stack JavaScript applications? If you have relevant opinions, you are also welcome to exchange and interact in the comment area.

Click to view the full report: https://risingstars.js.org/2021/en


MissD
955 声望40 粉丝