Skip to content

The best dva alternatives

5 tools that do a similar job to dva, 5 of them open source. Each entry says what it does and who it suits, so you can pick the one that fits instead of the most famous.

You're replacing

dva

A lightweight React and Redux framework that organizes app state in an Elm-like style.

  1. 1

    Redux Toolkit

    Open source · MIT · ★ 11.2k

    Official toolset that makes writing Redux state logic simpler and less error-prone.

    Best for: Developers already using or learning Redux for app state; Teams that want the officially recommended Redux setup

  2. 2

    Zustand

    Open source · MIT · ★ 58.9k

    A small React state-management library built on hooks, with no providers needed.

    Best for: React developers who want simpler shared state than Redux; Apps that need state shared across many components without wrapping them in providers

  3. 3

    MobX

    Open source · MIT · ★ 28.2k

    A JavaScript library that tracks state changes automatically and updates the parts of your UI that depend on t

    Best for: Frontend developers building React apps with complex or frequently changing state; Teams who want state logic kept outside UI components so it is easier to test

  4. 4

    redux-saga

    Open source · MIT · ★ 22.4k

    A Redux middleware that manages side effects like data fetching using generator functions.

    Best for: React or other frontend developers already using Redux who need to manage async logic; Teams that want asynchronous flows that are easy to test

  5. 5

    Iced

    Open source · MIT · ★ 31.9k

    A Rust library for building desktop and web graphical interfaces, modeled on the Elm architecture.

    Best for: Rust developers building a desktop GUI application; Developers who like the Elm-style state, message, and update pattern

How we pick: tools in the same category that solve the same problem, projects that name each other as alternatives, and open-source projects that describe themselves as an alternative to dva. We don't take payment for placement.