URL : https://www.ecobuddy.life/
- 기간: 2024/07 - 2024/09 (리팩토링 예정)
- 협업: 대구 지방청과 협업을 맺어 진행한 팀 프로젝트 (백엔드, AI 협업)
- FullStack (Frontend - Next.JS, Backend - MongoDB 모두 담당) + AI chatbot 구현
- PM
- Framework: Next.js (React 기반)
- Language: TypeScript
- Styling: TailwindCSS
- 상태관리: Zustand
- mongoose
- Database: MongoDB
-
재활용 정보 게시판
- Swiper를 이용한 슬라이딩 구현
- Dynamic Routes 활용
- RESTful API 구현
-
상세 제품 검색 기능
- RESTful API 활용
- JavaScript filter 함수 사용
-
공지(자유) 게시판
- CRUD 기능 구현 (추가, 삭제 등)
- axios를 이용한 RESTful API 호출 (GET, POST)
-
재활용 쓰레기통 지도
- 카카오 지도 API 활용
- RESTful API 연동
-
To-Do List
- Zustand 상태관리 라이브러리 사용
-
Open AI
- AI Chat Bot
- Prompt 구현
- Next.js의 Link 태그는 클라이언트 사이드 라우팅으로 동작하여 성능 최적화
- 서버 사이드 렌더링을 통한 SEO 최적화
- 동적 라우팅의 편리함
문제: 하나의 마커 상태 변경이 모든 마커에 적용되는 현상 해결: 개별 마커 컴포넌트를 생성하여 상태를 독립적으로 관리
문제: 네이버 뉴스 API 호출 시 CORS 에러 발생 해결: Next.js의 API Routes 기능을 활용하여 서버 사이드에서 API 호출
문제: 동적 페이지 이동 시 데이터 전달의 복잡성 해결: Zustand 상태관리 라이브러리 도입 및 Local Storage 활용 (Zustand persist)
# 개발 서버 실행
npm run dev
# 또는
yarn dev
<<<<<<< HEAD=======