Aiary는 영어 일기 작성을 통해 자연스럽게 영어를 학습할 수 있는 웹 애플리케이션입니다. AI가 사용자의 일기를 첨삭하고 현지 영어 표현으로 교정해주며, 유사 표현과 예문을 제공하여 실질적인 영어 실력 향상을 도와줍니다.
- 현지 표현을 사용해서 영어 일기를 쓰고 싶은 사람들
- 영어 공부를 하고 싶어하는 사람들
- 일상생활 속에서 꾸준히 영어에 접하고 싶은 사람들
- 영어 일기 쓰기 습관을 기르고 싶은 사람들
- 현지 표현 습득: AI가 교정한 문장을 통해 자연스러운 영어 표현 학습
- 개인 맞춤 첨삭: 작성한 문장을 현지 영어 표현으로 첨삭받을 수 있음
- 유사 표현 학습: 다양한 표현 방법과 예문을 통한 어휘력 확장
- 일상 영어 접촉: 매일 일기를 쓰며 꾸준한 영어 학습 습관 형성
- 일기 작성: 매일 영어로 일기를 작성하고 이미지 첨부 가능
- 작성 기간 제한: 오늘 기준 최대 2일 전까지만 작성 가능 (습관 형성을 위한 제약)
- AI 첨삭: 작성한 문장을 현지 영어 표현으로 자동 교정
- 코멘트: AI가 일기 내용을 분석하여 감정을 고려한 코멘트 제공
- 일기 조회: 달력 형태로 일기 목록 확인 및 검색 기능
- 수정/삭제 제한: 작성 당일 24시간 이내에만 수정/삭제 가능 (학습 기록 보존)
- 공개 설정: 공개/비공개 여부는 언제든지 변경 가능
- 단어 추가: 학습하고 싶은 단어나 숙어를 개인 단어장에 저장
- AI 설명: 단어의 의미, 예문, 유사 표현을 AI가 자동 생성
- 학습 진도: 단어 학습 진행 상황을 시각적으로 확인
- 공개 일기: 다른 사용자들과 일기를 공유하고 피드백 받기
- 피드 탐색: 다른 사용자들의 일기를 구경하며 영감 얻기
- 단어장 연동: 다른 사용자의 공개 일기에서 드래그 앤 롱프레스로 단어를 내 단어장에 추가
- 전체 일기 보기: 모든 사용자의 공개 일기를 한 곳에서 탐색 가능
- 이메일 회원가입: 기본 이메일/비밀번호 회원가입
- Google OAuth: Google 계정으로 간편 로그인
- 자동 리디렉션: 로그인 후 원래 가려던 페이지로 자동 이동
- React 19.1.1 - UI 라이브러리
- Vite 7.1.2 - 빌드 도구 및 개발 서버
- Material-UI (MUI) 7.3.1 - UI 컴포넌트 라이브러리
- React Router DOM 7.8.1 - 클라이언트 사이드 라우팅
- TanStack Query 5.85.3 - 서버 상태 관리
- Zustand 5.0.7 - 클라이언트 상태 관리
- Axios 1.11.0 - HTTP 클라이언트
- Google OAuth - 소셜 로그인
- Node.js - 런타임 환경
- Express.js 5.1.0 - 웹 프레임워크
- MongoDB - NoSQL 데이터베이스
- Mongoose 8.17.1 - MongoDB ODM
- JWT - 인증 토큰 관리
- bcryptjs - 비밀번호 암호화
- OpenAI GPT-4o-mini - AI 일기 첨삭 및 코멘트 생성
- ESLint - 코드 품질 관리
- Nodemon - 개발 서버 자동 재시작
- dotenv - 환경 변수 관리
group-project-aiary/
├── AIary-fe/ # Frontend (React)
│ ├── src/
│ │ ├── apis/ # API 호출 함수들
│ │ ├── common/ # 공통 컴포넌트 및 스타일
│ │ ├── hooks/ # 커스텀 훅들
│ │ ├── layout/ # 레이아웃 컴포넌트
│ │ ├── pages/ # 페이지 컴포넌트들
│ │ │ ├── LandingPage/ # 랜딩 페이지
│ │ │ ├── DailyPage/ # 일기 작성/조회 페이지
│ │ │ ├── VocabPage/ # 단어장 페이지
│ │ │ ├── AllDiariesPage/ # 전체 일기 목록 페이지
│ │ │ ├── LoginPage/ # 로그인 페이지
│ │ │ └── RegisterPage/ # 회원가입 페이지
│ │ ├── routes/ # 라우팅 설정
│ │ ├── stores/ # 상태 관리 (Zustand)
│ │ └── util/ # 유틸리티 함수들
│ └── package.json
│
└── AIary-be/ # Backend (Node.js)
├── controllers/ # 컨트롤러 (비즈니스 로직)
├── models/ # 데이터베이스 모델
├── routes/ # API 라우트
├── services/ # 외부 서비스 (ChatGPT)
├── utils/ # 유틸리티 함수들
└── package.json
- 비로그인 사용자: 플로팅 버튼("Aiary 시작하기")을 통해 로그인 페이지로 이동
- 주요 기능 버튼: "내 일기 작성하기", "일기 더보기" 등 각 기능별 페이지로 바로 이동
- 공개 일기 대시보드: 최신 공개 일기 3개를 미리보기로 제공
- 일기 전체보기: 긴 일기의 경우 "전체보기" 버튼으로 펼쳐서 확인 (로그인 필요)
- 서비스 소개: Aiary의 주요 기능과 장점을 시각적으로 소개
- 이메일로 회원가입하거나 Google 계정으로 간편 로그인
- "내 일기 작성하기" 버튼 클릭
- 오늘 기준 최대 2일 전까지만 작성 가능 (습관 형성을 위한 제약)
- 오늘의 일기를 영어로 작성
- AI가 자동으로 문법 교정 및 현지 표현 제안
- 필요시 이미지 첨부 가능
- 학습하고 싶은 단어나 숙어 추가(드래그 앤 롱프레스)
- 중요: 작성 당일 24시간 이내에만 수정/삭제 가능
- AI가 저장된 단어의 의미, 예문, 유사 표현 자동 생성
- mastered, learning 상태 변경가능
- 단어 검색 및 탭으로 필터 가능
- 저장된 단어의 학습 진행도 체크 가능
- 달력에서 작성한 일기 확인
- 공개 설정으로 다른 사용자와 일기 공유 (언제든지 변경 가능)
- 다른 사용자들의 일기 피드 탐색
- 특별 기능: 다른 사용자의 공개 일기에서 드래그 앤 롱프레스로 단어를 내 단어장에 추가
| 이름 | 역할 | GitHub |
|---|---|---|
| 김현진 | Product Owner | @hj7321 |
| 정승아 | Scrum Master | @Jeongsunga |
| 박서연 | Developer | @romanstripe |
| 한사라 | Developer | @namee-h |
프로젝트에 대한 문의사항이 있으시면 이슈를 생성해주세요.
Aiary와 함께 자연스러운 영어 학습을 시작해보세요! 🌟