react-18 VS rfcs

Compare react-18 vs rfcs and see what are their differences.

react-18

Workgroup for React 18 release. (by reactwg)

rfcs

RFCs for substantial changes / feature additions to Vue core (by vuejs)
Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
react-18 rfcs
139 74
5,173 4,825
0.2% 0.4%
0.0 2.9
almost 3 years ago about 1 month ago
- -
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

react-18

Posts with mentions or reviews of react-18. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-12-10.
  • A modest request: How do you fetch data in React 18+ WITHOUT a third party dependency?
    4 projects | /r/reactjs | 10 Dec 2023
  • The Sisyphean Quest for Web Performance
    3 projects | dev.to | 29 Aug 2023
    Image Source: https://github.com/reactwg/react-18/discussions/37
  • The current state of CSS-in-JS + React
    2 projects | /r/reactjs | 5 Feb 2023
    The React working group is officially advising against using runtime CSS-in-JS.
  • [AskJS] How well received was React's transition from class to function based components?
    2 projects | /r/javascript | 5 Jan 2023
    Interesting about the feedback, thanks for the clarification. In general what I'm thinking of is PR's like this one in React where you see lots of back and forth from the community to get things right. Looking at Vue trying to transition from 2 to 3 and even Python from 2 to 3, it seems like it's not easy. I might be making an unfair comparison here though, I don't know much about those transitions except from what I've heard.
  • alternatives to useReducer for heavy async flows
    2 projects | /r/reactjs | 18 Dec 2022
    Redux with sagas is a great hint to a solution that is only a small tweak of what you currently do. You need middlewares (that's what makes sagas possible)! Contrary to what some may suggest, you actually don't need to use external state management to get middlewares, as you can integrate an enhancer to useReducer itself. And you should be aware that moving off-react state management "updates triggered by external stores are always synchronous" meaning you're losing startTransition powers.
  • Why Tailwindcss over styled-components?
    7 projects | /r/reactjs | 23 Nov 2022
  • Is there a dedicated ui library dedicated for server component?
    3 projects | /r/nextjs | 23 Nov 2022
    Anything that uses css-in-js (styled-components / emotion) won't currently work properly: https://beta.nextjs.org/docs/styling/css-in-js the problem isn't related to emotions SSR strategy as that relates to client components being statically pre-rendered. The problem actually relates to the implementation of these solutions as they do not work very well with the new concurrent rendering patterns of react 18 and they haven't completed the upgrade process explained here: https://github.com/reactwg/react-18/discussions/110 this will be a pretty large fundamental change to emotion, so may take a fair while to fully support it, especially given that next's app folder is still a beta feature :)
  • CSS vs CSS-in-JS performance
    4 projects | /r/reactjs | 22 Nov 2022
    In React 18 and onwards runtime css-in-js libs will have significant performance issues for concurrent rendering, recomputing inline styles repeatedly and redundantly; https://github.com/reactwg/react-18/discussions/110 . Facebook have no real interest into fixing this I believe (I assume it would be hard with unwanted trade-offs). Facebook themselves use a buildtime css-in-js lib(not open source).
  • Just watched Fireship's video "7 Ways to Deal With CSS". What's your Favourite and Why?
    2 projects | /r/reactjs | 2 Nov 2022
    I switched back to SASS modules in NextJS due to the issue with runtime CSS-in-JS in NextJS18 and onwards: https://github.com/reactwg/react-18/discussions/110
  • Why We're Breaking Up with CSS-in-JS
    11 projects | dev.to | 16 Oct 2022
    1. Frequently inserting CSS rules forces the browser to do a lot of extra work. Sebastian Markbåge, member of the React core team and the original designer of React Hooks, wrote an extremely informative discussion in the React 18 working group about how CSS-in-JS libraries would need to change to work with React 18, and about the future of runtime CSS-in-JS in general. In particular, he says:

rfcs

