[Git] Github Labels 한 번에 적용하는 방법
·
Etc/Git
Github Repo를 생성할 때마다 수동으로 추가하던 Label을 한 번에 적용하는 방법을 알게 되어 소개하려고 합니다. 📌 준비물git-labels.json"name": "라벨 이름","color": "라벨 색상","description": "라벨 설명"[ { "name": "⚙ Setting", "color": "e3dede", "description": "개발 환경 세팅" }, { "name": "✨ Feature", "color": "a2eeef", "description": "기능 개발" }, { "name": "🚀 Deploy", "color": "C2E0C6", "description": "배포 관련" }, { "name..
[Compose] 한국 이름 입력을 위한 TextField 구현 (+천지인)
·
Android/Compose
한국에서 이름 입력 시, 천지인 키보드와 삼성 한손모아키 키보드의 호환성을 고려해야 합니다. 특히, 두 키보드에서 미들닷(ㆍᆢ)의 표현이 다르기 때문에 이를 적절히 처리하는 정규표현식을 사용해야 합니다. 정규표현식입력 필터링을 위한 정규표현식은 다음과 같습니다:val regex = Regex("^[가-힣ㆍᆞᆢㄱ-ㅎㅏ-ㅣ]*$") 이 정규표현식은 한글 문자(가-힣), 미들닷(ㆍ, ᆢ), 그리고 자음(ㄱ-ㅎ)과 모음(ㅏ-ㅣ)을 포함하여 오직 한국어만 입력받도록 설정합니다.미들닷(ㆍ)이 두 개인 이유는 삼성의 한손모아키에서 사용되는 미들닷(ㆍ)이 천지인과 다르기 때문에이를 모두 대응하기 위해 추가하였습니다. 예시 코드아래는 Compose를 사용하여 한국어 입력을 처리하는 KoreanTextField 컴포저블 ..
[Git] CHANGELOG.md Generate
·
Etc/Git
지난 포스트에서 AngularJS Commit Convention에 대해 정리했습니다.이번에는 정리한 내용 중에서 CHANGELOG.md를 직접 생성해보려 합니다.  📌 CHANGELOG.md생성하기에 앞서 CHANGELOG.md가 뭔지 설명해 보겠습니다.CHANGELOG.md는 Release 시점에 Commit Message를 및 별로 정리해 놓은Markdown 형식의 파일입니다. 따라서, 프로젝트의 feature, bug fix, refactor 등으로부터 변경된 변화를 한눈에 파악할 수 있습니다.  📌 간단한 생성 방법이전 글에서도 소개해드렸는데 Git 명령어를 통해 생성하는 방법입니다.git log --pretty="- %s" > CHANGELOG.md위와 같이 명령어를 입력 후 실행하면 ..
[Git] AngularJS Commit Conventions
·
Etc/Git
우아한테크코스 프리코스 진행을 하면서 요구사항 중 AngularJS Commit Convention을 참고하여커밋 메시지를 작성하라는 요구사항이 있었습니다. 그래서 이번 기회에 정리해보며 사용 방법을 익혀보려고 합니다.자료는 해당 링크를 참고했습니다. 📌 CHANGELOG.md 생성변경 기록에는 다음 세 가지의 내용이 포함되어 있습니다.1. New Feature2. Bug Fixes3. Breaking Changes 사용자가 정의한 여러 스크립트에 따라 다양한 형식의 CHANGELOG를 생성할 수 있습니다. 아래 명령어로 간단한 형태의 CHANGELOG.md를 생성할 수 있습니다.git log --pretty="- %s" > CHANGELOG.md  📌 중요하지 않은 Commit 식별중요하지 않은 커..
[Compose] SMS Retriever API - SMS 인증번호 자동입력
·
Android/Compose
Google Play Service에는 SMS 기반 확인 프로세스를 간소화하는 데 사용할 수 있는 두 가지 API가 있습니다. SMS Retriever APISMS User Consent API SMS Retriever API는 정말 자동화된 사용자 경험을 제공하므로 가능한 경우 사용하는 것이 좋습니다.하지만 메시지 본문에 사용자 정의 해시 코드를 입력해야 하며, 해당 메시지를 보낸 사람이 아니라면 이 작업을 하는 것이 어려울 수 있습니다. 메시지의 내용을 제어할 수 없는 경우(예: 앱이 앱 내에서 결제 거래를 승인하기 전에 사용자 전화번호를 인증할 수 있는 금융 기관과 협력하는 경우) 커스텀 해시 코드가 필요하지 않은 SMS User Consent API를 사용할 수 있습니다. 그러나 사용자에게 앱의 ..
[Compose] SnackBar Duration Custom
·
Android/Compose
SnackBar란? SnackBar는 간단한 메시지를 사용자에게 전달하는 UI 구성 요소로, 주로 아래와 같은 용도로 사용됩니다.정보 전달: 작업의 결과나 상태에 대한 피드백을 제공합니다.사용자 액션 유도: 사용자가 특정 작업을 수행하도록 유도할 수 있습니다(예: "취소" 또는 "다시 시도" 버튼 포함). SnackBar 구현하기 Android Compose에서 SnackBar를 사용하기 위해서는 ScaffoldSnack¯¯¯¯Host를 이용해야 합니다.아래는 기본적인 SnackBar 구현 예제입니다.val scope = rememberCoroutineScope()val snackbarHostState = remember { SnackbarHostState() }Scaffold( snack..
[Compose] Modifier Extension - DrawScrollbar
·
Android/Compose
drawScrollbar 함수는 Modifier 클래스에 대한 확장 함수로, LazyColumn에 커스텀 스크롤바를 그릴 수 있게 해줍니다.이 함수는 drawBehind를 사용하여 컴포저블의 캔버스에 직접 스크롤바를 그립니다. 해당 함수는 아래 이슈를 참고하였습니다. Google Issue Tracker issuetracker.google.com /** * LazyColumn을 위한 사용자 정의 스크롤바를 그리기 위한 확장 함수 * * @param state LazyListState로, lazy list의 상태를 포함 * @param barColor 스크롤바의 색상 * @param barWidth 스크롤바의 너비 * @param barBottomPadding 스크롤바의 하단 패딩 */ fun Modifi..
[Compose] Modifier Extension - AddFocusCleaner
·
Android/Compose
이번 포스팅에서는 Jetpack Compose에서 포커스를 해제하는 동작을 손쉽게 추가할 수 있는 확장 함수 addFocusCleaner를 소개하고자 합니다. addFocusCleaner 함수의 개요addFocusCleaner 함수는 Modifier의 확장 함수로, 컴포저블에 포커스 해제 기능을 추가합니다. 이 함수는 다음과 같은 상황에서 유용합니다:사용자 입력이 끝난 후, 다른 영역을 탭했을 때 포커스를 해제하고 싶을 때포커스 해제 시 추가적인 동작을 실행하고자 할 때fun Modifier.addFocusCleaner( focusManager: FocusManager, doOnClear: () -> Unit = {}): Modifier { return this.pointerInput(..
[프로젝트 후기] 띵커벨 - 명지대학교 공지 알림 서비스
·
Review/프로젝트 후기
💡프로젝트 소개 띵커벨은 IT 프로젝트 동아리 DEPth 3기 MVP 프로젝트로 개발한 서비스이다. ✅ 개발 기간2024.7.11 ~ 유지보수 중 ✅ 개발 인원총 7명 (PM 1명 / 디자이너 1명 / 안드로이드 2명 / 서버 3명)으로 프로젝트를 시작MVP 데모데이 이후 서비스 출시를 위해 iOS 개발자 2명을 추가하여 총 9명으로 유지보수 진행 중 ✅ 깃허브 링크기술 스택 및 안드로이드 프로젝트 정보는 아래 링크를 통해 확인해 주세요. Team.NeverLand명지대학교 공지사항 알림 서비스. Team.NeverLand has 4 repositories available. Follow their code on GitHub.github.com ✅ 소통 방법피그마 + 노션 + 디스코드를 통해 문서 관리..
[프로젝트 후기] 개발자를 위한 자동 카테고리 분류 북마크 서비스 : DevMark
·
Review/프로젝트 후기
💡프로젝트 소개 DevMark는 2024-1 명지대학교 데이터테크놀로지 전공 캡스톤디자인에서 제작한 프로젝트이다. ✅ 개발 기간2024.03.05 ~ 2024.06.11 (아이디어 선정 ~ 최종 발표, 99일) ✅ 개발 인원총 4명 서버 및 데이터 크롤링: 1명AI 모델 선정 및 논문 작성: 1명안드로이드 & 크롬 확장 프로그램: 2명 ✅ 소통 방법노션 + 피그마 + 줌을 통해 문서 관리, 소통 진행노션 DB에 있는 ID 속성을 통해 이슈 관리를 진  💡프로젝트 진행 과정✅ 주제 선정북마크란?인터넷에서 자주 찾는 웹 사이트를 별도로 등록함으로써,주소를 매번 입력하지 않고 클릭만으로 쉽고 빠르게 접속할 수 있게 하는 일. Pain Point - 최초 문제사용자가 포스트 내에서 정보를 얻은 시점부터, 정..