Welcome to the 7th edition of the JavaScript Risings Stars!

Like every year we try to provide an overview of the trending projects in the JavaScript eco-system over the last 12 months.

The champion this year is a delicious bread with a smiling logo, it's good to start the year with a smile!


The following graphs compare the number of stars added on GitHub over the last 12 months. We analyzed projects coming from Best of JS, a curated list of the best projects related to the web platform. Note that you can click on a project to get more info.

Table of Contents

  1. Most Popular Projects Overall
    BunTauriReactNext.jsVitetRPCAstroVS CodeTabbyPlaywright
  2. Front-end Frameworks
    ReactQwikSolidSvelteVue.js 2
  3. React Ecosystem
    Next.jstRPCMantineExcalidrawZustand
  4. Vue Ecosystem
    Vue.js 3SlidevNuxt 3Vue Element AdminAutoAnimate
  5. Back-end/Full-stack
    Next.jstRPCAstrocreate-t3-appRemix
  6. Build Tools
    ViteTurboreposwcNxRome
  7. Mobile
    React NativeExpoReact Native SkiaIonicQuasar
  8. CSS in JavaScript
    UnoCSSvanilla-extractStyled ComponentsStitchesEmotion
  9. Testing
    PlaywrightStorybookCypressPuppeteerVitest
  10. Desktop
    TauriElectronNativefierNeutralinoelectron-builder
  11. Static Sites
    Next.jsAstroDocusaurusNuxt 3Nextra
  12. State Management
    ZustandPiniaJotaiXStateRecoil
  13. GraphQL
    TanStack QueryDirectusRedwoodHasura GraphQL EngineGatsby
  14. Conclusion

Most Popular Projects Overall

1
Bun

Bun

Incredibly fast JavaScript runtime, bundler, transpiler and package manager – all in one.
+36.6k☆

Trends in 2022

80
40
116
104
99
6.9k
21.7k
3.7k
1.3k
1.2k
697
716
J
F
M
A
M
J
J
A
S
O
N
D

GitHub data

Created
2021-04
Total stars
37.4k☆

Links

GitHub
oven-sh/bun
Homepage
bun.sh
Best of JS
bestofjs.org/projects/bun
2
Tauri

Tauri

Build smaller, faster, and more secure desktop applications with a web frontend.
+30.5k☆
3
React

React

A declarative, efficient, and flexible JavaScript library for building user interfaces.
+19.8k☆
4
Next.js

Next.js

The React Framework
+19.4k☆
5
Vite

Vite

Next generation frontend tooling. It's fast!
+15.5k☆
6
tRPC

tRPC

Move Fast and Break Nothing. End-to-end typesafe APIs made easy.
+15.2k☆
7
Astro

Astro

A website build tool for the modern web — powerful developer experience meets lightweight output.
+15.0k☆
8
VS Code

VS Code

Visual Studio Code
+15.0k☆
9
Tabby

Tabby

A terminal for a more modern age
+14.4k☆
10
Playwright

Playwright

A framework for Web Testing and Automation. It allows testing Chromium, Firefox and WebKit with a single API.
+14.3k☆

Overall winner: Bun 🏆

The trendiest project of the year is Bun: a new JavaScript runtime that is all about performance and great DX. Its popularity exploded this summer with the first Beta release: +20,000 stars on GitHub in one month. We have never seen such an explosion since we started tracking projects at Best of JS.

So what makes Bun special? Like Deno, the overall winner two years ago, it provides first-class support for TypeScript.

But Bun is not just a runtime. It's also:

  • a package manager (think Yarn, NPM, PNPM)
  • a building tool (think Webpack, ESBuild, Parcel)
  • a test runner
  • ... and many other things!

So Bun can install your dependencies reading your package.json. Bun can also run your scripts. It does everything faster than anything else.

Bun is a fresh take on many aspects of the JavaScript ecosystem, focusing on performance.

It prioritizes standard Web APIs like Fetch. It supports many of the Node.js APIs, making it compatible with most NPM packages. It may not be "production-ready" (lack of Windows support) yet, but it's a very promising tool. Compared to Deno, the ecosystem is pretty new, but it already has a web framework called Elysia that claims to be the fastest HTTP framework.

The most incredible thing about Bun is that its creator, Jarred Sumner implemented all those features from scratch using a low-level language called Zig.

Check A Complete Overhaul of the JavaScript Ecosystem to get more details.

Tauri

