To-do list is a tool that helps to organise your day

Overview

A Todo App

"To-do list" is a tool that helps to organize your day. It simply lists the things that you need to do and allows you manage them too!

Todos

Todos

In this project, you will get a simple HTML list of To Do tasks. It is built using webpack and served by a webpack dev server. The list is styled according to the specifications listed by the minimalist website.

The CRUD (create, update, delete) methods for the todo tasks are implemented. All the elements of the user interface are fully functional and the application is completed. You will also be able to mark task completion by selecting the corresponding checkbox (or undo it by unchecking the checkbox). The updated tasks list will be stored in localstorage.

Built With

  • HTML
  • CSS
  • JavaScript
  • HTML & CSS & JavaScript Linters
  • GIT
  • ES6
  • WebPack

LIVE DEMO LINK

Set up locally

Once you completed this steps you should see the app running at: http://localhost:8080/ in your browser.

Author

👤 Clinton Mbonu

🤝 Contributing

Contributions, issues, and feature requests are welcome!

Feel free to check the issues page.

Show your support

Give a ⭐️ if you like this project!

Acknowledgments

  • Minimlistic Website
  • Entire Microverse community

📝 License

This project is MIT licensed.

Comments
  • Morning session: peer-to-peer code reviews

    Morning session: peer-to-peer code reviews

    Hello @clintonjosephs, You have made a great job till 💯 now however I would like to mention some points to change:

    • the drag and drop works but we don't want to swap 2 tasks, we want to move only one task and so update the index of all tasks.
    opened by jaflih 1
  • Extended feature

    Extended feature

    It will be nice to add a badge above the refresh icon, to delimit the number of items in the todo list. Also implement all changes in the todo-review repository on this repository

    opened by clintonjosephs 1
  • ISSUES: HTML and CSS best practices

    ISSUES: HTML and CSS best practices

    Below are the issues noticed based on HTML and CSS best practices

    • Consider wrapping the ul in a section and replacing the div with a h1 tag in index, this will conform to the HTML semantics rules (Each html page should have atleast 1 h1 tag)
    opened by clintonjosephs 1
  • ISSUES: DRY, KISS, YAGNI

    ISSUES: DRY, KISS, YAGNI

    Below are the issues I noticed based on DRY, KISS, YAGNI rules

    • It would have been nice HERE to pass the list items innerHTML here in a different function with a return statement.
    opened by clintonjosephs 1
  • ISSUES: JavaScript best practices

    ISSUES: JavaScript best practices

    Below are some issues I noticed with my code based on JavaScript based practices

    • It would be nice to refactor loop in UpdateToDoItemIndex to use ForEach loop instead of the good old for loop
    • Consider pushing all variable declarations within markListForChanges AND swapItems to the beginning of its block
    • Based on JavaScript best practices, it would be nice to initialize this variable
    opened by clintonjosephs 1
  • To Do list: add & remove

    To Do list: add & remove

    Hello 😊 ,

    I have been able to add new features on the to-do-list project based on the following requirements:

    • Removed all hardcoded items from the tasks array. ✅
    • Create a new JavaScript file (Methods.js) for the new functionality.✅
    • Implemented a function for adding a new task (add a new element to the array).✅
    • Implemented a function for deleting a task (remove an element from the array).✅
    • Implement a function for editing task descriptions.✅
    • New tasks has the property completed set to false and the property index set to the value of the new array length + 1✅
    • Deleting a task updates all remaining items' indexes, so they represent the current list order and are unique.✅
    • All changes to the To Do List saved in local storage.✅

    Thank you for reviewing my code 😄

    opened by clintonjosephs 1
  • To Do list: list structure

    To Do list: list structure

    Hello 😊 ,

    Today we were given a task to create the structure of the to-do-list app and achieve the following features:

    • Set up a new project with webpack. ✅

    • Create an index.html file and write HTML markup there. Create an empty To Do List placeholder. The index.html file must be set as a template using the HTML Webpack Plugin.✅

    • Create an index.js file and set an array of some simple to do tasks (array of objects). Each task object should contain three keys: - description [string].✅ - completed [bool].✅ - index: [number].✅

    • Write a function to iterate over the tasks array and populate an HTML list item element for each task.✅

    • On page load render the dynamically created list of tasks in the dedicated placeholder. The list should apear in order of the index values for each task.✅

    • Create a style.css and set rules for the To Do List. CSS must be loaded by Webpack Style/CSS Loader. ✅

    I had some extra time, so I went ahead to create the add function to the list and rearranged the project structure to suit the entire CRUD functionality.

    Thank you for reviewing my project 😄

    opened by clintonjosephs 1
  • Testing branch - Task 2

    Testing branch - Task 2

    Hello 😄 , We have succeeded in completing the following tasks in continuation of the to-do list app unit testing.

    • We Created .test.js file(s) (DragDrop, Editing, Clear, UpdateStatus)
    • Added a function for editing the task description.
    • Added a function for updating an item's 'completed' status.
    • Implemented the "Clear all completed" function test
    • Used the mock storage object.
    • Add test for item repositing on drag/drop
    • Mocked the HTML elements to test DOM manipulation functions.
    • Grouped tests using the description() method.

    Thank you for your time.

    opened by clintonjosephs 0
  • Testing To Do list

    Testing To Do list

    Testing To Do list

    Hello 😄 , we were able to achieve testing on our TodoList App.

    See below a list of things that we did ✅

    • Created a test file
    • Added test to Add Task and Remove Task
    • Added test to check items in the list
    • Added test to mock local storage
    • Added test to check list directly from DOM
    • Added jest mock, jest-localstorage-mock, babel lints
    opened by jaflih 0
  • Drag and drop: To Do List

    Drag and drop: To Do List

    Hello 😄 ,

    I succeeded in making changes to the To-do-list app, the user is now able to reorder the list by dragging each item and moving it into the desired position.

    • Added a class that contains methods related to drag / drop and sorting functionality.
    • Add event listeners to list items (dragstart, dragover, drop).
    • Update items object's values for index key upon user actions.
    opened by clintonjosephs 0
  • To Do list: interactive list

    To Do list: interactive list

    Hello 😄 ,

    I was able to work on the to-do list's interactive features to achieve the following:

    • Create new module containing methods related to the status updates (completed: true / false) ✅
    • Updated items object's value for completed key upon user actions.✅
    • Implement a function for the "Clear all completed" button (using filter() method).✅
    • Store the updated array of items in local storage, so the user gets the correct list values after the page reloads.✅

    Thank you for reviewing my project! 💯

    opened by clintonjosephs 0
