A modern, responsive Todo application built with vanilla JavaScript, HTML, and CSS. This application helps you stay organized and manage your tasks efficiently with a beautiful user interface and powerful features.
- 📅 Interactive Calendar: Navigate through months and view your tasks by date
- 🌙 Dark/Light Mode: Toggle between dark and light themes for comfortable viewing
- 🔍 Search Functionality: Quickly find tasks by searching through their titles
- 📊 Task Statistics: Real-time tracking of completed and pending tasks
- ✏️ Edit Tasks: Modify task titles and descriptions after creation
- ✅ Mark as Complete: Mark tasks as completed with smooth animations
- 🗑️ Delete Tasks: Remove unwanted tasks from your list
- 💾 Local Storage: Your tasks persist even after closing the browser
- 📱 Responsive Design: Works seamlessly on desktop, tablet, and mobile devices
- 🎨 Modern UI: Clean and intuitive interface with smooth animations
- A modern web browser (Chrome, Firefox, Safari, Edge)
- No additional dependencies required
-
Clone the repository
git clone https://github.com/5mokshith/todo-app.git cd todo-app -
Open the application
- Simply open
index.htmlin your web browser - Or use a local server for better development experience:
# Using Python 3 python -m http.server 8000 # Using Node.js (if you have http-server installed) npx http-server
- Simply open
-
Start using the app
- Navigate to
http://localhost:8000(if using a local server) - Or just double-click
index.htmlto open directly in your browser
- Navigate to
- Enter a title for your task in the "Type Title here.." field
- Add a description in the "Description of the task" field
- Click the "+" button or press Enter to add the task
- Complete a task: Click the checkmark icon on any task card
- Edit a task: Click the edit icon to modify title and description
- Delete a task: Click the delete icon to remove the task
- Search tasks: Use the search bar to find specific tasks
- Use the left/right arrow buttons to navigate between months
- Click on any date to view tasks for that specific day
- The current date is highlighted in the calendar
- Click the "Dark Mode" button to toggle between light and dark themes
- Your theme preference is saved and will persist across sessions
Todo/
├── css/
│ ├── animations.css # CSS animations and transitions
│ ├── calender.css # Calendar component styles
│ ├── main-style.css # Main application styles
│ └── media-queries.css # Responsive design styles
├── images/
│ ├── todo.png # Todo app logo (PNG)
│ └── todo.svg # Todo app logo (SVG)
├── javascript/
│ ├── calender.js # Calendar functionality
│ └── main.js # Main application logic
├── index.html # Main HTML file
└── README.md # Project documentation
The app uses browser's localStorage to persist your tasks and preferences, so you won't lose your data when you close the browser.
The application is fully responsive and works great on all device sizes, from mobile phones to desktop computers.
- Add: Create new tasks with titles and descriptions
- Edit: Modify existing tasks without losing their creation date
- Complete: Mark tasks as done with a satisfying animation
- Delete: Remove tasks you no longer need
- Search: Find specific tasks quickly using the search functionality
The interactive calendar allows you to:
- Navigate between months
- View the current date
- Plan tasks for specific dates
- Track your productivity over time
The app is built with vanilla technologies, making it easy to customize:
- Colors: Modify CSS variables in
main-style.css - Animations: Adjust timing and effects in
animations.css - Layout: Customize the responsive breakpoints in
media-queries.css - Functionality: Extend features by modifying the JavaScript files
Contributions are welcome! Please feel free to submit a Pull Request. For major changes, please open an issue first to discuss what you would like to change.
This project is open source and available under the MIT License.
Mokshith
- GitHub: @5mokshith
- Google Fonts for the beautiful typography
- Material Symbols for the icon set
- The open-source community for inspiration and resources
Happy Task Management! 🎉
Built with ❤️ using HTML, CSS, and JavaScript
