- Fork this Repo https://github.com/neugence/uiuxassignment
- Complete the assignment and host the app
- Create a Pull request with hosted app link only (no code)
- We will go into the code during interview
- We encourage you to use AI Tools for code writing
- We will go deep into the code to check your knowledge
- Any questions (our developer will answer here),
- Discord Server: https://discord.gg/mW8xvN9qjx
- Channel : https://discord.com/channels/1281837569373503652/1335275549429334149
Your challenge is to design and develop a fully functional Task Management System inspired by the reference images:
This application should allow users to:
β
Create, edit, and manage tasks with a modal window.
β
Track task timelines in an interactive dashboard.
β
Filter, sort, and search through a large dataset efficiently.
β
Ensure seamless user experience with a modern, responsive UI.
π‘ Bonus: Bring your creativity to add unique and valuable features!
A flawlessly working application is the ideal goal, but innovation and thoughtful improvements will set you apart!
We will assess your work based on:
βοΈ Functional Completion β Does the app work as expected?
βοΈ Code Readability & Maintainability β Clean, well-structured, and scalable code.
βοΈ Performance Optimization β Efficient rendering with minimal re-renders.
βοΈ UI/UX Excellence β A visually appealing and accessible design.
βοΈ Debugging & Problem-Solving β Effective handling of errors and edge cases.
πΉ State Management: Use Zustand for managing task data.
πΉ React Hooks: Implement useState
, useEffect
, useMemo
, and useCallback
effectively.
πΉ Prop Drilling: Structure components with a clear data flow.
πΉ Pagination: Implement pagination for a dataset of at least 50 records.
πΉ Filters & Sorting: Allow users to filter and sort tasks dynamically.
πΉ Click-to-Edit Fields: Enable inline task editing, saving data in state.
πΉ Drag & Drop (useRef): Allow users to reorder tasks in the list via drag & drop.
πΉ Modal Window:
- Used for adding and editing tasks.
- Should close on Escape key and outside click.
π‘ Bonus Features:
β Map Data Efficiently β Store task data using a map structure, with email ID as the key.
β Optimized Rendering β Use useMemo
and useCallback
to minimize unnecessary re-renders.
πΉ Efficient Mapping β Handle large datasets effectively.
πΉ Optimize Component Rendering β Use memoization where necessary.
πΉ Debugging & Error Handling β Ensure robust logging and graceful error handling.
This problem mimics real-world UI/UX projects, where efficiency, interactivity, and user experience are equally important. It will help you grow as a UI/UX developer while showcasing your creativity!
π‘ Get creative, keep the UI sleek, and make the app intuitive to use! π¨β¨