Boogie — macOS용 네이티브 JMAP 이메일 + 캘린더 클라이언트
macOS용 네이티브 JMAP 이메일 + 캘린더 클라이언트
순수 Swift JMAP 클라이언트 — 웹 래퍼가 아닙니다. Stalwart Mail Server용으로 제작. 자체 호스팅, 비공개, 의존성 제로.
구현된 기능 — 네이티브 JMAP 이메일 + 캘린더 기능
Boogie는 Stalwart와 같은 JMAP 서버를 위해 특별히 제작된 캘린더 통합 네이티브 이메일 클라이언트입니다. 완전한 기능 구현 내역은 다음과 같습니다:
✉ 메일 기능
- 작성, 보내기, 답장, 전달
- 전문 검색 및 정렬
- 드래그 앤 드롭 첨부파일
- HTML 이메일 렌더링 (WKWebView)
- 다중 계정 지원 (자동 검색)
- 서명 관리
- 오프라인 변경 큐
- 41개 언어 — 세계 인구의 63% 커버
- 서명된 DMGs를 사용한 Sparkle 자동 업데이트
- Siri Shortcuts (4개의 App Intents)
📅 캘린더 기능
- 일간, 주간, 월간 보기
- 전체 CRUD 지원 이벤트 편집기
- Stalwart와 JMAP 캘린더 동기화
- JSCalendar 형식 (RFC 8984)
- 동일 앱 내 통합
- CalDAV가 아닌 순수 JMAP
⚙ 인프라 및 아키텍처
- Apple Development 인증서로 코드 서명
- 외부 의존성 없음
- 개인정보 보호 우선 — 원격 측정 없음, 추적 없음
왜 Boogie인가
자체 호스팅 이메일을 위한 네이티브 Apple Mail 대안
Stalwart나 다른 JMAP 서버를 운영하는 사용자에게 Boogie는 서버의 프로토콜을 실제로 지원하는 네이티브 macOS Apple Mail 대안입니다. Apple Mail은 IMAP과 SMTP로 연결합니다 — JMAP 캘린더, 푸시 알림, 일괄 동기화에 접근할 수 없습니다. Boogie는 임시 해결책, 어댑터, 클라우드 릴레이 없이 자체 호스팅 JMAP 서버에 네이티브로 연결합니다.
JMAP이란 무엇인가요?
JMAP(JSON Mail Access Protocol)은 RFC 8620에 정의된 개방형 인터넷 표준으로, IMAP을 상태 비저장 JSON 기반 API로 대체하여 이메일을 현대화합니다. 단일 JMAP 요청으로 여러 작업을 일괄 처리할 수 있습니다 — 메일 가져오기, 캘린더 이벤트 동기화, 실시간 알림 푸시 — 영구 WebSocket 연결을 통해 수행하므로 어떤 IMAP 구현보다 빠르고 효율적입니다.
JMAP 대 IMAP — 주요 차이점
- ♦프로토콜 설계: IMAP은 1986년의 상태 유지 텍스트 기반 프로토콜입니다. JMAP은 2019년에 표준화된(RFC 8620) 상태 비저장 JSON API로, 여러 메일 작업을 단일 HTTP 요청으로 일괄 처리합니다.
- ♦캘린더 지원: IMAP은 이메일만 처리하며, 캘린더는 별도의 CalDAV 연결이 필요합니다. JMAP은 동일한 프로토콜에 캘린더 및 연락처 동기화(RFC 8984)를 포함하여 CalDAV의 필요성을 완전히 제거합니다.
- ♦성능: IMAP은 메시지 메타데이터와 본문을 별도의 왕복으로 가져옵니다. JMAP은 하나의 일괄 요청으로 필요한 모든 것을 가져와 고지연 연결에서 지연을 크게 줄입니다.
- ♦푸시 알림: IMAP은 폴링 또는 IDLE에 의존합니다 — 모바일에서 배터리를 소모하는 연결 유지 방식입니다. JMAP은 WebSocket을 통해 실시간 업데이트를 전달하므로 폴링 없이 새 메일이 즉시 표시됩니다.
- ♦모바일 효율성: IMAP은 모바일 장치가 존재하기 전에 설계되었으며 대역폭을 많이 사용합니다. JMAP의 JSON 일괄 처리와 델타 동기화는 변경된 상태만 전송하여 셀룰러 연결에서 훨씬 효율적입니다.
JMAP 이메일 클라이언트 비교 — Boogie vs 모든 대안
현재 사용 가능한 모든 JMAP 이메일 클라이언트를 조사했습니다. Boogie는 내장 캘린더를 지원하는 유일한 네이티브 macOS JMAP 클라이언트입니다. 현황은 다음과 같습니다:
| 클라이언트 | 플랫폼 | 네이티브 | JMAP 캘린더 | 상태 |
|---|---|---|---|---|
| Boogie | macOS (iOS next) | ✓ | ✓ | 출시됨 |
| Fastmail App | All platforms | Electron | ✓ | Fastmail 전용 (Electron) |
| Swift Mail | macOS | ✓ | ✗ | Fastmail 전용 |
| Mailtemi | iOS / Android | ✓ | ✗ | 캘린더 계획됨 |
| Parula | Win / Mac / Linux | Electron | WIP | 개발 중 |
| Twake Mail | iOS / Android / Web | Flutter | ✗ | 이메일만 |
| Ltt.rs | Android | ✓ | ✗ | 개념 증명 |
| OpenCloud | Web | Web | WIP | 2026년 계획 |
Fastmail의 데스크톱 앱은 웹 클라이언트의 Electron 래퍼이며 네이티브 앱이 아닙니다. JMAP Calendar API는 서드파티 클라이언트에 공개되지 않습니다.
로드맵 — 37개 릴리스 출시 완료, iOS & Android 확장이 다음
| 단계 | 내용 | 작업량 | 상태 |
|---|---|---|---|
| v1.x | 단일 계정 메일 + 캘린더, 배포, 코드 서명 | — | ✓ 완료 |
| v2.x | 다중 계정, Swift 6, HTML 새니타이저, 서명 UX | — | ✓ 완료 |
| v3.x | 마이그레이션, 스마트 동기화, i18n, 현지화 | — | ✓ 완료 |
| 다음 | iOS & iPadOS ( 공유 코드) | — | 다음 |
| 계획됨 | watchOS 컴패니언 | — | 계획됨 |
| 검토 중 | Skip 트랜스파일러를 통한 Android | — | 검토 중 |
오픈 표준 — JMAP, 자체 호스팅 이메일, 벤더 종속 없음
Boogie는 JMAP (JSON Mail Access Protocol)을 사용합니다 — 자체 호스팅 및 프라이버시 우선 이메일을 위한 현대적이고 JSON 기반의 IMAP 후속 프로토콜. 독점 프로토콜 없음. 클라우드 중개자 없음. 당신의 메일 서버, 당신의 데이터, 당신의 클라이언트.
다음을 위해 특별히 제작됨: Stalwart Mail Server, 가장 완전한 JMAP 구현체. Stalwart Mail Server는 메일, 캘린더, 연락처, 파일을 위한 JMAP을 지원하며 — Boogie는 이러한 자체 호스팅 이메일 기능을 접근하기 쉽고 사용자 친화적으로 만드는 네이티브 데스크톱 클라이언트입니다.
JMAP 프로토콜 지원에는 Fastmail, Migadu, Cyrus 및 기타 서버가 포함됩니다. 메일 서버가 JMAP을 지원한다면, Boogie가 연결할 수 있습니다.
당신의 데이터는 당신의 서버에 보관됩니다
Boogie는 텔레메트리를 수집하지 않고, 분석 데이터를 전송하지 않으며, 어떤 클라우드 중개자를 통해서도 트래픽을 라우팅하지 않습니다. 이메일, 캘린더 이벤트, 자격 증명은 Mac 또는 자체 JMAP 서버에 로컬로 저장됩니다 — 절대 우리 서버에는 저장되지 않습니다. 앱은 로컬 데이터베이스로 완전히 오프라인으로 작동하며, 연결을 선택할 때만 서버와 동기화합니다. 계정 불필요. 데이터 수집 없음. 예외 없음.
글로벌 언어 지원 — RTL 및 CJK를 포함한 41개 언어
Boogie는 RTL 아랍어, CJK 스크립트, Devanagari를 포함한 41개 웹사이트 언어와 41개 인앱 언어를 지원합니다. 네이티브 JMAP 데스크톱 클라이언트 중 이 정도의 현지화 깊이에 근접한 앱은 없습니다.
| 클라이언트 | 웹사이트 | 앱 | RTL | 참고 |
|---|---|---|---|---|
| Boogie | 41 | 41 | ✓ | 6가지 문자 체계, ~45억 화자 |
| Twake Mail | 2 | 6* | ✗ | 90%+ 완료 6개; 48개 중 27개 번역 없음 |
| Ltt.rs | 1 | 13 | ✗ | 커뮤니티 번역, Android 전용 |
| Fastmail | 1 | 36 | ? | 웹 인터페이스만, 독립 실행형 앱 아님 |
| Swift Mail | 1 | 1 | ✗ | 영어만 |
| Parula | 1 | 1 | ✗ | 영어만 |
| Mailtemi | 1 | 1–2 | ✗ | 영어만 |
* Twake Mail은 Weblate에서 48개 언어를 나열하지만, 실질적으로 번역된 것은 6개(90%+)뿐입니다. 27개 언어는 번역이 없습니다.
앱 언어 (41)
English, Japanese, Simplified Chinese, Traditional Chinese, French, Spanish, Brazilian Portuguese, Italian, Romanian, Greek, German, Korean, Arabic (RTL), Hindi, Turkish, Dutch, Polish, Thai, Russian, Ukrainian, Vietnamese, Indonesian, Swedish, Afrikaans.
언어당 약 13,500개의 번역된 문자열.
웹사이트 언어 (41)
웹사이트 언어 — English, Japanese, Simplified Chinese, Traditional Chinese, French, Spanish, Brazilian Portuguese, Italian, Romanian, Greek, German, Korean, Arabic (RTL), Hindi, Turkish, Dutch, Polish, Thai, Russian, Ukrainian, Vietnamese, Indonesian, Swedish, Afrikaans.
웹사이트 현지화는 다운로드 전에 사용자를 모국어로 안내합니다.
언어 지원이 중요한 이유
자주 묻는 질문
JMAP이란 무엇인가요?
JMAP(JSON Mail Access Protocol)은 RFC 8620에 정의된 현대적이고 개방적인 이메일 표준으로, 노후화된 IMAP 프로토콜을 대체합니다. HTTPS를 통한 효율적인 JSON을 사용하고, WebSocket을 통한 실시간 푸시를 지원하며, 이메일, 캘린더, 연락처를 하나의 통합 API로 처리합니다 — IMAP보다 훨씬 빠르고 대역폭 효율이 뛰어납니다.
Stalwart Mail Server란 무엇인가요?
Stalwart Mail Server는 Rust로 작성된 오픈소스 자체 호스팅 메일 서버로, 메일, 캘린더, 연락처, 파일 저장소를 포함하여 가장 완전한 JMAP 사양을 구현합니다. 서드파티 클라우드 제공업체에 의존하지 않고 이메일 인프라를 완전히 제어하고자 하는 프라이버시 중시 개인 및 조직을 위해 설계되었습니다.
Boogie는 Fastmail에서 작동하나요?
네. Boogie는 Fastmail, Migadu, Cyrus를 포함하여 JMAP 표준을 구현하는 모든 서버에 연결할 수 있습니다 — Stalwart만이 아닙니다. JMAP 세션 디스커버리는 자동으로 처리되므로, 시작하려면 서버 URL과 자격 증명만 제공하면 됩니다.
Boogie는 Apple Mail과 어떻게 다른가요?
Apple Mail은 IMAP과 SMTP를 사용합니다 — 1980년대와 1990년대의 프로토콜입니다. Boogie는 JMAP만을 사용하여 WebSocket을 통한 실시간 푸시 알림, CalDAV 없는 통합 캘린더 동기화, 클라우드 제공업체가 아닌 자체 호스팅 서버를 위해 구축된 아키텍처를 제공합니다. Stalwart나 다른 JMAP 서버를 운영하는 사용자에게 Boogie는 Apple Mail이 제공할 수 없는 기능을 제공합니다.
Boogie가 iOS에 출시되나요?
iOS 및 iPadOS 지원은 macOS 다음으로 계획된 플랫폼입니다. Boogie 코드베이스의 가 이미 크로스 플랫폼 Swift로 작성되어 있어 포팅에 약 5~7시간의 구현 작업이 소요될 것으로 예상됩니다. watchOS 컴패니언 앱과 Skip 트랜스파일러를 통한 Android 지원도 로드맵에 포함되어 있습니다.
Boogie는 오프라인 이메일을 지원하나요?
네. Boogie는 이메일의 로컬 local() 데이터베이스를 유지하고, 연결이 불가능할 때 발신 변경 사항(작성, 전송, 삭제, 이동)을 큐에 넣습니다. 연결이 복원되면 즉시 JMAP 서버와 동기화되어 데이터 손실 없는 안정적인 오프라인 경험을 제공합니다.
Boogie의 시스템 요구 사항은 무엇인가요?
Boogie는 macOS 14 Sonoma 이상과 Apple Silicon(M1 이상)이 필요합니다. 앱은 Apple Development 인증서로 코드 서명되고 Gatekeeper 호환성을 위해 공증되었습니다. 추가 런타임, 프레임워크 또는 종속성 설치가 필요하지 않습니다 — 앱은 완전히 자체 포함되어 있습니다.
Boogie가 IMAP 대신 JMAP을 사용하는 이유는 무엇인가요?
IMAP은 1986년에 느리고 간헐적인 연결을 위해 설계되었으며 수십 년간의 확장과 임시 해결책이 누적되었습니다. JMAP은 단일 요청에서 여러 작업을 일괄 처리하고, WebSocket을 통해 실시간 업데이트를 전달하며, 하나의 API에서 이메일과 함께 캘린더를 처리하는 상태 비저장 JSON 기반 프로토콜입니다. 처음부터 구축된 네이티브 macOS 클라이언트에게 JMAP은 올바른 기반입니다 — 현대적 사용을 위해 후적용된 레거시 프로토콜이 아닙니다.