Skip to content

Suggestion: split up "state management" into more specific sub-types. #172

Open
@phryneas

Description

@phryneas

By the broad definition of "state management", currently many tools in the "data fetching" as well as all "forms" and router libraries would fall into that category - all of them manage some kind of state, be it "server-side state", "form state" or "routing state".

That leads to the weird situation where React Query is listed under "state management" even though it is a single-purpose tool to manage server-side state, while all other tools currently in that category are meant for the swiss army knife use case of "client-side global state management" (Apollo client does not have that as it's main purpose, but ships with primitives meant explicitly for that purpose) - the authors or React Query rightfully claim to be a "state management" tool, albeit a single-purpose one.

Would it maybe make sense to get rid of the "state management" tag and add more specific tags like "client-side state" (or "global state"), "server state" (or "async state"), "form state" (or just, like right now, "forms") and "routing state" (or just "routing")?

That would also add a nice distinction between "server state" tools like React Query and SWR and "data fetching" tools like axios and ky which do not the same job, but complement each other.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requestrefinementThe issue needs further clarification and definition

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions