그로우잇은 음성 기반 AI와 대화하며 일기를 기록하고, 개인 맞춤형 마음챙김 챌린지를 제공해 정신 건강을 체계적으로 관리하는 앱입니다.
IT 연합 사이드 프로젝트 동아리 UMC-7th (GrowIt 프로젝트 Android 파트)
개발기간: 2025.12 ~
.
├─ app/
│ ├─ build.gradle # 앱 모듈 빌드 스크립트
│ └─ src/
│ └─ main/ # 실제 앱 코드
│ ├─ AndroidManifest.xml # manifest
│ ├─ java/
│ │ └─ com/example/growitandroid/
│ │ ├─ application/ # 앱 전역 설정/시작 지점
│ │ ├─ data/ # 데이터 계층 (Clean/Layered)
│ │ │ ├─ remote/ # 원격 데이터(API)
│ │ │ ├─ model/ # 요청/응답 DTO
│ │ │ ├─ service/ # 네트워크 호출 래핑(Service)
│ │ │ └─ repository/ # Repository (local/remote 조합)
│ │ ├─ ui/ # 프레젠테이션 계층
│ │ └─ utils/ # 공통 유틸(비즈니스 무관한 순수 함수/헬퍼)
│ │
│ └─ res/ # 리소스
│ ├─ drawable/ # 벡터/이미지 리소스
│ ├─ font/ # 폰트
│ ├─ layout/ # 화면 XML (Fragment/Activity/Item)
│ ├─ menu/ # 메뉴 XML
│ ├─ values/ # colors.xml, strings.xml, styles.xml 등
└─ README.md # 프로젝트 문서(구조/빌드/실행 방법)
| 브랜치 유형 | 내용 |
|---|---|
main |
완성된 버전의 코드를 저장하는 브랜치 |
dev |
개발이 진행되는 동안 완성된 코드를 저장하는 브랜치 |
feat |
작은 단위의 작업이 진행되는 브랜치 |
hotfix |
긴급한 오류를 해결하는 브랜치 |
-
유형/#이슈번호
ex) feat/#30, setting/#1
| 카테고리 | 내용 |
|---|---|
feat |
구현 |
mod |
수정 |
add |
추가 |
del |
삭제 |
fix |
버그 수정 |
refactor |
리팩토링 |
- Issue 생성
- Branch 생성
- Add - Commit - Push - Pull Request(PR)
- Commit은 최대한 자주, 적은 양
- Commit시에 Issue를 연결
- PR이 작성 후 충돌사항 없으면 merge하기
- 새로운 작업을 시작할 때 dev에서 pull 받아오기
[카테고리] 제목
ex) [INIT] 프로젝트 초기 세팅
[커밋 카테고리/#이슈번호] 커밋 내용 (대문자)
ex) [FEAT/#30] 홈 뷰 구현, [ADD/#1] 폰트 파일 추가
| 커밋 카테고리 | 내용 |
|---|---|
feat |
기능 (feature) |
fix |
버그 수정 |
docs |
문서 작업 (documentation) |
style |
포맷팅, 세미콜론 누락 등, 코드 자체의 변경이 없는 경우 |
refactor |
리팩토링 : 결과의 변경 없이 코드의 구조를 재조정 |
test |
테스트 |
chore |
변수명, 함수명 등 사소한 수정 ex) .gitignore |
[카테고리/#이슈번호] 제목
ex) [FEAT/#6] 로그인 뷰 구현
| 구분 | 기술 / 라이브러리 | 설명 |
|---|---|---|
| 언어 | Kotlin | 안드로이드 앱 개발을 위한 주요 언어 |
| UI 구성 | XML / Jetpack ViewBinding | 뷰 레이아웃 구성 및 바인딩 처리 |
| 이미지 로딩 | Glide | 네트워크 또는 리소스에서 이미지 비동기 로딩 및 캐싱 |
| 네트워크 통신 | Retrofit2 + Gson | REST API 요청 및 JSON 파싱 |
| 비동기 처리 | Kotlin Coroutines | 비동기 작업을 효율적으로 처리하기 위한 코루틴 사용 |
| 앱 아키텍처 | MVVM | Model-View-ViewModel 아키텍처 적용 |
| 푸시 알림 | FCM(Firebase Cloud Messaging) | 알림 메시지 수신 처리 |
버전 : Meerkat
targetSDK : 35
minSDK : 26
테스트 환경 : Emulator(Pixel 8a), Samsung Galaxy S22+
