Looking for a Strict Code Review: React 19 + TS + Zustand + TanStack Query #react #typescript #codereview #javascript

Published: (April 6, 2026 at 06:21 PM EDT)
2 min read
Source: Dev.to

Source: Dev.to

Project Overview

I’m looking for a strict code review of my pet project — a user management application.
The app allows viewing, editing, archiving, and hiding user cards. Data is fetched from an API, and state is persisted to localStorage.

Tech Stack

  • React 19
  • TypeScript
  • React Router v7
  • Zustand
  • TanStack Query
  • React Hook Form + Zod
  • SCSS Modules + Vite

Review Checklist

  • Performance: proper use of useMemo, useCallback, component memoization, re‑render optimization
  • TypeScript: no any, correct type inference, type guards, proper typing of props and state
  • Accessibility (a11y): semantic HTML, ARIA attributes, keyboard navigation, focus management
  • React 19 best practices: useTransition, useOptimistic, Actions, useFormStatus
  • Architecture: separation of concerns, custom hooks, logic isolation
  • Potential bugs: race conditions, memory leaks, async edge cases
  • Readability & maintainability: naming, folder structure, comments

Files to Review

  • src/router/router.tsx
  • src/components/UserCard/UserCard.tsx
  • src/pages/EditUser/EditUser.tsx
  • src/store/userStore.ts (Zustand)
  • src/hooks/useUsersQuery.ts (TanStack Query)
  • src/schemas/userSchema.ts (Zod schema)

Questions

  • How correct is the archiving/hiding implementation with localStorage persistence?
  • Is the router implementation correct?
  • Is src/store/userStore.ts implemented correctly?
  • Is the useQuery usage correct?
  • Is the SCSS Modules usage correct?

Configuration

  • ESLint + Prettier + Husky configured
  • TypeScript strict mode enabled
  • Basic Zod form validation in place

Request for Feedback

I’d appreciate any feedback — from critical issues to stylistic nitpicks. Thanks!

Repository

MyUsersList on GitHub

Tags

react typescript codereview javascript react19

0 views
Back to Blog

Related posts

Read more »