Welcome to the 8th edition of the JavaScript Rising Stars, the place to see the trends about the JS ecosystem in 2023.

Let's see how a set of UI components you copy-paste took the world by storm!


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
    shadcn/uiBunExcalidrawtldrawNext.jsSupabaseReactTauriDrizzle ORMhtmx
  2. Front-end Frameworks
    ReacthtmxSvelteMillionVue.js
  3. React Ecosystem
    shadcn/uiExcalidrawNext.jsZustandRefine
  4. Vue Ecosystem
    NuxtSlidevVue Element AdminVueUseElement Plus
  5. Back-end/Full-stack
    Next.jsAstrotRPCcreate-t3-appNest
  6. Build Tools
    BunViteBiomeOxcRspack
  7. Mobile
    ExpoReact NativeTamaguiQuasarCapacitor
  8. Styling / CSS in JS
    Tailwind CSSStylexUnoCSSTamaguiPanda
  9. CSS libraries
    DaisyUIBootstrapPico.cssBulmaPrimer
  10. Testing
    PlaywrightStorybookPuppeteerVitestCypress
  11. Desktop
    TauriWailsElectronNativefierGluon
  12. Static Sites
    Next.jsAstroDocusaurusNuxtNextra
  13. State Management
    ZustandJotaiXStatePiniaNano stores
  14. GraphQL
    TanStack QueryDirectusAmplicationNhostHasura GraphQL Engine
  15. AI
    LangChain.jsTypeChatVercel AI SDKTransformers.jsTesseract.js
  16. Conclusion

Most Popular Projects Overall

1
shadcn/ui

shadcn/ui

Beautifully designed components that you can copy and paste into your apps. Accessible. Customizable. Open Source.
+39.5k☆

Trends in 2023

6.8k
1.5k
1.7k
3.5k
4.4k
4.9k
3.2k
3.4k
2.8k
2.1k
1.8k
3.4k
J
F
M
A
M
J
J
A
S
O
N
D

GitHub data

Created
2023-01
Total stars
48.4k☆

Links

2
Bun

Bun

Incredibly fast JavaScript runtime, bundler, test runner, and package manager – all in one
+29.3k☆
3
Excalidraw

Excalidraw

Virtual whiteboard for sketching hand-drawn like diagrams
+23.2k☆
4
tldraw

tldraw

Infinite canvas.
+17.9k☆
5
Next.js

Next.js

The React Framework
+17.8k☆
6
Supabase

Supabase

The open source Firebase alternative
+17.7k☆
7
React

React

The library for web and native user interfaces.
+16.9k☆
8
Tauri

Tauri

Build smaller, faster, and more secure desktop applications with a web frontend.
+15.7k☆
9
Drizzle ORM

Drizzle ORM

Headless TypeScript ORM with a head. Runs on Node, Bun and Deno. Lives on the Edge and yes, it's a JavaScript ORM too
+15.6k☆
10
htmx

htmx

Access AJAX, WebSockets and Server Sent Events directly in HTML
+15.6k☆

Overall winner: shadcn/ui 🏆

The hottest project of the year is shadcn/ui, a collection of UI components written in React, allowing customizable styling through TailwindCSS.

Built on top of Radix, a set of headless components providing primitives for concerns like accessibility and keyboard interactions, shadcn/ui distinguishes itself from other popular libraries (such as MUI, ChakraUI, React Spectrum) by not being a downloadable NPM package. Instead, you integrate the shadcn/ui components through a terminal command that installs the underlying dependencies and copies the component source code directly into your codebase for further modification.

The project's success is closely tied to the widespread popularity of Tailwind CSS (number 20 overall), its compatibility with React Server Components, and the presence of excellent documentation.

It seems all new shiny React projects have adopted shadcn/ui. It was even chosen by Kent C. Dodds for his cutting-edge Epic Stack.

Another example involving AI: from a user prompt describing the features and the look-and-feel of a piece of UI, the application v0.dev generates the JSX code made of shadcn/ui components. Mesmerizing!

Last but not least, Best of JS uses them too, after the rewrite I did to transition from a SPA to a Next.js app.

Its approach has already inspired other projects:

For an in-depth analysis, refer to the article The anatomy of shadcn/ui.

Number two: Bun

Bun, the champion of 2022, keeps its tremendous momentum.

