메인 칼럼 개발일지 작업물 연락처
← cuenote 프로젝트
cuenote

베타 릴리스 — 캘린더 만들고 한글 입력 버그 잡고

릴리스캘린더Mac 빌드UX

6주 정도 달려서 드디어 베타 릴리스를 찍었다. 64커밋.

캘린더

노트에 “금요일 3시 팀미팅” 같은 걸 쓰면 AI가 자동으로 추출해서 캘린더에 넣어주는 기능. “내일”, “다음 주 월요일” 같은 상대적 표현도 파싱한다. 뷰는 일/주/월/년 4개 만들었고, Today Focus 카드로 오늘 일정을 한눈에 볼 수 있게 했다.

캘린더 UI가 생각보다 손이 많이 간다. 날짜 계산, 주/월 경계 처리, 시간대 같은 게 다 엣지 케이스 덩어리.

한글 IME 버그

이거 잡는 데 생각보다 시간 걸렸다. 파일이나 폴더 이름 입력할 때 한글 입력 중에 Enter를 치면 compositionend 이벤트가 꼬여서 이름이 두 번 들어가거나, 마지막 글자가 잘리는 문제가 있었다. isComposing 플래그로 IME 상태를 추적하고, Enter 핸들러에서 composition 중이면 무시하도록 했다. 한국어 쓰는 사용자한테는 이거 안 잡으면 앱을 못 쓰는 수준이라 우선순위를 높였다.

Mac 빌드

electron-builder로 Mac 빌드를 만드는데, arm64(M칩)이랑 x64(Intel) 분기가 필요했다. 환경 변수 초기화 순서도 좀 달라서 빌드 스크립트를 정리했다. Linux 빌드도 별도 브랜치에서 지원하도록 추가.

README 정리

한국어/영어 이중 README를 작성하고, GIF 데모 녹화도 했다. README 쓰면서 프로젝트를 처음부터 다시 훑어보니까 빠진 기능도 보이고, 설명이 모호한 부분도 보여서 코드도 같이 수정했다.

돌아보면

1월 6일 Initial commit부터 2월 14일 베타 릴리스까지. 모노레포 세팅 → 에디터 교체 → AI 기능 → GitHub 연동 → 챗봇 → 캘린더 순서로 쌓아올렸다. 혼자 만든 거치고는 기능이 꽤 많아졌는데, 그만큼 코드 품질이 일정하지 않은 부분도 있다. 특히 초기에 급하게 짠 코드는 나중에 리팩터링하면서 거의 다 갈아엎었다. 다음에는 처음부터 좀 더 설계를 잡고 가야겠다는 생각.

김현빈 Developer & Writer

기술, 포스팅 관련 질문, 프로젝트 협업 등 연락주시면 언제든지 회신 드립니다.