In fifth in 2021, Tauri was even more popular in 2022 with 30,000 new stargazers. It's a project written in Rust to create cross-platform desktop applications using web technologies.

The version 1.0 was released in June.

It's built with security and performance in mind. Compared to Electron, it has a small footprint as the developer has to specify the API and capabilities required by the application.

React and Next.js

In third and forth React and Next.js got similar numbers, with almost 20,000 new stargazers.

Next.js 13, released in October, leverages the React Server Components introduced by React 17 in 2020.

Andrew Clark, one of the maintainers of React made a bold statement about their adoption in the future in this thread:

Server Components is the future of React and our goal is to spread this architecture to the entire React ecosystem, regardless of framework

Vite

In fifth Vite is the trendiest tool to build applications based on web technologies while providing an amazing developer experience.

It had two major releases this year (v3 in July and v4 in December).

It powers more and more projects including the frameworks SvelteKit and Qwik and the test runner Vitest.

Front-end Frameworks

1
React

React

A declarative, efficient, and flexible JavaScript library for building user interfaces.
+19.8k☆
2
Qwik

Qwik

The HTML-first framework. Instant apps of any size with ~ 1kb JS
+12.8k☆
3
Solid

Solid

A declarative, efficient, and flexible JavaScript library for building user interfaces.
+11.1k☆
4
Svelte

Svelte

Cybernetically enhanced web apps
+10.0k☆
5
Vue.js 2

Vue.js 2

A progressive, incrementally-adoptable framework for building UI on the web
+9.7k☆

React is still the King in 2022 but Vue.js is close in terms of popularity if you consider that Vue.js stars are split between v2 and v3 repositories.

The main change is the raise of Qwik at the position 2. Qwik is similar to React, it also uses components written in JSX for templates but the main difference is the focus on shipping the least amount of JavaScript in the browser.

It's part of the trend of "Zero baseline JavaScript" frameworks. Sites and applications are often bloated with heavy JavaScript assets that affect the performance in the browser: even if the page is rendered on the server, users have to wait until JavaScript is loaded, parsed and executed to be able to interact with the page.

Instead of relying on hydration to bring interactivity to pages generated on the server, Qwik uses a technique called resumability to deliver HTML that is instantly interactive. It works by serializing the state of the application in the HTML itself.

The project is led by Miško Hevery, the creator of AngularJS whose slogan was "HTML enhanced for web apps" while Qwik is "the HTML-first framework"... somehow the same intention of building apps on top of the good old HTML.

React Ecosystem

1
Next.js

Next.js

The React Framework
+19.4k☆
2
tRPC

tRPC

Move Fast and Break Nothing. End-to-end typesafe APIs made easy.
+15.2k☆
3
Mantine

Mantine

React components library with native dark theme support
+12.8k☆
4
Excalidraw

Excalidraw

Virtual whiteboard for sketching hand-drawn like diagrams
+12.8k☆
5
Zustand

Zustand

Bear necessities for state management in React
+12.5k☆

Guest Writer: Lee Robinson

Lee Robinson is a developer, writer, and creator who works at Vercel as VP of Developer Experience.

Guest Writer leerob

2022 saw React become more opinionated.

React is still a library that can be sprinkled into any webpage, but it’s also evolved into an architecture frameworks can follow to create interactive, resilient, and performance frontend patterns.

The React 18 release (in March) included concurrent features and APIs largely providing architecture patterns for frameworks. Consider React Server Components, designed to be implemented in conjunction with these new architecture patterns. Some conventions have now been standardized between React frameworks (e.g. use client) and others are being incubated (e.g. async/await in Server Components) during beta periods.

In 2023, we’ll continue to see innovations using React’s new primitives, but also in the larger React ecosystem. The growth of libraries for improved type safety, as well as UI components, will continue to rise.

Vue Ecosystem

1
Vue.js 3

Vue.js 3

A progressive, incrementally-adoptable JavaScript framework for building UI on the web.
+7.9k☆
2
Slidev

Slidev

Presentation Slides for Developers
+7.2k☆
3
Nuxt 3

Nuxt 3

The Intuitive Web Framework, based on Vue 3.
+7.0k☆
4
Vue Element Admin

Vue Element Admin

A magical vue admin
+6.8k☆
5
AutoAnimate

AutoAnimate

A zero-config, drop-in animation utility that adds smooth transitions to your web app. You can use it with React, Vue, or any other JavaScript application.
+6.4k☆

Guest Writer: Anthony Fu

