Skip to content

inha-cloud-project-09/diary_front

Repository files navigation

감정 일기장 프론트엔드


TODO

  • 공통

  • 대시보드(dashboard)

  • 내 일기(my-diary)

  • 일기 내부(diary)

  • 일기 작성(write)

  • 나눔방(communities)

  • 나눔방 내부(community)


감정 일기장은 사용자가 자신의 감정과 하루를 기록하고, 다양한 커뮤니티에서 소통할 수 있는 감정 기반 일기 서비스입니다.
이 저장소는 Next.js 기반의 프론트엔드 코드입니다.


주요 기능

  • 일기 작성/수정/삭제

    • 리치 텍스트 에디터로 감정, 태그, 공개/비공개 등 다양한 정보와 함께 일기 작성
    • 이미지 업로드, AI 질문 추천, 위치/날씨 등 부가 정보 입력 지원
  • 한 줄 일기

    • 오늘의 한 줄 일기 목록 확인 (작성 기능은 비활성화됨)
  • 감정 통계 및 대시보드

    • 최근 감정 분포, 주간 감정 추세, 커뮤니티 추천 등 시각화
  • 커뮤니티(나눔방) 기능

    • 관심사 기반 커뮤니티 참여/추천/탐색
    • 커뮤니티별 일기 목록, 멤버, 활동 정보 제공
  • 모의(mock) 데이터 지원

    • API 호출 실패 시 mock 데이터를 자동으로 fallback하여 개발/테스트 환경에서도 정상 동작
  • 반응형 UI & 다크모드 지원

    • Tailwind CSS 기반의 일관된 디자인 시스템 적용

폴더 구조

src/
  app/
    components/         # 공통 UI 컴포넌트
    dashboard/          # 대시보드(감정 통계 등)
    my-diary/           # 내 일기 목록
    write/              # 일기 작성 페이지
    communities/        # 커뮤니티(나눔방) 목록/참여
    community/          # 커뮤니티 상세
    diary/              # 일기 상세
    ...
  components/           # Header, UserInfoCard 등 공통 컴포넌트
  lib/                  # API, context, util 등
  mock/                 # mock 데이터 (API 실패 시 fallback)
  types/                # 타입 정의

주요 기술 스택

  • Next.js 14
  • React 18
  • TypeScript
  • Tailwind CSS
  • Sonner (toast 알림)
  • Lucide-react (아이콘)
  • Axios (API 통신)
  • Jest/React Testing Library (테스트, 선택적)

개발/테스트 환경

  • .env 파일에 API 서버 주소 등 환경 변수 설정 필요
  • API 서버가 없거나 호출 실패 시, src/mock/의 mock 데이터가 자동으로 사용됨
  • 개발 서버 실행:
    npm install
    npm run dev

커스텀 및 확장

  • mock 데이터 추가/수정
    • src/mock/diary.ts, src/mock/community.ts, src/mock/user.ts 등에서 관리
  • 공통 컴포넌트
    • src/app/components/src/components/ 참고
  • 글로벌 스타일/테마
    • src/app/globals.css, Tailwind 설정 참고

기여 방법

  1. 이슈/PR 등록 전 최신 main 브랜치 pull
  2. 기능/버그별 브랜치 생성 후 작업
  3. 커밋 메시지는 명확하게 작성
  4. PR 등록 시, 변경 내용과 테스트 방법을 상세히 작성

라이선스

MIT


문의

About

감정일기 프론트엔드 src

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •  

Languages