← Back to Features
Pro

State Inspector

State Inspector finds the Redux, Zustand, Pinia and Vuex stores on the page you are on, shows their state as a live tree, and lets you dispatch actions, patch state or call store actions without opening a debugger.

Front-end bugs very often live in state rather than in markup: a flag that never flips, a list holding a stale item, a user object missing the field the interface expects. Framework devtools can show it, but only when the right extension is installed, the build exposes it and you are on a machine where you can open a debugger. On a staging site, a colleague's laptop or a production page, that is often not the case.

This tool reads the stores straight from the page. Redux is found through the store react-redux hands to its Provider, Pinia and Vuex through the Vue application they are installed in (Vue 3 and Vue 2), and Zustand through a store exposed on window or through the components that read from it. Each store is listed with where it was found, and its state is shown as a collapsible tree that keeps Maps, Sets, Dates, functions and circular references readable instead of failing to serialise.

Live mode re-reads the selected store every two seconds, highlights the top-level keys that changed and keeps a short change log, so you can click around the page and watch which part of the state each interaction touches. A filter finds any key or path in a large state tree, and Copy state JSON gives you a snapshot for a bug report or a test fixture.

When reading is not enough, change it in place: dispatch a Redux action, merge an object into Zustand state or call one of its actions, $patch a Pinia store or run its actions with arguments, and commit mutations or dispatch actions in Vuex, including namespaced modules. The tree and the page update immediately. The tool is also clear about what it cannot reach: a store kept inside a module and never handed to the interface is invisible from outside, and the panel explains how to expose one during development.

Live Preview
shop.example.com
State Inspector 3 stores found — 1 Redux, 1 Zustand, 1 Pinia
REDUX
Redux store 1
<Provider store>
ZUSTAND
Zustand store 1
used in <CartBadge>
PINIA
user
pinia
Filter by key or path…
▾ cart: {3}
items: Array(2)
total: 59.98
coupon: null
▸ user: {4}
▸ prefs: Map(2)
updatedAt: 2026-10-09T08:14:02Z Date
Dispatch an action
{ "type": "cart/applyCoupon", "payload": "SAVE10" }
Dispatch
Changes · Live (every 2s)
08:14:02 · Redux store 1 · cart
08:13:57 · Redux store 1 · user, cart
Key Features

Four State Libraries, One Panel

Redux and Redux Toolkit, Zustand, Pinia and Vuex on Vue 2 and Vue 3, found automatically — no setup and no devtools hook in the build.

A Readable Live Tree

Nested state as a collapsible tree that handles Maps, Sets, Dates, functions, class instances and circular references, with Pinia and Vuex getters shown separately.

See What Each Click Changes

Live mode highlights the top-level keys that changed and logs every change with a timestamp, so you can map interactions to state updates.

Edit State in Place

Dispatch Redux actions, call Zustand and Pinia actions with arguments, $patch Pinia state, merge into Zustand state, and commit or dispatch in Vuex.

Find Any Value Fast

Filter a large state tree by key or path, then copy the whole state as JSON for a bug report, a test fixture or a comparison.

Works Without Devtools

Nothing to install in the app and no debug build needed — it works on staging, on production and on other people's sites, wherever the stores are reachable.

Common Use Cases

Debugging a component that shows the wrong thing

Check whether the bug is in the data or in the view: if the store already holds the wrong value, the component is not the problem.

Reproducing an edge case

Put the store into a state that is hard to reach by clicking — an empty cart, an expired session, a thousand items — and see how the interface copes.

Checking state on staging or production

Read the live stores of a deployed build where Redux DevTools or Vue Devtools are not connected.

Learning an unfamiliar codebase

Click through the app and watch the change log to learn which interactions update which part of the state.

Attaching state to a bug report

Add an exact JSON snapshot of the store to the ticket instead of describing what the interface showed.

How to Use
1

Open State Inspector

Click the State Inspector icon in the DevSuite Pro dock on a React or Vue page. Every store it finds is listed with its library and where it was found.

2

Pick a store

Select a store to see its state as a tree. Expand the branches you need, or type in the filter to jump straight to a key or path.

3

Use the page

With Live switched on, interact with the page and watch the change log: each entry shows the time and the top-level keys that changed.

4

Change the state

Enter an action, a patch or arguments as JSON and run it. The tree and the page update straight away, so you can test edge cases without touching the code.

5

Copy a snapshot

Copy state JSON captures the store as it is right now, ready to paste into a ticket, a test or a comparison tool.

Ready to Try

Install DevSuite Pro for free and unlock 74+ developer tools for your browser.

Add to Chrome Add to Edge Add to FireFox