Core team member of Vue.js 3, Vite and Nuxt. Creator of VueUse and Slidev.

Guest Writer antfu

This year we got many major updates of Vue. Vue 2.7 brings the native Composition API support and <script setup> syntax back to Vue 2.

Making the transition to Vue 3 much smoother. <script setup> became stable and generally available, and the new experimental "Reactivity Transform" is right around the corner to enhance the DX even further. The team is also working on a new rendering strategy called "Vapor mode", inspired by Solid.js, which could make Vue even more performant on critical parts.

The stable releases of Nuxt 3 and Vuetify 3 indicate that Vue's ecosystem is mature enough. Vite multiplies during the year, and we see a lot of adoption from Vue users, from create-vue, Nuxt, Quasar, Astro and many new frameworks. With the power of Vite, Vue users also got a much better testing/developing experience with Vitest and Histoire. We also see creative usage of Vue, like rendering a command line interface with vue-termui.

What a year for the improvements of DX! Hope the community can find those tools boosting their workflows, and looking forward to seeing what's coming next!

Back-end/Full-stack

1
Next.js

Next.js

The React Framework
+19.4k☆
2
tRPC

tRPC

Move Fast and Break Nothing. End-to-end typesafe APIs made easy.
+15.2k☆
3
Astro

Astro

A website build tool for the modern web — powerful developer experience meets lightweight output.
+15.0k☆
4
create-t3-app

create-t3-app

The best way to start a full-stack, typesafe Next.js app
+12.4k☆
5
Remix

Remix

Build Better Websites. Create modern, resilient user experiences with web fundamentals.
+11.4k☆

The boundary between front-end and backend frameworks is a bit blurry as there is a strong trend to do more things on the server (including rendering and routing) compared to the SPA approach, where the backend is only responsible for the API. So this section includes full-stack frameworks, meta frameworks and backend frameworks.

Next.js

Like last year, Next.js leads the rankings, the version 13 brought big features including the React Server Components and a new filesystem structure using the app folder that lets developers co-locate their code related to their features and handle nested routes in a powerful way.

tRPC and the create-t3-app

The biggest change is the rise of tRPC, in second. Forget about REST versus GraphQL: there is also the JSON RPC 2.0 protocol that powers tRPC. It really shines with its feature to import the types defined in the server from the client, to provide "end-to-end type safety".

In fourth the project create-t3-app combines tRPC, Next.js and Tailwind CSS in a popular boilerplate.

Astro

In third Astro burst into the scene in 2021 as a static site generator and made the concept of partial hydration popular.

The Astro team's meticulous attention to creating smooth developer experiences is highlighted with the release of Astro 1.0.

The "baked-in" integration of the new SSR support with any frontend tool (like React and SCSS) makes web app development feel too crisp!

Remix

In fifth, Remix keeps growing at a fast pace. It was open sourced in 2021 and just one year later it was acquired by Shopify.

In the blog post The Web Next Transition Kent C. Dodds did a great job to explain the pattern that makes Remix special.

Instead of relying on static generation of pages, Remix leverages distributed computing and native browser features to deliver great performance in the browser and an amazing Developer Experience.

Build Tools

1
Vite

Vite

Next generation frontend tooling. It's fast!
+15.5k☆
2
Turborepo

Turborepo

Incremental bundler and build system optimized for JavaScript and TypeScript, written in Rust – including Turbopack and Turborepo.
+13.9k☆
3
swc

swc

A super-fast compiler written in rust
+6.4k☆
4
Nx

Nx

Smart, Fast and Extensible Build System
+6.0k☆
5
Rome

Rome

Unified developer tools for JavaScript, TypeScript, and the web
+5.1k☆

Guest Writer: Sébastien Lorber

Sébastien is a React early adopter, working with Facebook Open-Source on Docusaurus.

He runs a weekly newsletter about React and React Native: This Week in React

Guest Writer slorber

This year, Vite continues its momentum and has become one of the most popular frontend tools. Its precursor Snowpack is no longer maintained and recommends using Vite. Its adoption is not limited to the Vue ecosystem: Vite is used in SvelteKit, Storybook, Vitest or even as a modern alternative to Create-React-App.

We have also seen the rise of build tools for monorepo with Nx and Turborepo. Nwrl (the company behind Nx) has taken over maintenance of Lerna and released Lerna 6 which enables Nx optimizations by default.

Although Babel remains popular, swc and esbuild have been widely adopted by many projects and meta-frameworks. These new tools allow to significantly improve build and transpilation performances. swc is a more modular choice, as it offers a plugin system.

Vercel announced Turbopack (alpha), a new very fast bundler in Rust on which Tobias Koppers (original creator of Webpack) is working.

The Rome toolchain has released its first stable version, starting with a linter and a formatter with interesting properties. The adoption is shy, but could increase this year.

Many frontend tools in Rust should make news this year:

Mobile

1
React Native

React Native

A framework for building native applications using React
+6.5k☆
2
Expo

Expo

An open-source platform for making universal native apps with React. Expo runs on Android, iOS, and the web.
+2.9k☆
3
React Native Skia

React Native Skia

High-performance React Native Graphics using Skia
+2.8k☆
4
Ionic

Ionic

A powerful cross-platform UI toolkit for building native-quality iOS, Android, and Progressive Web Apps with HTML, CSS, and JavaScript.
+2.6k☆
5
Quasar

Quasar

Responsive Single Page Apps, Server-side Render Apps, Progressive Web Apps, Hybrid Mobile Apps (that look native!) & Electron Apps, all using the same codebase.
+2.5k☆

Guest Writer: Evan Bacon

Lead of Developer Tools at Expo. Native iOS and Android developer. Author of Config Plugins and Expo CLI.

Guest Writer evanbacon

In 2022, the use of JavaScript for building native apps saw significant progress, as exemplified by the breakthrough success of projects like the new Replit mobile app and the integration of React Native into the Shopify app. In fact, React Native-based repositories made up 7 out of the top 10 rising stars in the mobile category this year. This comes as React Native earns its 7th consecutive year as the #1 most starred mobile repo.

In addition to the success of React Native, there was also an exciting trend towards the adoption of popular web patterns, such as the growing use of Tailwind CSS with NativeWind (#10) and advancements in universal Skia rendering (#3). The integration of classic web features, like File System-based routing in Expo (#2), further demonstrated that native app development is becoming increasingly more accessible to web developers.

It’s difficult to predict what the future holds for mobile development, but if the past year is any indication, the divide between web and native app development should continue to decrease drastically in 2023.

Loading
Loading
Loading
Loading
Loading
Loading

Conclusion

2022 started with the chaos when two very popular packages were intentionally broken by their creator: Faker.js and colors.js sabotaged.

The fragility of the huge eco-system was demonstrated again when Lerna a popular tool for mono-repos was declared as un-maintained... until Nrwl, the company behind Nx, announced it was taking over stewardship of Lerna.

JavaScript is eating the world, you may have heard of this prophecy from 2009:

Any application that can be written in JavaScript, will eventually be written in JavaScript

...or in TypeScript we could add 13 years later as TypeScript is becoming the de-facto standard to write JavaScript (first class support by Deno and Bun, default setup of Next.js, out of the box support by Vite...).

The place taken by JavaScript in the code base and the tooling comes with some issues, for both developers and end-users:

  • build times go out of control in large code bases
  • the average size of JavaScript keeps increasing leading to poor performance

In 2022, we saw great innovations to solve these two types of problem at different layers of the stack.

The tooling improved with these solutions:

  • Bun, the champion of the year takes a drastic approach to speed installations and build times
  • Rome is now a linter and a formatter that aims to be the single tool to manage applications written in JS/TS.
  • The building tool Vite

For the performance in the browser, different patterns compete:

  • Zero baseline JavaScript frameworks to deliver nearly no JS to the browser (Qwik is leading the charge)
  • Partial hydration to provide islands of interactivity to static pages (Astro)
  • React Server Components (implemented by Next.js 13 and Gatsby) to delegate more work on the server side.
  • The Progressively Enhanced Single Page Apps architecture implemented by Remix provides both great DX and performance in the browser without compromising any dynamic behavior

There is no silver bullet to solve these issue as the spectrum from static "pages" to fully dynamic "apps" is large.

The JavaScript landscape was once very fragmented: multiple browsers on one side, Node.js with its own CommonJS module system and its own APIs on the other side.

With the rise of the edge computing, there is now a strong trend to use everywhere the same subset of standardized APIs (fetch, HTTP Request and Response...).

Our guest writer Lee Robinson wrote a great summary of this trend in the article Why I'm Optimistic About JavaScript's Future.

And we share the optimism of his conclusion!

What an incredible time to be a web developer.

Authors

Available Translations

Español

中文

日本語