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

To-Do-Project #35

Open
wants to merge 50 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
50 commits
Select commit Hold shift + click to select a range
753f866
- added first components and used zustand
gittebe Nov 19, 2024
b876979
- styled component
gittebe Nov 19, 2024
ec468c0
- reworked on the Card and Submit Logic
gittebe Nov 20, 2024
b833f57
- added toggleForm and showForm to the Global State Zustand
gittebe Nov 20, 2024
2a82bcf
-
gittebe Nov 20, 2024
85f43e3
- added task counter
gittebe Nov 20, 2024
d878cb0
- replaced former buttons with checkbox
gittebe Nov 20, 2024
88836fe
- styled checkBox and Card
gittebe Nov 20, 2024
b6534b2
- added netlify link
gittebe Nov 20, 2024
55e3c98
- added project Card, styled todoCard, added button
gittebe Nov 20, 2024
afe0c05
- worked on styles
gittebe Nov 20, 2024
4530c87
- added bin image button
gittebe Nov 21, 2024
66263ac
- styled the todocard
gittebe Nov 21, 2024
cade1ee
- worked on CSS
gittebe Nov 21, 2024
9613ffa
- worked on CSS
gittebe Nov 21, 2024
5ff8127
- added Zustand for ProjectCard
gittebe Nov 21, 2024
06979f7
- added swipable project cards
gittebe Nov 21, 2024
dd38fef
- added bin button for project cards
gittebe Nov 21, 2024
5b8e1b8
- added project counts
gittebe Nov 21, 2024
2d88aad
- worked on projectstore and card
gittebe Nov 24, 2024
a365849
-added img in case no project and/or no to do has been written
gittebe Nov 24, 2024
3b873cd
- added README
gittebe Nov 24, 2024
4d8a40f
- added max-width for card
gittebe Nov 24, 2024
976afef
- cleaned code
gittebe Nov 24, 2024
313c7e5
- added new img
gittebe Nov 26, 2024
6887983
- deleted one button and step to choose
gittebe Nov 26, 2024
b455034
- changed order of components
gittebe Nov 26, 2024
a3775a4
- added to display completed projects
gittebe Nov 26, 2024
37e0632
- worked styles
gittebe Nov 26, 2024
11f0538
- cleaned code
gittebe Nov 26, 2024
2d8f6be
- worked on design
gittebe Nov 27, 2024
d7355ac
- added toggleTheme in Zustand and toggle Btn
gittebe Nov 27, 2024
fc51d46
- added toggle theme to form
gittebe Nov 27, 2024
359c6d2
- worked on toggle theme in different components
gittebe Nov 28, 2024
7e02e9c
- added theme toggle for project part
gittebe Nov 28, 2024
baffb8f
- worked on responsiveness
gittebe Nov 28, 2024
aa0625e
- worked on header style
gittebe Nov 28, 2024
4c3b5ee
- worked on responsiveness
gittebe Nov 28, 2024
9d4cc9b
- cleaned code
gittebe Nov 28, 2024
ee6bc59
- config for typescript
gittebe Nov 28, 2024
5862bd2
- worked in ts config.json
gittebe Nov 28, 2024
60b5029
- converted files from jsx to tsx
gittebe Nov 28, 2024
e0b360c
- worked on stores to convert into tsx
gittebe Nov 29, 2024
716f92f
- worked on store
gittebe Nov 29, 2024
a03b223
- turned projectstore into ts/ adding types and added local storage
gittebe Nov 29, 2024
32bcba2
- changed bin button into tsx
gittebe Nov 29, 2024
f730c0f
- added type for check box props
gittebe Nov 29, 2024
1846b8d
- added types to-do button
gittebe Nov 29, 2024
c15e0b3
- cleaned code
gittebe Nov 29, 2024
71bfa23
- worked on README file
gittebe Nov 29, 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
60 changes: 37 additions & 23 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,37 +1,51 @@
<h1 align="center">
<a href="">
<img src="./src/assets/banner.svg" alt="Project Banner Image">
</a>
</h1>
# Project Description
This project provides a To-Do and Project Management application using React, Zustand for state management, and TypeScript for type safety. It is enhanced with localStorage persistence, allowing users to create, update, and delete tasks (To-Dos) and projects, as well as manage their themes (light/dark mode).

# Todo - useContext Project
# Features
## Manage To-Dos and Projects:

Replace this readme with your own information about your project.
Add, remove, and toggle the completion status of tasks and projects.
View the total number of tasks or projects and the count of completed ones.
## Persistent Storage:

Start by briefly describing the assignment in a sentence or two. Keep it short and to the point.
Stores tasks and projects data in the browser's localStorage for persistence across sessions.
## Dark/Light Mode:

## Getting Started with the Project
Users can toggle between light and dark themes for both the app and individual project/task cards.
## Dynamic Forms:

### Dependency Installation & Startup Development Server
Users can choose to add either a new To-Do or a new Project using a single form with radio buttons to toggle between them.

Once cloned, navigate to the project's root directory and this project uses npm (Node Package Manager) to manage its dependencies.
# Tech Stack
React: UI library for building the app.

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.
Zustand: A small, fast state management library.

```bash
npm i && code . && npm run dev
```
Styled-Components: For styling the components with ease.

### The Problem
localStorage: For storing state persistently in the browser.

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?
TypeScript: Provides static type checking to ensure better developer experience and code quality.

### View it live
# Improvements
1. Add Time to To-Dos and Projects

To improve the functionality and usability of the app, I plan to implement time tracking for both To-Dos and Projects. Users will be able to set a due date or deadline for each task and project. This feature will help users stay organized and on track with their goals.

2. Edit Text of To-Dos and Projects
Currently, users can only add new tasks or projects. I like to implement an option to edit the text of an existing To-Do or Project. This allows users to correct or update any task or project description as their needs evolve.

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.
Users will be able to click on the task or project text and make edits directly in the UI, similar to how tasks are toggled for completion. A save button will be provided to confirm the changes.
This feature will enhance the flexibility of the application and make it more intuitive for managing tasks and projects that evolve over time.

## Instructions
3. Project Detail Page
To provide more detail and better project management, I will create a dedicated page for each project. This page will allow users to define the project and its tasks more comprehensively, offering the following features:

<a href="instructions.md">
See instructions of this project
</a>
Define Project Details: Users will be able to set a more detailed description of the project, set specific goals, and track progress.
Add and Track Tasks: Users can add specific tasks to each project, making it easy to break down larger projects into manageable steps.
Mark Tasks as Completed: As tasks within a project are completed, users can mark them off individually. The project page will automatically update to show the completion status of each task.
Progress Tracker: A progress bar or completion percentage will be visible on the project page, helping users track how much of the project has been completed based on task completion.
Each project will be clickable from the main dashboard, which will open the Project Detail Page to allow users to manage and track their projects in-depth.

### View it live
https://gittes-to-do-list-application.netlify.app/
23 changes: 13 additions & 10 deletions index.html
Original file line number Diff line number Diff line change
@@ -1,12 +1,15 @@
<!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>
</head>
<body>
<div id="root"></div>
<script type="module" src="/src/main.jsx"></script>
</body>
</html>

<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Todos App Context API</title>
</head>

<body>
<div id="root"></div>
<script type="module" src="/src/main.tsx"></script>
</body>

</html>
Loading