Owner
Clinton Mbonu
Full-stack developer, Co-founder, Entrepreneur. Languages: PHP, JavaScript, React & Redux. Frameworks: Ionic, Angular, Bootstrap. Looking for my next job
Clinton Mbonu
A To-Do-List app designed to help users organise their daily activities

A To-Do-List app designed to help users organise their daily activities. it simply creates a list of things you want to do and allows you to mark them as complete. It was built with HTML, CSS and JavaScript.

Eshetu Melaku 10 Jun 9, 2022
The app helps you to add todo items to your list, mark completed ones and also delete finished items. Its a handy tool for your day today activies. Check out the live demo.

Todo List App The app helps you to add todo items to your list, mark completed ones and also delete finished items. Its a handy tool for your day toda

Atugonza ( Billions ) Joel 14 Apr 22, 2022
"To-do list" is a tool that helps to organize your day. It simply lists the things that you need to do and allows you to mark them as complete. It is created with HTML , CSS , JS and webpack and NPM.

My Todo List "To-do list" is a tool that helps to organize your day. It simply lists the things that you need to do and allows you to mark them as com

Dyary Raoof Bayz Agha 5 Mar 29, 2022
"To-do list" is a tool that helps to organize your day. It simply lists the things that you need to do and allows you to mark them as complete

To Do List "To-do list" is a tool that helps to organize your day. It simply lists the things that you need to do and allows you to mark them as compl

Sahar Abdel Samad 16 Aug 9, 2022
"To-do list" is a tool that helps to organize your day

Todo_List Description "To-do list" is a tool that helps to organize your day. It simply lists the things that you need to do and allows you to mark th

