mirror of
https://github.com/bulwarkmail/native.git
synced 2026-10-31 08:06:36 +00:00
2427bdbd79f2ce3d466420b62cc8c190aa926bef
Stalwart exposes task lists (supported-calendar-component-set = VTODO) as sibling CalDAV collections, so Calendar/get returns them mixed in with event calendars and the drawer showed confusing duplicate entries (Todoist Inbox, per-project task lists colliding with same-named event calendars). JMAP Calendar/get doesn't surface the CalDAV component set, so the store now infers the collection kind from its contents: a calendar whose objects are all Tasks (>=1 task, no events) is flagged as a task list. Flagged calendars are excluded from the Calendars drawer, the event-creation calendar picker, and the ICS import target picker, and sorted first in the Tasks sheet so new tasks default into a dedicated task list. Empty calendars and mixed event+task calendars are untouched.
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
95.5%
Kotlin
2.7%
JavaScript
0.9%
HTML
0.5%
Sieve
0.2%
Other
0.1%