- Remove duplicate loadData call in useEffect
- Comment out direct import logic from workers.json
- Replace with fetch to /api/workers
- Fix grid classes: grid-cols-1 sm:grid-cols-2 lg:grid-cols-3
- Improve card UI: better spacing, hover effects, contrast (change bg to white if needed)
- Create Navbar component
- Add to layout.tsx as sticky top
- Add loading and error states in page.tsx
- Use fetch in useEffect for /api/workers
- Add basic caching/memoization
- Extract WorkerCard component with React.memo
- Create SkeletonCard component for loading
- Implement lazy loading for images (loading="lazy")
- Add state for currentPage and itemsPerPage (9)
- Slice data for pagination
- Add pagination controls (prev/next/page numbers)
- Add state for serviceFilter (dropdown from unique services)
- Add state for priceRange (min/max inputs)
- Apply filters before pagination
- Run npm run dev and test locally
- Use browser to verify responsiveness, API, filters, pagination
- Fix any console warnings/errors
- Ensure full responsiveness across devices
- Update metadata in layout.tsx if needed
- Commit changes with descriptive messages