Skip to content

[AIBE3/1팀/박태희] TODO APP 만들기 완료#23

Open
Tahee-Park wants to merge 3 commits intosik2:mainfrom
Tahee-Park:main
Open

[AIBE3/1팀/박태희] TODO APP 만들기 완료#23
Tahee-Park wants to merge 3 commits intosik2:mainfrom
Tahee-Park:main

Conversation

@Tahee-Park
Copy link

📝 ToDo List App

간단하고 직관적인 투두리스트 웹 애플리케이션입니다.
React로 개발되었으며, 로컬 스토리지를 통해 사용자의 할 일 데이터가 안전하게 보관됩니다.


📌 기술 스택

  • React
  • JavaScript
  • CSS Modules
  • localStorage

✔️ 주요 기능

  • 할 일 추가
  • 할 일 삭제
  • 완료 체크/해제
  • localStorage 저장 및 동기화

🗂️ 프로젝트 구조

src
├── components/
│ ├── ToDoItem.jsx
│ ├── ToDoList.jsx
│ └── ToDoWriteForm.jsx
├── context/
│ └── ToDoContext.jsx
├── util/
│ └── storage.js
├── App.jsx
├── App.css
├── index.css
└── main.jsx

💻 미리보기

미리보기


🚀 시작하기

  • npm install
  • npm run dev

@jiyoon-00
Copy link

코드 잘 봤습니다! 수고하셨습니다~

Copy link

@jjuchan jjuchan left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM! 깔끔하게 잘하신 것 같습니다.

@SWWWin
Copy link

SWWWin commented Jul 11, 2025

코드 잘 봤습니다! 수고하셨습니다.

Copy link

@kku1403 kku1403 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

코드 잘 봤습니다 :) 수고 많으셨어요!

export function TodoProvider({ children }) {
const [todos, setTodos] = useState(() => getItem("todos", []));

const lastId = useRef(Math.max(...todos.map((todo) => todo.id), 0) + 1);
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

이렇게 lastId값을 설정하면 예상치 못한 상황에서도 ID가 중복되지 않을 것 같아요! 좋은 방식이네요 :)

todos가 비었을 때를 처리하면 더 좋을 것 같아요!

@@ -0,0 +1,47 @@
import { createContext, useContext, useRef, useState, useEffect } from "react";
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

context API로 상태 관리하신 점이 인상 깊어요.. 저는 어려워서 못했는데 태희님 코드 참고해서 개선해봐야겠습니다 👍

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants