Optimistic
Updates
Full-Stack
Stack
Zod + Joi
Validation
Vercel
Deploy
A full-stack task management application with a modern React/TypeScript frontend and an Express/TypeScript backend. Users can create, edit, delete, and toggle task completion status with real-time optimistic updates for a snappy user experience.
The app features pagination, sorting by any field, filtering by completion status, and toast notifications for all CRUD operations. The frontend uses shadcn/ui for a polished, accessible component system.
Optimistic updates are implemented via React Query's onMutate/onError/onSettled pattern — the UI updates immediately on user action, rolls back on failure, and reconciles with the server response on settlement. This eliminates perceived latency for toggle and delete operations.
The backend validation layer uses Joi schemas for all three input surfaces: request bodies (create/update), query parameters (pagination, sorting, filtering), and path parameters (MongoDB ObjectId format). This ensures data integrity at the API boundary before any database operation.