내가 꾸민 다이어리를 공유하고 다른 사람들과 정보를 나누는 커뮤니티 서비스
- Kotlin
- Clean Architecture With MVVM Pattern
- 주윤겸(@yuni-ju)
- 허동준(@DongJun-H)
Clone this repository and import into Android Studio
git clone git@github.com:Daily-DAYO/DAYO_Android.git- minSdkVersion : 26
- targetSdkVersion : 36
- Create issue
- Create branch for each issue (feature/issue-#) -> eg) feature/issue-1
- After develop merged, Delete branch
- [feat] : Add new feature
- [layout] : Add and modify layout and xml
- [bug] : Error fix
- [doc] : Add and modify documents
- [refactor] : code Refactoring
- [style] : NO CODE CHANGE. code formatting, convert tabs to spaces, etc
- [chore] : NO CODE CHANGE. updating grunt tasks, etc
- [test] : Add test code
- commit message rule
- Don't use a period
- Write a command without using the past tense. example) "Fixed" -> "Fix", "Added" -> "Add"
- commit message Example : #issue number {issue title} e.g. #1 [layout] MainActivity
-
Basic Principle : (what) _ (where) _ (description) _ (size)
-
layout : (what) _ (where).xml e.g. activity_main.xml
-
drawables : (what) _ (description) _ (size) e.g. ic_notify_icon_24
-
ids : (what)_ (where) _ (description) e.g. tv_main_nickname
-
strings : (where) _ (description)
-
color : (description) _ (colorCode) e.g. white_FFFFFF
-
textView → tv / EditText → et / RecyclerView → rv / ImageView → img / Button → btn
-
state list drawable → selector_(where) _ (what) e.g. selector_main_button
-
shape drawable → border _(color) _ ([fill/line/fill_line]) _ (radius) e.g. border_white_fill_12
QA 라벨이 붙은 이슈가 생성되면 Gemini AI가 자동으로 코드를 수정하고 PR을 생성합니다.
- Google AI Studio에서 Gemini API Key 발급 (무료)
- GitHub 저장소 Settings → Secrets and variables → Actions → New repository secret
- Name:
GEMINI_API_KEY - Value: 발급받은 API Key
- Name:
.github/workflows/qa-bot.yml이develop브랜치에 존재하면 자동 활성화
QA 이슈 생성 (label: QA)
↓
GitHub Actions 트리거
↓
이슈 파싱 → 화면명·컴포넌트·스펙 추출
↓
관련 Kotlin 파일 탐색
↓
Gemini 1.5 Flash 호출 → 수정 코드 생성
↓
feature/issue-{N} 브랜치 생성 → 커밋
↓
PR 자동 생성 + 이슈에 코멘트
자동 수정이 어려운 이슈(로직 변경 필요 등)는 이슈에 사유를 코멘트합니다.
Copyrightⓒ 2021- DAYO, All rights reserved.

