Boogie — Natywny klient JMAP e-mail + kalendarz dla macOS
Natywny klient JMAP e-mail + kalendarz dla macOS
Czysty klient Swift JMAP — nie wrapper webowy. Stworzony dla Stalwart Mail Server. Samodzielnie hostowany, prywatny, zero zależności.
Co zostało zbudowane — Natywne funkcje e-mail i kalendarza JMAP
Boogie to natywny klient e-mail ze zintegrowanym kalendarzem, stworzony specjalnie dla serwerów JMAP takich jak Stalwart. Oto kompletna implementacja funkcji:
✉ Funkcje poczty
- Tworzenie, wysyłanie, odpowiadanie, przekazywanie
- Wyszukiwanie pełnotekstowe i sortowanie
- Załączniki z przeciągnij i upuść
- Renderowanie wiadomości HTML (WKWebView)
- Obsługa wielu kont (automatyczne wykrywanie)
- Zarządzanie podpisami
- Kolejka mutacji offline
- 41 języków — obejmując 63% ludności świata
- Automatyczne aktualizacje Sparkle z podpisanymi DMGs
- Skróty Siri (9 App Intents)
📅 Funkcje kalendarza
- Widoki dnia, tygodnia i miesiąca
- Edytor wydarzeń z pełnym CRUD
- Synchronizacja kalendarza JMAP ze Stalwart
- Format JSCalendar (RFC 8984)
- Zintegrowany w tej samej aplikacji
- Nie CalDAV — czysty JMAP
⚙ Infrastruktura i architektura
- Podpisany kodem z certyfikatem Apple Development
- Zero zewnętrznych zależności
- Prywatność na pierwszym miejscu — bez telemetrii, bez śledzenia
Dlaczego Boogie
Natywna alternatywa dla Apple Mail do samodzielnie hostowanej poczty
Dla użytkowników korzystających ze Stalwart lub innego serwera JMAP, Boogie jest natywną alternatywą macOS dla Apple Mail, która faktycznie komunikuje się protokołem Twojego serwera. Apple Mail łączy się przez IMAP i SMTP — nie ma dostępu do kalendarzy JMAP, powiadomień push ani synchronizacji zbiorczej. Boogie łączy się natywnie z Twoim samodzielnie hostowanym serwerem JMAP bez obejść, bez adapterów i bez przekaźników chmurowych.
Czym jest JMAP?
JMAP (JSON Mail Access Protocol) to otwarty standard internetowy zdefiniowany w RFC 8620, który modernizuje pocztę elektroniczną, zastępując IMAP bezstanowym API opartym na JSON. Pojedyncze żądanie JMAP może łączyć wiele operacji — pobieranie poczty, synchronizację wydarzeń kalendarza, push powiadomień w czasie rzeczywistym — przez trwałe połączenie WebSocket, co czyni go szybszym i bardziej wydajnym niż jakakolwiek implementacja IMAP.
JMAP vs IMAP — Kluczowe różnice
- ♦Projekt protokołu: IMAP to stanowy, tekstowy protokół z 1986 roku. JMAP to bezstanowe API JSON ustandaryzowane w 2019 roku (RFC 8620), które łączy wiele operacji pocztowych w jednym żądaniu HTTP.
- ♦Obsługa kalendarza: IMAP obsługuje tylko pocztę; kalendarze wymagają osobnego połączenia CalDAV. JMAP obejmuje synchronizację kalendarza i kontaktów (RFC 8984) w tym samym protokole, całkowicie eliminując potrzebę CalDAV.
- ♦Wydajność: IMAP pobiera metadane i treść wiadomości w osobnych rundach. JMAP pobiera wszystko, co potrzebne, w jednym zbiorczym żądaniu, znacząco redukując opóźnienia przy połączeniach o wysokiej latencji.
- ♦Powiadomienia push: IMAP polega na odpytywaniu lub IDLE — połączeniu utrzymującym, które wyczerpuje baterię na urządzeniach mobilnych. JMAP dostarcza aktualizacje w czasie rzeczywistym przez WebSocket, co oznacza, że nowa poczta pojawia się natychmiast bez odpytywania.
- ♦Wydajność mobilna: IMAP został zaprojektowany przed istnieniem urządzeń mobilnych i jest zasobożerny pod względem przepustowości. Zbiorcze przetwarzanie JSON i synchronizacja delta JMAP przesyłają tylko zmieniony stan, co czyni go znacząco bardziej wydajnym na połączeniach komórkowych.
Porównanie klientów e-mail JMAP — Boogie vs każda alternatywa
Przeanalizowaliśmy każdego dostępnego klienta JMAP e-mail. Boogie to jedyny natywny klient macOS JMAP z wbudowaną obsługą kalendarza. Oto zestawienie:
| Klient | Platforma | Natywny | Kalendarz JMAP | Status |
|---|---|---|---|---|
| Boogie | macOS (iOS next) | ✓ | ✓ | Dostępny |
| Fastmail App | All platforms | Electron | ✓ | Tylko Fastmail (Electron) |
| Swift Mail | macOS | ✓ | ✗ | Tylko Fastmail |
| Mailtemi | iOS / Android | ✓ | ✗ | Kalendarz planowany |
| Parula | Win / Mac / Linux | Electron | WIP | W trakcie rozwoju |
| Twake Mail | iOS / Android / Web | Flutter | ✗ | Tylko e-mail |
| Ltt.rs | Android | ✓ | ✗ | Proof of concept |
| OpenCloud | Web | Web | WIP | Planowany na 2026 |
Aplikacja desktopowa Fastmail to wrapper Electron ich klienta webowego, nie natywna aplikacja. API JMAP Calendar nie jest udostępniane klientom zewnętrznym.
Plan rozwoju — 37 wydań dostarczonych, rozszerzenie na iOS i Android następne
| Faza | Co | Nakład pracy | Status |
|---|---|---|---|
| v1.x | Jedno konto e-mail + kalendarz, dystrybucja, podpisywanie kodu | — | ✓ Gotowe |
| v2.x | Wiele kont, Swift 6, sanityzacja HTML, UX podpisów | — | ✓ Gotowe |
| v3.x | Migracja , inteligentna synchronizacja, i18n, lokalizacja | — | ✓ Gotowe |
| Następny | iOS i iPadOS ( współdzielonego kodu) | — | Następny |
| Planowany | Aplikacja towarzysząca watchOS | — | Planowany |
| W ocenie | Android przez transpiler Skip | — | W ocenie |
Otwarte standardy — JMAP, samodzielnie hostowana poczta, brak uzależnienia od dostawcy
Boogie obsługuje JMAP (JSON Mail Access Protocol) — nowoczesny, oparty na JSON następca IMAP, który wspiera samodzielnie hostowaną i prywatną pocztę e-mail. Żadnych zastrzeżonych protokołów. Żadnego pośrednika w chmurze. Twój serwer pocztowy, Twoje dane, Twój klient.
Stworzony specjalnie dla Stalwart Mail Server, najkompletniejszej dostępnej implementacji JMAP. Stalwart Mail Server obsługuje JMAP dla poczty, kalendarzy, kontaktów i plików — a Boogie to natywny klient desktopowy, który sprawia, że te samodzielnie hostowane możliwości poczty e-mail są dostępne i przyjazne dla użytkownika.
Obsługa protokołu JMAP obejmuje Fastmail, Migadu, Cyrus i inne serwery. Jeśli Twój serwer pocztowy obsługuje JMAP, Boogie może się z nim połączyć.
Twoje dane pozostają na Twoim serwerze
Boogie nie zbiera telemetrii, nie wysyła analityki i nie kieruje ruchu przez żadnego pośrednika chmurowego. Twoja poczta, wydarzenia kalendarza i dane uwierzytelniające są przechowywane lokalnie na Twoim Macu lub na Twoim własnym serwerze JMAP — nigdy na naszym. Aplikacja działa w pełni offline z lokalną bazą danych local, synchronizując się z serwerem tylko wtedy, gdy zdecydujesz się połączyć. Brak wymaganego konta. Brak zbierania danych. Bez wyjątków.
Globalne wsparcie językowe — 41 języków w tym RTL i CJK
Boogie jest dostarczany z 41 językami strony internetowej i 41 językami w aplikacji, w tym RTL arabskim, pismami CJK i Devanagari. Wśród natywnych klientów JMAP na komputery, żadna inna aplikacja nie zbliża się do tej głębokości lokalizacji.
| Klient | Strona | Aplikacja | RTL | Uwagi |
|---|---|---|---|---|
| Boogie | 41 | 41 | ✓ | 6 systemów pisma, ~4,5 mld mówców |
| Twake Mail | 2 | 6* | ✗ | 6 na 90%+; 27 z 48 bez tłumaczenia |
| Ltt.rs | 1 | 13 | ✗ | Tłumaczenia społeczności, tylko Android |
| Fastmail | 1 | 36 | ? | Tylko interfejs webowy, nie samodzielna aplikacja |
| Swift Mail | 1 | 1 | ✗ | Tylko angielski |
| Parula | 1 | 1 | ✗ | Tylko angielski |
| Mailtemi | 1 | 1–2 | ✗ | Tylko angielski |
* Twake Mail wymienia 48 języków przez Weblate, ale tylko 6 jest istotnie przetłumaczonych (90%+). 27 języków nie ma żadnego tłumaczenia. Źródło: hosted.weblate.org/projects/linagora/teammail
Języki aplikacji (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 przetłumaczonych ciągów na język.
Języki strony (41)
Języki strony — 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.
Lokalizacje strony internetowej prowadzą użytkowników w ich ojczystym języku przed pobraniem.
Dlaczego wsparcie językowe ma znaczenie
Najczęściej zadawane pytania
Czym jest JMAP?
JMAP (JSON Mail Access Protocol) to nowoczesny, otwarty standard poczty elektronicznej zdefiniowany w RFC 8620, który zastępuje przestarzały protokół IMAP. Wykorzystuje wydajny JSON przez HTTPS, obsługuje push w czasie rzeczywistym przez WebSocket i obsługuje pocztę, kalendarze oraz kontakty w jednym zunifikowanym API — co czyni go znacznie szybszym i bardziej efektywnym pod względem przepustowości niż IMAP.
Czym jest Stalwart Mail Server?
Stalwart Mail Server to serwer pocztowy o otwartym kodzie źródłowym, hostowany samodzielnie, napisany w Rust, który implementuje najkompletniejszą dostępną specyfikację JMAP, włącznie z obsługą poczty, kalendarzy, kontaktów i przechowywania plików. Jest zaprojektowany dla osób i organizacji dbających o prywatność, które chcą pełnej kontroli nad swoją infrastrukturą pocztową bez polegania na zewnętrznych dostawcach usług chmurowych.
Czy Boogie działa z Fastmail?
Tak. Boogie łączy się z każdym serwerem implementującym standard JMAP, włącznie z Fastmail, Migadu i Cyrus — nie tylko ze Stalwart. Odkrywanie sesji JMAP jest obsługiwane automatycznie, więc wystarczy podać adres URL serwera i dane uwierzytelniające, aby rozpocząć.
Jak Boogie wypada na tle Apple Mail?
Apple Mail używa IMAP i SMTP — protokołów z lat 80. i 90. XX wieku. Boogie komunikuje się wyłącznie przez JMAP, zapewniając powiadomienia push w czasie rzeczywistym przez WebSocket, zintegrowaną synchronizację kalendarza bez CalDAV oraz architekturę zbudowaną dla serwerów hostowanych samodzielnie, a nie dostawców chmurowych. Dla użytkowników korzystających ze Stalwart lub innego serwera JMAP, Boogie oferuje możliwości, których Apple Mail nie jest w stanie zapewnić.
Czy Boogie pojawi się na iOS?
Obsługa iOS i iPadOS to następna planowana platforma po macOS. Ponieważ bazy kodu Boogie jest już napisane jako wieloplatformowy Swift, szacuje się, że port zajmie około 5 do 7 godzin pracy implementacyjnej. Aplikacja towarzysząca watchOS i obsługa Androida przez transpiler Skip są również w planie rozwoju.
Czy Boogie obsługuje pocztę offline?
Tak. Boogie utrzymuje lokalną bazę danych local Twojej poczty i kolejkuje wychodzące zmiany — tworzenie, wysyłanie, usuwanie, przenoszenie — gdy połączenie jest niedostępne. Zmiany są synchronizowane z serwerem JMAP natychmiast po przywróceniu łączności, zapewniając niezawodne działanie offline bez utraty danych.
Jakie są wymagania systemowe Boogie?
Boogie wymaga macOS 14 Sonoma lub nowszego oraz Apple Silicon (M1 lub nowszy). Aplikacja jest podpisana kodem z certyfikatem Apple Development i notaryzowana dla zgodności z Gatekeeper. Nie jest wymagana instalacja żadnego dodatkowego środowiska uruchomieniowego, frameworka ani zależności — aplikacja jest w pełni samodzielna.
Dlaczego Boogie używa JMAP zamiast IMAP?
IMAP został zaprojektowany w 1986 roku dla wolnych, przerywanych połączeń i nagromadził dekady rozszerzeń i obejść. JMAP to bezstanowy, oparty na JSON protokół, który łączy wiele operacji w jednym żądaniu, dostarcza aktualizacje w czasie rzeczywistym przez WebSocket i obsługuje kalendarze obok poczty w jednym API. Dla natywnego klienta macOS budowanego od podstaw, JMAP to właściwy fundament — a nie przestarzały protokół dostosowany do współczesnego użytkowania.