A modern, responsive task management application built with React, featuring a sleek dark mode UI with glass-morphism effects. The application provides a comprehensive solution for managing daily tasks with advanced sorting, filtering, and persistence capabilities.
- ✨ Create, edit, and delete tasks
- ✅ Mark tasks as complete/incomplete
- 🚩 Set task priorities (High, Medium, Low)
- 📅 Automatic timestamp for each task
- 💾 Persistent storage using localStorage
- 🔍 Real-time search functionality
- 📊 Multiple sorting options:
- Date (newest/oldest)
- Priority (high to low)
- Alphabetical (A-Z/Z-A)
- Completion status
- 🔄 Toggle sort direction
- 🌗 Dark mode with glass-morphism effects
- 📱 Fully responsive design
- ✨ Smooth animations and transitions
- 🎨 Color-coded priority indicators
- ⚡ Real-time updates
- Node.js (version 22.11.0 or higher)
- npm or yarn package manager
- Clone the repository:
git clone https://github.com/takbirgazi/taskManager.git
cd taskManager
- Install dependencies:
npm install
# or
yarn install
- Start the development server:
npm run dev
# or
yarn dev
- Open your browser and navigate to:
http://localhost:5173
- React
- Framer Motion (animations)
- Lucide React (icons)
- Tailwind CSS (styling)
- Enter task description in the input field
- Press Enter or click the "Add" button
- New task will appear in the grid with default medium priority
- Click the checkbox to toggle completion
- Use the edit icon to modify task text
- Use the delete icon to remove tasks
- Select priority from the dropdown (High/Medium/Low)
- Use the search bar to filter tasks
- Use the sort dropdown to change sorting criteria
- Click the A-Z/Z-A button to toggle sort direction
- Uses React's useState for local state management
- Implements useEffect for localStorage synchronization
- Custom hooks for specific functionalities
- Utilizes localStorage for data persistence
- Automatic saving on any task modification
- Error handling for storage operations
- Debounced search functionality
- Memoized sorting functions
- Optimized re-rendering with React.memo
-
User Experience
- Assumed users prefer dark mode for task management
- Prioritized visual feedback for actions
- Implemented glass-morphism for modern aesthetics
-
Data Storage
- Assumed local storage is sufficient for personal task management
- Maximum storage capacity based on browser limits
- No backend required for basic functionality
-
Performance
- Assumed reasonable task list size (<1000 items)
- Optimized for modern browsers
- Mobile-first approach for responsiveness
-
Browser Support
- Targets modern browsers with localStorage support
- Requires JavaScript enabled
- Assumes CSS Grid support
-
Planned Features
- Task categories/tags
- Due dates and reminders
- Bulk actions
- Task sharing capabilities
- Data export/import
-
Technical Improvements
- PWA support
- Offline functionality
- Cloud sync options
- Performance optimizations
-
Tasks not persisting
- Check if localStorage is enabled
- Clear browser cache
- Verify browser storage quota
-
UI Issues
- Ensure latest browser version
- Clear browser cache
- Check console for errors
For support, please open an issue in the GitHub repository or contact the development team.