Skip to content

Effort 1 — Restructure src/hooks/queries → src/api (feature-sliced modules) #52

Description

@chiptus

Part of #51. Mechanical restructure, no behavior change.

What

Move src/hooks/queries/src/api/, flattened to one folder per feature. Per feature: a shared types.ts (entity Row type + key factory) and one self-contained use-prefixed file per endpoint holding its request/response types + fetchX/mutate + a per-file queryOptions factory + the hook consuming it. Repoint every consumer's import path. See docs/adr/0001-api-modules.md.

Per-feature checklist (leaf-first order)

  • festivals
  • editions (was festivals/editions)
  • sets
  • stages
  • genres
  • festival-info
  • custom-links
  • knowledge
  • artists
  • artist-notes (was artists/notes)
  • groups
  • invites (was groups/invites)
  • voting
  • auth
  • admin-roles (loose useAdminRolesQuery.ts)
  • invite-validation (loose useInviteValidationQuery.ts)

Done when

  • All ~73 files moved; build + unit tests green; no behavior change.
  • grep -rn "queryOptions(" src shows factories adopted.
  • CLAUDE.md data-fetching guidance repointed to src/api/.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions