CodeYourFuture / CodeYourFuture/Module-Data-Groups

Build a todo-list app

Open
#8 0 comments 0 reactions 0 assignees View on GitHub
🏕 Priority Mandatory 🐂 Size Medium 📅 Sprint 3 Core Module-Data-Groups Submit:PR
Dominant language
JavaScript
Stars
1
Forks
326
Avg merge
3h 25m
Merged PRs (30d)
2

Description

### 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](https://curriculum.codeyourfuture.io/guides/getting-help/asking-questions/).
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](https://simpledev.io/lesson/create-branch-gh-desktop-1) based on `main` for each project.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.