Bun aims to be a fast, all-in-one toolkit for running, building, testing, and debugging JavaScript and TypeScript applications.

The version 1 was officially released in September (check the peak in the graph!) and Bun claims to be "production-ready".

The docs provide great recipes to help get started as fast as possible with Bun APIs and common tasks such as file manipulation and handling database interactions.

A strong statement was made at the end of the year:

We have one goal for 2024 Flip the default backend JavaScript runtime from Node.js to Bun

The compatibility with most of the Node.js eco-system (including the support of good old CommonJS imports via require) and the support of the main full-stack frameworks (Next.js, Nuxt, Astro...) can make it possible!

Front-end Frameworks

1
React

React

The library for web and native user interfaces.
+16.9k☆
2
htmx

htmx

Access AJAX, WebSockets and Server Sent Events directly in HTML
+15.6k☆
3
Svelte

Svelte

Cybernetically enhanced web apps
+10.3k☆
4
Million

Million

<1KB Virtual DOM Implementation
+8.2k☆
5
Vue.js

Vue.js

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

React

In 2023, React maintains its position as a frontrunner in the JavaScript ecosystem, a trend persisting from 2021 and 2022, despite occasional criticism and controversies.

Celebrating its 10th anniversary, React earned a documentary (watch it here); it says a lot about its popularity!

However, React is not without its skeptics. Some view it as a relic of the past, a sentiment expertly explored in this article, which also delves into alternative solutions. On the flip side, proponents laud React for its remarkable adaptability and capacity for reinvention.

One point of contention revolves around the absence of "signals", a reactivity handling mechanism employed by libraries such as Solid or Preact, while React enthusiasts appreciate the predictability offered by React's data flow.

From a tweet by Devon Govett, the creator of Parcel, about signals:

The simplicity of UI as a function of state is lost when updates flow unpredictably.

To know more about signals, read The Evolution of Signals, a comprehensive exploration of one of the year's buzzwords.

htmx

At two htmx is a library that takes a different approach to provide interactivity to HTML page: rather than writing several lines of JavaScript code, developers enhance HTML with specific attributes to enable real-time interactivity and dynamic updates.

It was lauded for its small file size and seamless integration with existing server-side frameworks, as it's part of the trend "send HTML over the wire": ask the server to send partial blocks of HTML instead of handling JSON in the client.

In the same space of "tagging libraries", Alpine.js is a popular solution (number 13 this year).

Svelte

At three, Svelte popularity keeps growing. It's often seen as a modern alternative to React. A big change is coming soon with Svelte 5, "the most anticipated release in the project's history", that introduces runes to address some of the "pain points" when handling state reactivity. This short video from Rich Harris does a great job of explaining the problems fixed by the runes.

One of the stories of the year is related to Svelte and caused a lot debates (E.g. Hacker News): the Svelte team has chosen to use JavaScript with JSDoc annotations instead of TypeScript, to avoid the additional complexity and drawbacks associated with TypeScript, while still providing the benefits of type safety.

Other frameworks updates

  • Million v3 is a lightweight library that enables "React components to run at the speed of raw JavaScript."
  • Angular 17 introduced significant improvements in performance, refreshed documentation, and a new branding (including nice colors for the logo)
  • Qwik reached v1 in April. The framework for building "resumable" apps that ship zero JS (initially) while delivering HTML that becomes instantly interactive.

React Ecosystem

1
shadcn/ui

shadcn/ui

Beautifully designed components that you can copy and paste into your apps. Accessible. Customizable. Open Source.
+39.5k☆
2
Excalidraw

Excalidraw

Virtual whiteboard for sketching hand-drawn like diagrams
+23.2k☆
3
Next.js

Next.js

The React Framework
+17.8k☆
4
Zustand

Zustand

Bear necessities for state management in React
+13.2k☆
5
Refine

Refine

A React Framework for building internal tools, admin panels, dashboards & B2B apps with unmatched flexibility.
+11.0k☆

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

In 2023, we saw React enter its third era with the advent of React Server Components.

