One-Nth Front-End Repository
| 기능 |
라이브러리 / 기술 스택 |
사용 목적 |
| 스플래시 |
splashscreen |
공식 스플래시 API로 깔끔한 화면 전환 지원 |
| 소셜 로그인 |
Kakao SDK |
카카로 소셜 계정 연동 |
| JWT 세션 처리 |
OkHttp Interceptor |
JWT 토큰을 헤더에 자동으로 추가 |
| 프로필 |
ImagePicker |
카메라·갤러리 사진 선택 기능 |
| 서버 API 통신 |
Retrofit2 |
REST API를 통해 서버와 통신 (데이터 요청/응답) |
| 게시글 목록 UI |
RecyclerView |
게시글을 리스트 형태로 표시 |
| 게시글 무한 스크롤 |
Paging3 |
스크롤 시 데이터를 자동으로 로드하여 무한 스크롤 구현 |
| 실시간 채팅 |
Firebase Realtime Database |
빠르고 간편한 실시간 데이터 송수신 |
| 채팅 데이터 저장 |
Firebase Firestore |
구조화된 문서 형식으로 채팅 기록 저장 |
| 채팅 UI 구성 |
RecyclerView with Chat Adapter |
채팅 메시지를 사용자 인터페이스에 맞게 표시 |
| 이미지 처리 |
Glide / Picasso |
사용자 프로필, 콘텐츠 썸네일 등 이미지 로딩 및 캐싱 |
| 카메라 기능 (선택) |
CameraX |
사진 업로드 등 카메라 기능 구현 |
| 위치 기반 검색 |
FusedLocationProviderClient (Google Play Services) |
사용자의 현재 위치 가져오기 |
| 지도 표시 |
Kakao Map SDK / Naver Map SDK / Google Maps SDK |
위치 기반 콘텐츠 검색 및 지도 표시 |
| 알림 기능 |
Firebase Cloud Messaging (FCM) |
푸시 알림 전송 및 수신 |
| 로컬 알림 처리 |
WorkManager / AlarmManager |
로컬 알림 예약 및 주기적 알림 처리 |
| SNS 공유 |
Android Share Intent |
콘텐츠를 SNS(카카오톡, 인스타그램 등)로 공유 |
| SNS 연동 |
Kakao SDK / Facebook SDK 등 |
플랫폼별 연동을 위한 SNS SDK 제공 |
| 로컬 설정 저장 |
SharedPreferences / Jetpack DataStore |
사용자 알림 설정 등 로컬 설정 저장 |
| 사용자 행동 분석 (선택) |
Firebase Analytics |
알림 클릭, 공유 클릭 등 사용자 행동 분석 |
| 항목 |
버전 |
compileSdk |
34 |
targetSdk |
34 |
minSdk |
24 |
| 브랜치 이름 |
설명 |
main |
배포용 버전을 관리하는 최종 브랜치 |
develop |
개발 중인 기능을 통합하는 브랜치 |
| 브랜치 이름 예시 |
설명 |
feature/이름 |
개인 브랜치를 만들어 작업 진행 (예: feature/jisoo) |
| 브랜치 이름 |
설명 |
hotfix/버그명 |
운영 중 긴급 버그 수정 |
release/버전명 |
배포 전 릴리즈 준비를 위한 브랜치 |
| Prefix |
의미 |
Feat |
새로운 기능 |
Fix |
버그 수정 |
Design |
UI/레이아웃 작업 |
Refactor |
코드 리팩토링 |
Docs |
문서 작성/수정 |
Chore |
기타 작업 (설정, 빌드 등) |
### 🛠️ 작업 내용
* 무엇을 구현/수정/리팩터링할 것인지
### ✅ 체크리스트
* [ ] 해야 할 일 1
* [ ] 해야 할 일 2
### 📎 참고 자료
* 관련 문서나 링크
| Prefix |
의미 |
Feat |
✨ 새로운 기능 추가 |
Fix |
🐞 버그 수정 |
Design |
🎨 UI/레이아웃 작업 |
Refactor |
♻️ 코드 리팩토링 |
Docs |
📄 문서 작성/수정 |
Chore |
🔧 기타 설정, 빌드 등 |
[Feat] 회원가입 API 연동 (#12)
[Fix] 로그인 에러 메시지 출력 오류 수정 (#9)
[Refactor] ViewModel 로직 정리 (#21)
## #️⃣ Issue Number
<!-- ex) #12, #14 -->
## 📝 요약(Summary)
<!-- 변경 사항 및 관련 이슈에 대해 간단하게 작성해주세요 -->
## 🛠️ PR 유형
* [ ] 새로운 기능 추가
* [ ] 버그 수정
* [ ] CSS/UI 디자인 변경
* [ ] 코드 리팩토링
* [ ] 문서 작성/수정
* [ ] 테스트 코드 작성
* [ ] 설정 파일 변경
* [ ] 기타
## 📸 스크린샷 (선택)
## 💬 리뷰어에게 하고 싶은 말
<!-- 리뷰 시 중점적으로 봐줬으면 하는 부분 -->
type [옵션] : 제목 (Subject)
[한 줄 공백]
본문 (Body)
[한 줄 공백]
꼬리말 (Footer)
| 태그 |
설명 |
Feat |
✨ 새로운 기능 추가 |
Fix |
🐞 버그 수정 |
Design |
🎨 UI/레이아웃 작업 |
Refactor |
♻️ 코드 리팩토링 (기능 변경 없음) |
Docs |
📄 문서 작성 및 수정 |
Test |
✅ 테스트 코드 작성 및 수정 |
Chore |
🔧 기타 작업 (설정, 패키지 설치 등) |
Comment |
💬 주석 추가 및 수정 |
- 필요 시 작성
- 여러 변경사항은 글머리 기호 사용
✅ 꼬리말(Footer)
- 선택 사항
- 이슈 연결 시
Fixes: #이슈번호 형식 사용
📍 기본 규칙
- 문자열은 쌍따옴표 (
") 사용
- 문장은 **세미콜론(
;)**으로 종료
- 한 줄에 하나의 문장만 작성
- 불필요한 주석/로그/미사용 코드 제거
- 연산자 사이 공백 유지
- 콤마 뒤 공백 추가
- 생성자 함수명은 대문자로 시작