Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Johanna's checklist #45

Open
wants to merge 30 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 28 commits
Commits
Show all changes
30 commits
Select commit Hold shift + click to select a range
ce4da5b
Update README
joheri1 Nov 19, 2024
a5f665e
Add two new folders components and store. Add Checklist component to …
joheri1 Nov 21, 2024
e4744ec
Move the Checklist styling from index.css to Checklist component. Ins…
joheri1 Nov 21, 2024
513ee46
Move parts of Checklist component code to new components. Start with …
joheri1 Nov 24, 2024
5bfc9ec
Create AddTaskButton and DeleteButton components. Add TaskList compon…
joheri1 Nov 24, 2024
e9843e2
fix all the errors like change name of userStore to useStore, add imp…
joheri1 Nov 24, 2024
6d2ee70
Add font FontAwesome to get the check icon. Update contrast ratio for…
joheri1 Nov 24, 2024
7982317
Change headers to one Main and one for checklist.
joheri1 Nov 24, 2024
a68fd0f
Add padding and margin round the Checklist.
joheri1 Nov 24, 2024
3f4b473
Add a new folder, Data, and add a JSON file with all data for this pr…
joheri1 Nov 24, 2024
83c3a69
Changed styling on H1, H2 and P
joheri1 Nov 24, 2024
2c2b676
Added Routes from my prevous projects
joheri1 Nov 25, 2024
90791ae
Style the Not found page
joheri1 Nov 25, 2024
5384bd5
Clean up App and AppRoutes, since they are basically doing the same
joheri1 Nov 25, 2024
2b93bdf
Update paths and add comments.
joheri1 Nov 25, 2024
e845df8
Update comments
joheri1 Nov 25, 2024
c953ea1
Add more to README
joheri1 Nov 25, 2024
412a25d
Save any unsaved changes
joheri1 Nov 25, 2024
00af5a9
update readme
joheri1 Nov 25, 2024
6441818
Add comments to Store
joheri1 Nov 25, 2024
30833b6
Delete the input field styling from the Checklist component
joheri1 Nov 25, 2024
768c591
Add TaskCounter component, and add it to the ChecklistHeader.
joheri1 Nov 26, 2024
7839889
Update README
joheri1 Nov 26, 2024
df6faa7
Add a condition to the TaskCounter, to make it display a message when…
joheri1 Nov 26, 2024
3cb930d
Add an emoji to the All tasks are done message. Change font color and…
joheri1 Nov 26, 2024
c83d61f
Delete empty component for GoHome
joheri1 Nov 26, 2024
33f8960
Save any unsaved changes
joheri1 Nov 26, 2024
8de2dfb
Change text on counter to Pending tasks:
joheri1 Nov 26, 2024
a264c0e
save any unsaved changes
joheri1 Nov 28, 2024
3ef2d9e
Updating the README file with two problems and updating the text for …
joheri1 Nov 28, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
58 changes: 49 additions & 9 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,29 +6,69 @@

# Todo - useContext Project

Replace this readme with your own information about your project.
The assignment is to build a Todo app using Zustand for state management.

Start by briefly describing the assignment in a sentence or two. Keep it short and to the point.
### Dependency Installation & Startup Development Server

## Getting Started with the Project
This project uses npm (Node Package Manager) to handle its dependencies and run the development server.

### Dependency Installation & Startup Development Server
```bash
npm i && code . && npm run dev
```
Before deployment:

Once cloned, navigate to the project's root directory and this project uses npm (Node Package Manager) to manage its dependencies.
```bash
npm run build
```

The command below is a combination of installing dependencies, opening up the project on VS Code and it will run a development server on your terminal.
Install Zustand:

```bash
npm i && code . && npm run dev
npm i zustand
```

Install Styled components:

```bash
npm install styled-components
```

Install Routes:

```bash
npm install react-router-dom
```

Font Awesome:
```bash
npm install --save @fortawesome/fontawesome-svg-core
npm install --save @fortawesome/free-solid-svg-icons
npm install --save @fortawesome/react-fontawesome
```

### Useful resources

- [This CodePen](https://codepen.io/joheri1/pen/MWNdRNX) borrowed from [DesignCouch](https://codepen.io/designcouch)
- [One of my previous projects](https://github.com/joheri1/project-movies-vite)

### The Problem
- Understanding how to actually use Zustand. I wanted to make my app bigger, with several pages, to make fully use of a Global state management, but time is always a struggle.

Describe how you approached to problem, and what tools and techniques you used to solve it. How did you plan? What technologies did you use? If you had more time, what would be next?
### If I had more time
## Stretch Goals
- Add a timestamp for each task indicating when it was created. The timestamp should be displayed as a formatted date but stored as a raw date. You can use a third-party library, such as date-fns or Moment.js for this.
- Add a complete all button to set all tasks as completed. You could also use this opportunity to make your app look nice when there's no data. See empty states UX design for some ideas.
- Add a button to switch dark/light mode.
- Implement local storage
## Advanced Stretch Goals
- Add a date input to your new task form to set a due date on a task. It could be required, or optional - it's up to you. You could then display this in the list and style it differently when a task is overdue.
- Add filters to display completed/uncompleted tasks, tasks created after a given date or anything else you consider important.
- Create categories/tags for tasks so they can be grouped - for example, 'Housework', 'Shopping', etc.
- Create projects for tasks → A project could be a group of tasks which all need to be completed and when they are completed, the project is marked as complete.

### View it live

Every project should be deployed somewhere. Be sure to include the link to the deployed project so that the viewer can click around and see what it's all about.
[Johannas Checklists](https://johannas-checklists.netlify.app/)

## Instructions

Expand Down
183 changes: 183 additions & 0 deletions dist/assets/index-9e8d7c5d.js

Large diffs are not rendered by default.

1 change: 1 addition & 0 deletions dist/assets/index-feb71f98.css

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

14 changes: 14 additions & 0 deletions dist/index.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Todos App Context API</title>
<script type="module" crossorigin src="/assets/index-9e8d7c5d.js"></script>
<link rel="stylesheet" href="/assets/index-feb71f98.css">
</head>
<body>
<div id="root"></div>

</body>
</html>
5 changes: 4 additions & 1 deletion index.html
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,10 @@
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Todos App Context API</title>
<link
href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.1/css/all.min.css"
rel="stylesheet"/>
<title>Johanna's checklists</title>
</head>
<body>
<div id="root"></div>
Expand Down
Loading