A simple and fast task manager to add, edit, complete, and delete tasks. Built with React, Vite, Tailwind CSS (with daisyUI), and React Hook Form + Zod for form validation. It stores your data and theme in the browser using localStorage.
- Add tasks: Create a task with a title and optional description.
- Edit tasks: Update title/description using a modal.
- Mark complete: Toggle completion with a checkbox.
- Delete tasks: Remove tasks you no longer need.
- Light/Dark theme: Switch between themes; your choice is saved.
- Local persistence: Tasks and theme are saved in localStorage.
All screenshots are stored in public/screenshots/.





- Install Node.js (LTS recommended).
- Install dependencies:
npm install- Start the development server:
npm run dev- Open the app:
- Vite will show a local URL in the terminal (usually
http://localhost:5173).
npm run build
npm run previewThis creates a production build in the dist folder and serves it locally for preview.
src/
components/ # UI components (Task, TaskList, Form, Modals, ThemeToggle)
context/ # React Context for tasks and theme
assets/ # Static assets
main.jsx # App entry
App.jsx # Root component
- React 19 + Vite 7
- Tailwind CSS 4 + daisyUI
- React Hook Form + Zod (form handling + validation)
- lucide-react (icons)
npm run dev: Start the dev servernpm run build: Build for productionnpm run preview: Preview the production buildnpm run lint: Run ESLint
- Tasks and theme are saved in the browser using
localStorage. - Data is kept only on your device. Clearing browser data will remove tasks.
This project is provided for learning/demo purposes.
Made with ❤️ Sumit Tomar