Skip to content

Build a todo-list app #79

@mjm-git185

Description

@mjm-git185

Link to the coursework

https://github.com/CodeYourFuture/Module-Data-Groups/tree/main/Sprint-3/todo-list

Learning Objectives

  • Develop a web app according to a specification
  • Update the DOM in response to input from the user

Why are we doing this?

These challenges are designed to develop your problem-solving skills.

In this exercise you will build a to-do list which meets the following criteria:

Acceptance criteria

  • Given a todo list web application
    When the page loads
    Then the populateTodoList() function should create todo list items for each hardcoded todo
    When a todo list item is created
    Then it should contain: ☑ 🗑 todo text
    When the checkbox icon is clicked
    Then the todo text should have strikethrough
    And the checkbox should be ticked ✅ 🗑 todo text

  • Given a todo list item on the page
    When the trash icon is clicked
    Then the todo list item should be deleted

  • Given a button to add new todos
    When the button is clicked
    Then a new todo should be added to the list with the checkbox and trash icons

  • Given a button to mass delete completed todos
    When the button is clicked
    Then any todos that have been checked off should be deleted

  • Given the ability to set a deadline when creating a todo
    When a deadline is set
    Then the deadline should be displayed next to the todo text

Maximum time in hours

4

How to get help

General advice on asking for help can be found on the curriculum pages.
You can always share your blockers in your class channel and get help from your colleagues.

How to submit

  1. Fork the coursework repo to your Github account.
  2. Make a branch for this project.
  3. Make regular small commits in this branch with clear messages.
  4. When you are ready, open a PR to the CYF repo, following the instructions in the PR template.

There are several projects in this repo. Make a new branch based on main for each project.

Metadata

Metadata

Assignees

Projects

Status

No status

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions