SWR VS redux-toolkit

Compare SWR vs redux-toolkit and see what are their differences.

Our great sponsors
  • SurveyJS - Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
SWR redux-toolkit
243 287
29,383 10,382
1.4% 1.0%
8.4 9.9
10 days ago 7 days ago
TypeScript TypeScript
MIT License MIT License
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.


Posts with mentions or reviews of SWR. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-04-10.
  • Best Next.js Libraries and Tools in 2024
    10 projects | dev.to | 10 Apr 2024
    Link: https://swr.vercel.app/
  • How to Automatically Consume RESTful APIs in Your Frontend
    13 projects | dev.to | 25 Jan 2024
    Now, it's time to consume our API. We'll use React for this tutorail, but feel free to use any other framework you prefer; the process remains the same. Additionally, we'll utilize SWR to fetch data from the API and TypeScript to ensure type safety.
  • A day in the life of a developer - Building a dashboard app with SQL, Node.js, Django and Next.js
    2 projects | dev.to | 25 Jan 2024
    'use client'; import FormPostUpdate from './components/FormPostUpdate/FormPostUpdate'; import FormDelete from '../app/components/FormDelete/FormDelete'; import { useFetch } from './hooks/useFetch'; import { useFetchSWR } from './hooks/useFetchSWR'; import Chart from './components/Chart/Chart'; export default function Home() { // Uncomment the code below and comment out the "useFetch" code if your want to use SWR for data fetching --> https://swr.vercel.app/docs/with-nextjs // const { data, error, isLoading } = useFetchSWR( // '' // ); // Uses the Fetch API for data fetching const { data, error, isLoading } = useFetch( '' ); if (error) return
    An error has occurred.
    ; if (isLoading) return
    ; console.log(data); return ( <>

    POST: Add Anime Form

    UPDATE: Update Anime Form

    Select an ID from the list. You can change the data for Anime ID, Name and Release.

    DELETE: Delete Anime Form

    GET: Anime Data List

    {data.map((anime) => (
    • {anime.anime_name}

    • ID: {anime.id}
    • Anime ID: {anime.anime_id}
    • Anime Release Year: {anime.anime_release}
    ); }
  • API Data Fetching in React / Next.js
    1 project | dev.to | 3 Jan 2024
    There are libraries like SWR, RTK Query, and React Query that simplify the data fetching process on the client and take care of the state, error handling, caching, and re-fetching for you.
  • How to Fetch API Data in React
    3 projects | dev.to | 17 Dec 2023
    Then install the package SWR into your application with the following command:
  • 45 NPM Packages to Solve 16 React Problems
    22 projects | dev.to | 14 Nov 2023
  • TanStack Query(a.k.a. React Query) v5 announced
    3 projects | news.ycombinator.com | 19 Oct 2023
    I would suggest taking a look at SWR [0]. I think it strikes a very nice balance between using fetch and something more heavy-handed like React Query.

    [0] https://swr.vercel.app/

  • Mastering Data Fetching in React: A Comprehensive Guide to SWR
    2 projects | dev.to | 16 Oct 2023
    Check out the official documentation for SWR here
  • Angular vs. React vs. Vue.js: Comparing performance
    16 projects | dev.to | 6 Sep 2023
    SWR: A React Hooks library for remote data fetching. It supports features like caching, revalidation, error handling, prefetching, pagination, and support for SSG and SSR. Its bundle size is 10kb minified and 4.4kb gzipped
  • Next.js 13 Data Fetching with App Router
    1 project | dev.to | 4 Sep 2023
    SWR Library


Posts with mentions or reviews of redux-toolkit. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-02-06.
  • Copilot: Weapon For Laid Back Developers
    2 projects | dev.to | 6 Feb 2024
    In my example I am using Redux Toolkit and I got a prompt for actions to login and logout the user. If I need more functions, I can simply start typing the name, and Copilot provides the completion. For instance, in the example, I'm adding a function to update the user. And of course at the end of the file it suggests the exports.
  • Streamlining State Management with Redux Toolkit
    2 projects | dev.to | 16 Dec 2023
    Check out the official documentation.
  • Next.js Weekly #34: StyleX, Self-Healing URLs, AuthKit, Scaleable TailwindCSS, Layouts vs Templates, Faster Next.js Websites [👇 all links in the comments]
    4 projects | /r/nextjs | 10 Dec 2023
    Redux Toolkit 2.0
  • This Month in React Nov 2023 – Redux Toolkit 2.0, Kent v Lee, Prettier bounty
    5 projects | /r/reactjs | 5 Dec 2023
    Redux Toolkit 2.0 is almost here! Hopefully shipping by this weekend :) Migration page
  • Redux Toolkit 2.0: new features, faster perf, smaller bundle sizes (plus major versions for all Redux family packages!)
    1 project | /r/javascript | 5 Dec 2023
    7 projects | /r/reactjs | 5 Dec 2023
  • Redux Toolkit 2.0: new features, faster perf, smaller bundle sizes, and more
    6 projects | news.ycombinator.com | 4 Dec 2023
    I am _thrilled_ to announce that:

    Redux Toolkit 2.0 is LIVE!!!

    - https://github.com/reduxjs/redux-toolkit/releases/tag/v2.0.0

    This major version has new features, faster perf, smaller bundle size, and removes deprecated options.

    It's accompanied by majors for all our Redux family packages

    ## RTK 2.0:

    - a new `combineSlices` method for lazy-loading reducers - Updates to `createSlice` to include a `selectors` field and allow defining thunks inside

    - Immer 10 w/ faster updates

    - Removal of deprecated options

    See the migration guide:

    - https://redux.js.org/usage/migrations/migrating-rtk-2

    All of the Redux libraries now have modernized packaging with full ESM/CJS compat. They also ship modern JS (no transpiling for IE11), which means smaller bundle sizes.

    We've also done byte-shaving work to shrink the bundles (extracting error messages, de-duping imports)

    ## Redux core 5.0:

    - The TS conversion we did in 2019!

    - Action types _must_ be strings

    - `UnknownAction` as the default action type

    - Better preloaded state types

    - Internal subscription improvements

    - Still marks `createStore` as deprecated!

    - https://github.com/reduxjs/redux/releases/tag/v5.0.0

    ## React-Redux 9.0:

    - *Now requires React 18 and RTK 2.0 / Redux 5.0*

  • Blogged Answers: My Experience Modernizing Packages to ESM
    2 projects | news.ycombinator.com | 25 Nov 2023
    Oh hey, that's my post!

    (yes I spend too much time refreshing HN :) )

    FWIW I did end up with a packaging combination that seems to work sufficiently. I never did fix the "FalseCJS" issue that `are-the-types-wrong` is detecting. I played with double-emitting TS typedefs, and the `tsup` tool _does_ actually have support for that now (added by Andrew Branch from the TS team). So it might be more feasible now. But ultimately I decided I was tired of messing with packaging setup and that what I've got is good enough. (hopefully)

    We're actually about to launch Redux Toolkit 2.0 and Redux 5.0 this week, assuming the last couple pieces come together. Here's the latest RCs - you can see the current `package.json` files in there:

    - https://github.com/reduxjs/redux-toolkit/releases/tag/v2.0.0...

    - https://github.com/reduxjs/redux/releases/tag/v5.0.0-rc.1

  • Setting up Redux Persist with Redux Toolkit in React JS
    3 projects | dev.to | 3 Nov 2023
    However, Redux, or pure Redux to be specific, can be quite verbose and boilerplate-heavy. It requires a significantly lengthy setup, which is where Redux Toolkit comes in handy, offering a simplified and more efficient way to set up and manage state in your React applications.
  • 44 React Frontend Interview Questions
    1 project | dev.to | 12 Oct 2023
    State manager is a tool or library that helps manage the state of an application. It provides a centralized store or container for storing and managing data that can be accessed and updated by different components in the application. A state manager solves several problems. Firstly, it is a good practice to separate data and the logic related to it from components. Secondly, when using local state and passing it between components, the code can become convoluted due to the potential for deep nesting of components. By having a global store, we can access and modify data from any component. Alongside React Context, Redux or MobX are commonly used as state management libraries. Learn more Learn more

What are some alternatives?

When comparing SWR and redux-toolkit you can also consider the following projects:

axios - Promise based HTTP client for the browser and node.js

redux-saga - An alternative side effect model for Redux apps

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]

zustand - 🐻 Bear necessities for state management in React

redux - A JS library for predictable global state management

redux-thunk - Thunk middleware for Redux

next-redux-wrapper - Redux wrapper for Next.js

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

react-hook-form - 📋 React Hooks for form state management and validation (Web + React Native)