Cynthia Inga 5 Nov 12, 2022
"To-do list" is a tool that helps to organize your day. It simply lists the things that you need to do and allows you to mark them as complete.

Todo_List Description "To-do list" is a tool that helps to organize your day. It simply lists the things that you need to do and allows you to mark th

Cynthia Inga 4 Apr 19, 2022
"To-do list" is a tool that helps to organize your day. It simply lists the things that you need to do and allows you to mark them as complete.

todo-list "To-do list" is a tool that helps to organize your day. It simply lists the things that you need to do and allows you to mark them as comple

Okoroji Victor Ebube 13 Jul 4, 2022
Developed using (HTML, CSS, Webpack, Vanilla.js)To-do list is a tool that helps you to organize your day

Developed using (HTML, CSS, Webpack, Vanilla.js)To-do list is a tool that helps you to organize your day. It lists the tasks that you need to do and allows you to mark them as complete. It was built as an introduction to web dev using ES6 and We…

Dagmawi zewdu 6 Mar 4, 2022
"To-do list" is a tool that helps to organize your day. It simply lists the things that you need to do and allows you to mark them as complete.

To-Do List "To-do list" is a tool that helps to organize your day. It simply lists the things that you need to do and allows you to mark them as compl

Juan Palacios 10 May 24, 2022
To-do list is a tool that helps to organize your day. It simply lists the things that you need to do and allows you to mark them as complete. Built with JavaScript.

To Do List Application that record the tasks to remind you and got many features that you might need. This is an image for it Live Demo Live Demo Here

Omar Ragheb 14 Jul 13, 2022
To-do list is a tool that helps to organize your day. It simply lists the things that you need to do and allows you to mark them as complete. Built with JavaScript.

To-do List To-do list is a tool that helps to organize your day. It simply lists the things that you need to do and allows you to mark them as complet

Leonardo Goss 9 Mar 4, 2022
"To-do list" is a tool that helps to organize your day. It simply lists the things that you need to do and allows you to mark them as complete.

Hello! I am a software developer! I can help you build a product, feature or website. Tak a look of my works. If you like what you see and have a proj

Roberto A. Baños Alvarez 5 Apr 29, 2022
To-Do-List is a tool that helps you organize your day

To-Do-List is a tool that helps you organize your day. It allows you to add a list of things you want to do, marking them as complete as well as removing them from the list. It is built using Webpack and ES6 syntax.

Anthony Mwenyo 5 May 17, 2022
Chris Siku 13 Aug 22, 2022
"To-do list" is a tool that helps to organize your day. It simply lists the things that you need to do and allows you to mark them as complete.

To do list "To-do list" is a tool that helps to organize your day. It simply lists the things that you need to do and allows you to mark them as compl

Ndikumana Isaie 4 Jun 10, 2022
"To-do list" is a tool that helps to organize your day. It simply lists the things that you need to do and allows you to mark them as complete. Made with webpack, JavaScript ES6 , HTML 5 and CSS 3.

Hello! I am a software developer! I can help you build a product, feature or website. Take a look of my works. If you like what you see and have a pro

ABDUL ALI 7 Jul 17, 2022
To-do list" is a tool that helps to organize your day. It simply lists the things that you need to do and allows you to mark them as complete. Made with webpack, JavaScript ES6 , HTML 5 and CSS 3.

Microverse Webpack Javascript For the second Javascript milestone in building a todo website, set up a new repository and prepare it for development u

TOFANA SILVIA 16 Jun 13, 2022
"To-do list" is a tool that helps to organize your day. It simply lists the things that you need to do and allows you to mark them as complete.

To-Do-list "To-do list" is a tool that helps to organize your day. It simply lists the things that you need to do and allows you to mark them as compl

Tushar Singh 4 Jul 19, 2022
This is a website for creating to-do tasks. "To-do list" is a tool that helps to organize your day. The main objective is to understand how to use proper ES6 syntax.

TO DO LIST To Do List This is a website for creating to-do tasks. "To-do list" is a tool that helps to organize your day. This project is part of the

Aleksandra Ujvari 2 Oct 3, 2022