devch

만든 것 / Kabin

Kabin 앱 아이콘

Kabin

계정 없이 내 컴퓨터에서 쓰는 데스크톱 칸반

계정과 인터넷 연결 없이 작업 데이터를 기기 안 SQLite에만 보관하는 칸반 앱입니다. 칸반, 표, 대시보드 세 가지 보기에 명령 팔레트, 전체 검색, 자동 백업을 넣었고 Kanri와 Trello에서 쓰던 보드를 그대로 가져올 수 있습니다. macOS, Windows, Linux용 설치 파일을 배포합니다.

2026.04~06개인 프로젝트MIT Tauri 2React 19RustSQLiteRelease Please
Kabin
Kabin 카드 상세 편집 화면

태그, 마감일, 첨부를 편집하는 카드 상세 화면 (랜딩에 공개된 예시 데이터)

병합 PR42

2026-04-06~06-21

릴리스14

마지막은 v1.0.0, 2026-06-21

배포 운영체제3

macOS, Windows, Linux 설치 파일

랜딩 번역 키38

한국어와 영어 같은 수로 맞춤

왜 만들었나

공개 기록으로 확인되는 출발점은 두 가지입니다. 데이터를 계정이나 서버가 아니라 내 기기에 두는 칸반이 필요했고 Kanri와 Trello에 쌓인 보드를 다시 입력하지 않고 옮겨 와야 했습니다.

Kanri는 보드가 늘수록 한눈에 보기 어려웠고 Trello는 개인 할 일까지 서버에 올리는 게 마음에 걸렸습니다. 무엇보다 가까운 사람이 깔끔하고 쓰기 편하면서 네트워크 없이도 쓰는 칸반을 원해서 로컬 퍼스트로 만들었습니다.

칸반 하나 띄우는 데 브라우저 엔진을 통째로 싣는 Electron은 무거웠고 웹 앱으로 하면 결국 서버와 계정이 다시 필요했습니다. 화면은 손에 익은 React로 쓰고 파일과 DB는 Rust 쪽에 맡길 수 있는 Tauri를 골랐습니다. Rust 빌드 환경을 따로 갖춰야 하는 부담은 받아들였습니다.

Kanri와 Trello 보드 한 번에 가져오기

Kanri는 보드 하나짜리 파일과 전체 내보내기 파일 두 형태를 쓰고 Trello는 리스트, 체크리스트, 라벨을 서로 다른 구조로 내보냅니다. Rust 쪽에서 두 형식을 하나의 중간 표현으로 읽고 검증한 다음 프로젝트부터 하위 작업까지 한 트랜잭션으로 씁니다. 화면은 소스 고르기, 파일 고르기, 미리보기, 확인 순서로 진행합니다. 파일은 50MB까지만 받고 이름이 같은 태그는 새로 만들지 않고 기존 것을 씁니다.

Kanri 보드 하나를 가져와 카드가 전체 검색, 사이드바, 대시보드에 반영되는 것까지 확인했습니다. Trello와 여러 보드짜리 Kanri 파일은 PR 시점 확인 목록에 남아 있습니다.

Kabin 표 보기 화면
가져온 카드를 표로 보고 거르는 화면

맨 끝에 붙는 카드와 따라오지 않는 스크롤

다른 열의 카드 사이에 놓아도 카드가 늘 맨 끝에 붙었습니다. 긴 열이나 넓은 보드에서는 가장자리로 끌어도 화면이 따라가지 않았습니다. 둘은 원인이 달랐습니다. 앞의 것은 놓는 위치 표시가 실제 삽입 순서에 반영되지 않아서였고 뒤의 것은 자동 스크롤 패키지가 설치만 되고 등록되지 않아서였습니다.

지금은 카드 위아래 경계에 놓으면 그 자리에, 빈 곳에 놓을 때만 맨 끝에 넣습니다. 자동 스크롤은 실제로 스크롤되는 컨테이너에 등록했습니다. 여러 프로젝트를 한 화면에 모은 통합 칸반은 드래그 방식이 달라 이번 수정 범위에서 뺐습니다.

카드를 끌어 열 사이에 놓는 보드 화면
카드 사이 삽입 위치를 보여 주는 보드

설치 경로부터 연 배포

세 운영체제용 파일을 배포하지만 Apple 공증 없이 임시 서명만 한 macOS 앱은 처음 열 때 경고가 뜹니다. 임시 서명으로는 경고를 없앨 수 없다는 한계를 문서에 적었습니다. README와 랜딩 맨 앞에 운영체제별 설치 파일과 경고 넘기는 방법을 두고 Release Please로 태그부터 세 플랫폼 빌드까지 한 흐름으로 만들었습니다. 자동 업데이트는 macOS만 대상으로 잡고 서명, 공증, 실제 설치 확인 전에는 내보내지 않기로 했습니다. Windows는 서명을 따로 준비해야 할 수 있어 자동 업데이트를 지원하지 않습니다.

"Windows 서명도 뭔가 필요하다면 우선 윈도우는 지원제외"작업 세션에서 범위를 정하며 남긴 말

Kabin은 Chostty와 BarNook보다 먼저 만들어 공증 경로를 갖추기 전에 1.0을 배포했습니다. 그 뒤 두 앱에서 다듬은 서명과 업데이트 절차를 Kabin에 옮기는 일이 남아 있습니다.

화면

만들고 나서