Parula
Active betaLocal-first suite (mail, chat, video calls, calendar, contacts, files) in TypeScript on Electron and Capacitor, with Matrix chat among its protocols.
desktop, mobile · licence EUPL-1.2
- Android
- iOS
- Windows
- macOS
- Linux
- Last commit
- today 4 Nov 2026
- Commits, last year
- 1.8k 660 in 90 days
- Authors, 90 days
- 4 4 in a year, 13 ever
- Bus factor
- 1 authors making half of last year's commits
- Last release
- v0.9.41 24 Oct 2026 · 35 tags in a year
- Lines of code
- 205k TypeScript
AI
Nothing found on any of the three axes. What we look for
PolicyNo policy found (fits the chosen stance)(against the chosen stance) Dev useNone found (fits the chosen stance)(against the chosen stance) In productNone found (fits the chosen stance)(against the chosen stance)- AI in development: no agent files and no AI-attributed commits (1846 non-bot commits in the last 365 days) at 5fb283b67f
- Collector: 0 of 1.8k commits in the last year credit an AI tool (0.0 %). 0 agent files, 0 AI workflows. A lower bound: most AI use leaves no trace.
Activity
Languages
Apps
Features
| Feature | Value | How we know | Evidence |
|---|---|---|---|
| SDK | matrix-js-sdk | code | github.com/parula-app/parula/blob/5fb283b67f8a07 |
| Encryption (E2EE) | Yes: Yes pattern match [matrix-sdk-crypto] | code | github.com/parula-app/parula/blob/5fb283b67f8a07 |
| Cross-signing | Yes: Yes pattern match [CrossSigning] | code | github.com/parula-app/parula/blob/5fb283b67f8a07 |
| Key backup | Yes: Yes pattern match [Key(backup] | code | github.com/parula-app/parula/blob/5fb283b67f8a07 |
| Sliding sync | Not found: Not found | — | — |
| Next-gen auth (OIDC) | Yes: Yes pattern match [OAuth2Server] | code | github.com/parula-app/parula/blob/5fb283b67f8a07 |
| Multiple accounts | Not found: Not found | — | — |
| Threads | Not found: Not found | — | — |
| Spaces | Not found: Not found | — | — |
| 1:1 calls | Yes: Yes pattern match [RTCPeerConnection] | code | github.com/parula-app/parula/blob/5fb283b67f8a07 |
| Group calls | Yes: Yes pattern match [livekit] | code | github.com/parula-app/parula/blob/5fb283b67f8a07 |
| Reactions | Yes: Yes pattern match [m.reaction] | code | github.com/parula-app/parula/blob/5fb283b67f8a07 |
| Edits | Yes: Yes pattern match [m.replace] | code | github.com/parula-app/parula/blob/5fb283b67f8a07 |
| Replies | Yes: Yes pattern match [inReplyTo] | code | github.com/parula-app/parula/blob/5fb283b67f8a07 |
| Polls | Not found: Not found | — | — |
| Custom emoji | Not found: Not found | — | — |
| Stickers | Yes: Yes pattern match [m.sticker] | code | github.com/parula-app/parula/blob/5fb283b67f8a07 |
| Location | Yes: Yes pattern match [geo:] | code | github.com/parula-app/parula/blob/5fb283b67f8a07 |
| Voice messages | Yes: Yes pattern match [VoiceMessage] | code | github.com/parula-app/parula/blob/5fb283b67f8a07 |
| Rich text editor | Not found: Not found | — | — |
| URL previews | Yes: Yes pattern match [link preview] | code | github.com/parula-app/parula/blob/5fb283b67f8a07 |
| Push notifications | Not found: Not found | — | — |
| Private read receipts | Yes: Yes pattern match [readPrivate] | code | github.com/parula-app/parula/blob/5fb283b67f8a07 |
| Presence | Yes: Yes pattern match [presence] | code | github.com/parula-app/parula/blob/5fb283b67f8a07 |
| Room upgrades | Yes: Yes pattern match [tombstone] | code | github.com/parula-app/parula/blob/5fb283b67f8a07 |
| Moderation tools | Yes: Yes pattern match [/report] | code | github.com/parula-app/parula/blob/5fb283b67f8a07 |
| Accessibility | yes pattern match [a11y] | code | github.com/parula-app/parula/blob/5fb283b67f8a07 |
| Translations | Not found: Not found | — | — |
| Telemetry | Not found: Not found @sentry/svelte dependency; whether it is opt-in was not checked | code | github.com/parula-app/parula/blob/5fb283b67f8a07 |
| Default homeserver | Not found: Not found | — | — |
| Fork-friendliness | Not found: Not found EUPL-1.2 only, unless a subdirectory or file says otherwise (LICENSE at https://github.com/parula-app/parula/blob/76dbee21056a4b714ebad12728e19591757d48e1/LICENSE) | — | — |
Health signals
- Bus factor (last year)
- 1
- Issue first response
- not measured (the forge did not give it)
- Release cadence
- 35 tags in the last year, latest v0.9.41 (24 Oct 2026)
- CI
.github/workflows/auto-translate.yml.github/workflows/installer-android-mustang.yml.github/workflows/installer-android-parula.yml- Tests
- test files found
- Security policy
- none found
- Licence
- EUPL-1.2
- Funding
- none listed
- Telemetry SDKs in manifests
- Sentry (app/package.json) · Sentry (desktop/package.json)
Repositories
| Repository | Role | Activity | Last commit | Commits 1y | Authors 90d | Measured at |
|---|---|---|---|---|---|---|
| github.com/parula-app/parula | main | Active | 4 Nov 2026 | 1.8k | 4 | 5fb283b67 |
Notes
Not a Matrix-first client; Matrix is one item in its feature list (README line 181). Licence: EUPL 1.2 only, from the LICENSE file's prose header (checked 2026-11-05).
Researched by an AI agent (Claude) on 5 Nov 2026, not checked by a person; metrics collected on 5 Nov 2026. Source file: data/projects/client/parula.yaml. Spotted a mistake? Open an issue with a link.