Posts with mentions or reviews of rfcs. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-09-20.
  • Svelte 5: Runes
    7 projects | news.ycombinator.com | 20 Sep 2023
    ```

    We started experimenting with this ling of thought almost 3 years ago:

    - First take (ref sugar), Nov 2020: https://github.com/vuejs/rfcs/pull/228

    - Take 2, Aug 2021: https://github.com/vuejs/rfcs/pull/368

    - Take 3, Nov 2021: https://github.com/vuejs/rfcs/discussions/369

    We provided it as an experimental feature and had a decent number of users trying it out in production. The feedback wasn't great and eventually decided to drop it. https://github.com/vuejs/rfcs/discussions/369#discussioncomm...

  • Vue.js Reactivity System: Ref, reactive, shallowRef, & shallowReactive
    2 projects | dev.to | 18 May 2023
    This is a personal preference, but I use ref almost all the time. Despite tediously writing the .value to access the ref’s value, the Vue team is aware of the problem, and the open RFC - Reactivity Transform, was aiming to solve this issue, however, seems like it was abandoned.
  • The Rear-Vue Mirror: My Open-Source Origin Story
    9 projects | dev.to | 11 Apr 2023
    This was a good change. Evan has always been extremely good at putting his finger on the pulse of the frontend community. If there's a feature or paradigm that people love that would fit in Vue, Evan will incorporate it. Over the years, Vue has implemented (and sometimes later deprecated) dependency injection, JSX support, custom elements, Angular-style class components, Svelte-style ref sugar, and now Solid-inspired compiler optimizations. They even changed the order of a Vue file to match that of Svelte: first the script, then the template.
  • Vue 2 end of life December 2023
    3 projects | /r/vuejs | 13 Jan 2023
    Here is the Current language: https://github.com/vuejs/rfcs/blob/function-apis/active-rfcs/0000-function-api.md
  • I give up battling against React 🏳️
    2 projects | /r/webdev | 9 Jan 2023
    So here's the bottom line. You get RFCs looking like someone trying to land a man on the moon for things like generics in vue while the rest of the world gets work done. Eg https://github.com/vuejs/rfcs/discussions/436
  • WebGL minigame on my new portfolio website
    3 projects | /r/webdev | 7 Jan 2023
    Oh you meant that. Vue and Vite got amazing documentations and I recommend to read them through fully. One more thing i can also recommend is to read through Vue RFCs as well as they contain more extra info sometimes not covered in the docs: https://github.com/vuejs/rfcs Since Vite is based on Rollup, I'd additionally recommend to read Rollup docs, but I find it quite hard to read and navigate https://rollupjs.org/guide/en/#big-list-of-options
  • Vue.js 2022 Year In Review and what to expect in 2023
    2 projects | /r/javascript | 3 Jan 2023
    The Reactivity Transform, the way it is, is a fucking mess, and would introduce a lot of confusion into the already confused Vue 3 syntax.
  • How to make Vite not unload the previous route
    2 projects | /r/vuejs | 12 Dec 2022
    https://github.com/vuejs/vue-router/issues/703 https://github.com/vuejs/rfcs/blob/master/active-rfcs/0036-router-view-route-prop.md https://github.com/vuejs/vue-router/issues/703#issuecomment-428123334
  • Beginner here, start with react, svelte or solid?
    6 projects | /r/webdev | 3 Dec 2022
    Not a "huge drawback", but the excess of .value is annoying. The Reactivity Transform RFC attempts to mitigate that, but IMO it's a footgun and will make things a lot more confusing, so I hope it's not merged.
  • [AskJS] Anyone used Svelte on an enterprise-level or very complex app? What were your experiences?
    2 projects | /r/javascript | 10 Nov 2022
    For Vue 3, not so much. It not only introduced new different concepts, but also made a huge mess for newcomers with its variations (Options API, Composition API, Composition API with script setup), which are different but similar enough to be confused. And the upcoming Reactivity Transform will make it even more confusing by introducing new variations.

What are some alternatives?

When comparing react-18 and rfcs you can also consider the following projects:

Preact - ⚛️ Fast 3kB React alternative with the same modern API. Components & Virtual DOM.

htmx - </> htmx - high power tools for HTML

volar - ⚡ Explore high-performance tooling for Vue [Moved to: https://github.com/vuejs/language-tools]

petite-vue - 6kb subset of Vue optimized for progressive enhancement

react-query - 🤖 Powerful asynchronous state management, server-state utilities and data fetching for TS/JS, React, Solid, Svelte and Vue. [Moved to: https://github.com/TanStack/query]

unplugin-auto-import - Auto import APIs on-demand for Vite, Webpack and Rollup

React - The library for web and native user interfaces.

zustand - 🐻 Bear necessities for state management in React

pinia - 🍍 Intuitive, type safe, light and flexible Store for Vue using the composition api with DevTools support

pinia-shared-state - 🍍 Sync your Pinia state across browser tabs.

vite - Next generation frontend tooling. It's fast!

unplugin-vue-components - 📲 On-demand components auto importing for Vue