The React core team and Vercel collaborated to release the first stable implementation: Next.js 13.4 App Router. Despite leading an exciting innovation and deploying consequent resources, Vercel received its fair share of criticism for its privileged relationship with the React core team and early access to experimental features. In early 2023, it was common to see new React features being documented first on the Next.js documentation. The community didn’t appreciate certain design decisions, such as the extension of the fetch() API, on which they are now backtracking. It was also common to see complaints about the stability of the App Router, and the performance of its development server. Nevertheless, React Server Components early adopters reported many promising benefits, such as smaller bundle sizes and greatly simplified code.

The React team clarified its position and rollout strategy for its new experimental features. It is fine for frameworks to adopt canary versions, whose breaking changes will be documented. They have also caught up with documentation, ending the year with a great React Docs Update, thoroughly documenting the newest APIs (useFormState, , ‘use server’ ...).

We also saw the advent of Server Actions, a new React core feature first implemented as stable in Next.js 14, enabling seamless RPC calls for form submissions and mutations. Similar to the philosophy of Remix, Server Actions are designed with progressive enhancement in mind.

In 2024, it will be exciting to see other frameworks adopt React Server Components, notably:

We are eagerly waiting for React 19, which should be coming soon.

Vue Ecosystem

1
Nuxt

Nuxt

The Intuitive Vue Framework.
+7.6k☆
2
Slidev

Slidev

Presentation Slides for Developers
+5.3k☆
3
Vue Element Admin

Vue Element Admin

A magical vue admin
+4.9k☆
4
VueUse

VueUse

Collection of essential Vue Composition Utilities for Vue 2 and 3
+4.6k☆
5
Element Plus

Element Plus

A Vue.js 3 UI Library made by Element team
+4.0k☆

Guest Writer: Lucie Haberer

Core team member of Nuxt, speaker, open-source enjoyer, and Developer Experience Engineer at Prismic.

Guest Writer lihbr

With Vue 2 announced to sunset at the end of 2023, this year was deemed to be a turning point for Vue and its community with lots of us embarking on the journey to upgrade to version 3.

In that regard, efforts were made to help with migrating, the ecosystem caught up and kept on developing itself: it showed great results! Nuxt 3 now has more downloads than Nuxt 2. UI frameworks, like Vuetify and PrimeVue, are readier than ever to help build large (and less large!) applications. Libraries such as VueUse, Pinia, or even TresJS kept on growing and enhancing themselves to better empower us all.

Like in 2022, the Developer Experience was still was still a top priority. Vue 3.3 brought in improved TypeScript support for <script setup>. Nuxt released 8 minor versions and unveiled Nuxt DevTools, a creative and insightful UI to help us better understand our apps and develop them faster.

Looking forward, and as Evan said, 2024 is set to be an exciting year for Vue. Vue 3.4 is right around the corner and Vapor mode, now open-sourced, is progressing well. All of it tuning the new year for more performance improvements and community innovation.

Back-end/Full-stack

1
Next.js

Next.js

The React Framework
+17.8k☆
2
Astro

Astro

A website build tool for the modern web — powerful developer experience meets lightweight output.
+14.4k☆
3
tRPC

tRPC

Move Fast and Break Nothing. End-to-end typesafe APIs made easy.
+12.8k☆
4
create-t3-app

create-t3-app

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

Nest

A progressive Node.js framework for building efficient, scalable, and enterprise-grade server-side applications with TypeScript/JavaScript
+8.7k☆

This year too Next.js is the leading project in the backend/fullstack category.

The version 14 focuses on improving server actions and introduces a new Partial Preview rendering mode.

With React Server Components, developers can build web applications with new paradigms that can simplify drastically the code: fetching data directly from a component that is made async and mutating data by binding forms to server actions.

A lot has been said about this presentation that showcases making an SQL request directly from a component, but people may have missed the point: React Server Components can behave like self-contained components that can be dropped any where in your application, without any tedious wiring, the video does a great job to help building the new mental model made possible by RSC, showing a mix of server and client components that work seamlessly.

At two, Astro keeps climbing the rankings. Besides the original concept (generate ultra fast static sites that run without JavaScript and add interactivity with islands using the UI framework of your choice) it can be used to generate pages dynamically too.

I was impressed by the simplicity the templating system of .astro files (very close to JSX) and by the great DX (the CLI is a beauty!).

Version 4 introduces a new toolbar for development, automatic i18n routing and a new View Transition API to improve the UX.

Build Tools

1
Bun

Bun

Incredibly fast JavaScript runtime, bundler, test runner, and package manager – all in one
+29.3k☆
2
Vite

Vite

Next generation frontend tooling. It's fast!
+11.1k☆
3
Biome

Biome

A toolchain for web projects, aimed to provide functionalities to maintain them. Biome offers formatter and linter, usable via CLI and LSP.
+7.0k☆
4
Oxc

Oxc

A collection of JavaScript tools written in Rust.
+6.5k☆
5
Rspack

Rspack

A fast Rust-based web bundler
+6.5k☆

Bun is also a bundler so we included it this year in the "Building Tools" category.

At two Vite is still the most popular versatile bundler, powering meta frameworks such as Astro, Nuxt, Remix, SolidStart, SvelteKit...

Version 5 released in November, is built on top of rollup 4, bringing performance improvements.

Evan You announced he was working on Rolldown a port of Rollup in Rust that will be integrated to Vite. So the future of Vite is bright!

At three, the rise of Biome is one of the stories of the year. It's related to the fall of Rome, an ambitious project that aimed to unify web tooling (compiling, linting, formatting, bundling, testing). The company behind the project failed and the project was stopped this year.

Fortunately the project was forked and re-born under the name of Biome.

In November, Biome won the Prettier Challenge: creating "a Rust-powered code formatter that could pass over 95% of Prettier’s tests". Prettier being such a standard, we can expect more adoption of Biome in 2024.

Speaking of Rust, Oxc and Rspack are the new players in this space, coming from the ByteDance team. Rspack provides compatibility with Webpack while delivering unmatched performance. For the first time since we started Rising Stars, it's weird not to see Webpack in the rankings given the number of projects that use it!

Mobile

1
Expo

Expo

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

React Native

A framework for building native applications using React
+6.8k☆
3
Tamagui

Tamagui

Universal UI kit and style system for React Native + Web - with an optimizing compiler
+5.0k☆
4
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.1k☆
5
Capacitor

Capacitor

Build cross-platform Native Progressive Web Apps for iOS, Android, and the Web
+2.0k☆

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 2023, the mobile space made significant progress towards unifying the web and native development experiences. This is evident from the top projects Expo (#1), Tamagui (#3), and Nativewind (#6) which share the goal of maximizing code reuse and increasing accessibility for web developers.

There's a clear trend toward better styling solutions in React Native with Tamagui (#3), Nativewind (#6), and React Native Paper (#7) leading the way. This mirrors the web community, where shadcn-ui ranked #1 in overall popularity. I doubt this movement will slow down in 2024.

In 2022, the official recommendation from the React team shifted from boilerplate solutions like Create React App to framework-first solutions like Remix and Next.js. A year later, we can see a similar shift in the React Native ecosystem. Tools like Expo, Tamagui, and Ignite, which offer many framework-first attributes, have all trended upward in popularity. This shift indicates a move away from framework-less React Native towards more opinionated solutions by default, signaling the evolution of mobile development paradigms. I predict this trend will continue in 2024.

React Native's dominance is evident with seven of the top ten projects based on this library. However, the presence of three webview-based projects in this list suggests a lingering interest in deploying websites directly to app stores as-is. Perhaps 2024 will be the year that we see these two approaches start to converge.

Overall it was a fantastic year for mobile development. I predict 2024 will have continued interest in styling solutions for React Native, more rendering patterns for native (likely with React Server Components on native), better server integration to support AI-driven apps, and possibly some interesting visionOS projects.

Loading
Loading
Loading
Loading
Loading
Loading
Loading
Loading

Conclusion

Let's recap some of the stories and dramas of 2023:

  • Svelte code base ditching TypeScript files (while preserving type safety)
  • Controversies around React (either too old, too complicated, PHP-like...)
  • The fall of Rome and the rise of Biome
  • Angular rejuvenated
  • The release of Bun v1
  • Astro 4.0 released
  • Stylex open-sourced by Meta, at last!

We saw the rise of AI tools that can generate UI from prompts and even images making people wonder if there will be frontend developers in a few years.

As I pen down this summary for the eighth time, one can't help but wonder: Could an AI take over this task next year?

If you enjoyed this roundup, share your appreciation, and who knows, we might be back in a year for the 2024 Rising Stars!

Authors

Available Translations

Español

中文

日本語

한국어