서론
Next.js와 MySQL을 공부하고 있다.
그래서 만들기 어렵지 않은 방명록앱을 만들어 보았다.
사용한 라이브러리
- shadcn/ui (UI)
- js-cookie (클라이언트 측 쿠키관리)
- lucide-react (아이콘)
- moment (날짜, 시간 관련 데이터 포매팅)
- mysql2 (MySQL연결)
- tailwindcss (스타일)
- zod (입력체크)
초안
대충 각 화면 및 DB관계도, 작성 순서 등을 정리해 보았다.
마음처럼 되지 않아 중간중간 수정하거나 추가한 부분이 꽤 있다.
주요 기능
- 로그인 관련 (로그인, 회원등록, 비밀번호 찾기)
- 글 작성 관련 (글 작성, 글 수정, 글 삭제)
완성본
https://guestbook-liard-two.vercel.app/
https://github.com/mediumryan/guestbook
후기
삼일정도 꼬박 투자해서 만들었다.
내가 가진 테크닉에 비해 단시간에 괜찮은 완성도로 만들어진 것 같다.
느낀 점으로는
- 기본적으로 form으로 관리되어 제출하는 기능은 모두 server actions를 사용. 대부분의 데이터는 DB와 잘 연계, 반영되어 기분이 좋았다.
- 의외로 글의 생성, 수정, 삭제와는 별개로 로그인 기능이 어려웠다.
- 쿠키관리, 미들웨어 설정 등 저번에 담당한 프로젝트에서 배운 것을 마음껏 사용해 보았다.
- tailwind css가 너무 편했다... 앞으로 다른 라이브러리를 사용할 수 있을까 싶을 정도로,,, 물론 가독성이 엉망이 되는 것은 감수해야 한다.