mirror of
https://github.com/bulwarkmail/native.git
synced 2026-11-04 16:06:41 +00:00
93761e67ef67c9d5f8c5a0694378a90ea252a26c
Replying put `email.id` — the server-local JMAP handle, e.g. `gos2aabtux` — into In-Reply-To/References. No recipient can match that against any Message-ID, so the conversation splits in two: the original sits alone in its thread while the reply (and everything answering it) starts a fresh one. Proven against a live Stalwart account: the reply carried `In-Reply-To: gos2aabtux` and landed in thread `btuz` while its parent stayed in `btux` — Stalwart hashes the referenced msg-ids at ingest and found no match. Fetch `messageId`/`inReplyTo`/`references` with the full email and build the headers from them (bracketed, ancestors first, parent closing the chain). Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01FTRyrFCR2N9qkpKK37GgWb
feat: update Android build configuration to use arm64-v8a architecture and improve caching mechanism
Bulwark Mobile
Beta - work in progress. Many features are unfinished or rough. Expect bugs, missing functionality, and breaking changes between releases. Do not rely on this for primary email yet.
React Native (Expo SDK 54) client for Bulwark Webmail - a JMAP-based mail, calendar, and contacts app.
What works today
- Sign in to any JMAP server (e.g. Stalwart)
- Multiple accounts
- Email list, threads, compose
- Calendar (basic)
- Contacts (basic)
- Push notifications via FCM relay
- In-app sideload updates from GitHub Releases
What's missing or rough
- iOS build is untested
- Filters & rules, S/MIME, plugins, themes, file storage - UI stubs only
- Calendar editing is partial; contacts editing is basic
- No Play Store distribution yet (sideload APK from Releases)
Run locally
npm install
npx expo start
Then press a for Android, i for iOS, or scan the QR with Expo Go.
For a release APK build see .github/workflows/release-android.yml.
License
AGPL-3.0-only. See LICENSE.
Languages
TypeScript
96%
Kotlin
2.1%
JavaScript
0.9%
Swift
0.4%
HTML
0.3%
Other
0.2%