내일배움캠프 A-1조 (세미클론) 리액트심화 프로젝트 S.A.

고먐미·2022년 12월 22일
0

아 맞다!

잊어버리기 쉬운 우리들의 할 일을 기록할 수 있는 장소입니다.



와이어프레임

https://www.figma.com/proto/MK1eUKyvYmGVvD0EcwHPzy/Untitled?node-id=0%3A1&scaling=min-zoom&page-id=0%3A1&starting-point-node-id=1%3A2



기능구현

필수기능

  • 개별 투두리스트 글 작성, 수정, 삭제
  • 투두리스트 안에 댓글 작성, 수정 삭제
  • 투두리스트 글 작성시 유효성 검사 (빈 글 x, 비밀번호 확인)

추가기능

  • 다크모드
  • 투두리스트, 투두 검색
  • 유효성 검사시 Form help text

기능 CheckList

  • Home 버튼 누르면 메인페이지로 이동

Main

  • Home 에서 투두리스트들 Get 방식으로 서버에서 받아오기
  • 글 쓰기 버튼을 누르면 모달창이 뜨고, 비밀번호 검사 후 post 방식으로 서버에 글 저장 (저장 후 Home 으로 이동, Home에서는 저장된 글까지 get으로 가져옴)

Main > TodoList

- todo
  • 클릭한 투두리스트 안의 투두들을 Get으로 가져옴
  • 투두리스트 버튼활성화를 누르면 모달창으로 비밀번호 입력이 뜨고 비밀번호가 맞으면 버튼들이 활성화, 틀리면 틀렸다고 help text 출력
  • 체크박스를 클릭하면, 해당 todo에 취소선이 생김
  • 수정버튼을 누르면 해당 todo를 input 으로 바꿔 수정할 수 있게되고, 수정 버튼이 완료 버튼으로 바뀜 / 완료 버튼을 누르면 input value 를 서버 안에 있는 해당 todo로 바꿔줌
  • 삭제버튼을 누르면 서버에서 해당 todo가 지워짐
  • 투두 리스트 추가를 누르면 todoInput 에 있는 value 값으로 todo가 post 방식으로 서버에 추가됨
  • 버튼 비활성화 버튼을 누르면 다시 add,delete,edit 버튼이 비활성화됨
- comment
  • 댓글 작성버튼을 누르면 댓글 쓰기 input 에 있는 작성자, 비밀번호, 댓글쓰기 value를 서버에 저장하고, get 방식으로 댓글을 새로 불러옴
  • 댓글 수정버튼을 누르면 비밀번호 input 의 value와 서버의 비밀번호 value를 비교하고 수정할 수 있게 됨
  • 댓글 삭제버튼을 누르면 해당 댓글을 서버에서 찾아 삭제함


DB

{
	"todoList": [
    	{
        	"id":"nanoid",
            "todoListTitle":"string",
            "user":"string",
            "todoListPw":"string"
        },
        {
        	"id":"nanoid",
            "todoListTitle":"string",
            "user":"string",
            "todoListPw":"string"
        }
    ]
  
	"todos": [
    	{
          "id":"nanoid",
          "todoTitle":"string",
          "isDone":boolean
        },
      	{
          "id":"nanoid",
          "todoTitle":"string",
          "isDone":boolean
        }
    ]

	"comments": [
      {	
        "id":"nanoid"
        "commenter":"string",
        "comment":"string",
        "commentPw":"string"
      },
      {	
        "id":"nanoid"
        "commenter":"string",
        "comment":"string",
        "commentPw":"string"
      }
    ]
}


API

기능 URL Method request response
개별 투두리스트들 전체보기 /todoList get [
{"id":"nanoid", "todoListTitle":"string", "user":"string"},
{"id":"nanoid", "todoListTitle":"string", "user":"string"}
]
개별 투두리스트 작성 /todoList post {"id":"nanoid", "todoListTitle":"string", "user":"string", "todoListPw":"string"}
개별 투두리스트 수정 /todoList/:id patch {"todoListTitle":"string"}
개별 투두리스트 삭제 /todoList/:id delete
투두들 전체보기 /todoList/:id/todos get [
{"todoTitle":"string", "todoId":"nanoid", "isDone":boolean},
{"todoTitle":"string", "todoId":"nanoid", "isDone":boolean}
]
투두 작성 /todoList/:id/todos post {"todoTitle":"string", "todoId":"nanoid", "isDone":boolean}
투두 수정 /todoList/:id/todos/:id patch {"todoTitle":"string"}
투두 삭제 /todoList/:id/todos/:id delete
댓글 불러오기 /todoList/:id/comments get [
{"commenter":"string", "comment":"string", "commentPw":string", "commentId":"nanoid"}, {"commenter":"string", "comment":"string", "commentPw":string", "commentId":"nanoid"}
]
댓글 작성 /todoList/:id/comments post {"commenter":"string", "comment":"string", "commentPw":string", "commentId":"nanoid"}
댓글 수정 /todoList/:id/comments/:id patch {"comment":"string"}
댓글 삭제 /todoList/:id/comments/:id delete

GroundRule

  • 12:00, 17:00 마다 중간 점검 (주말제외)
  • 하루에 한번씩 튜터님 괴롭히기 (필수, 중요)
  • 20:30 에 그 날 하루동안 각자 한 일 정리해서 공유하고, 피드백시간 가지기
  • github 적극 활용하기 (git flow 를 따르고, 컨벤션 지키기)
  • 캠 항상 켜놓기 (주말포함)
  • 무슨 일 있으면 바로 말하기


컨벤션

git 을 사용 할 때 지켜줘야 하는 것들이에요


Commit 메세지

  • 제일 첫 줄은 feat : 동사 명사 로 써줍니다. (제목)
    (ex- feat : apply postComment)

  • 중간에는 좀 더 명확하게 한 일을 적어줍니다. (내용)
    (ex- postComment 로 서버에 댓글 작성하는 것을 적용함, ~~~.jsx 오타 수정)

  • 마지막으로는 by 작성자 로 누가 썼는지 알려주세요
    (ex- by @GoMyamMii)


Branch

  • 꼭 본인이 작업 할 Branch 를 따로 파서 작업해주세요.

  • Branch 의 이름은 feature/기능 으로 만들어주세요.
    (ex- feture/postTodoList, feture/getComment)


merge

  • branch 를 merge 할때는 dev에 해주시고, PR 에 기능에 대한 설명들을 적어주세요.
profile
개념을 이해하고 다른사람에게도 알려줄 수 있는 개발자가 되고 싶어요..

0개의 댓글