AI marks

Element Web / Desktop

Active stable

Element's web client and its Electron desktop app, built on matrix-js-sdk; both now live in one pnpm monorepo.

web, desktop · licence AGPL-3.0-only OR GPL-3.0-only OR LicenseRef-Element-Commercial

Last commit
today 4 Nov 2026
Commits, last year
2.1k 493 in 90 days
Authors, 90 days
41 76 in a year, 543 ever
Bus factor
3 authors making half of last year's commits
Last release
v1.12.33 27 Oct 2026 · 50 tags in a year
Lines of code
374k TypeScript

AI

AI policy

What the project says about AI-made contributions

Restricted (fits the chosen stance)(against the chosen stance)
“Contributions are judged on their content, not on how they were produced. AI-assisted contributions are accepted; unreviewed AI output is not. [...] If your PR was made with the help of AI, you must convey that this is the case using the PR template.”

Source: github.com/element-hq/element-meta/blob/ea731f1fc96190b2214538c76d95ee34e00400cd/CONTRIBUTING.md

AI in development

Whether the developers use AI tools on the repository

Occasional (fits the chosen stance)(against the chosen stance)

Collector: 26 of 2.2k commits in the last year credit an AI tool (1.2 %): claude 22, copilot 4. 1 agent file, 0 AI workflows. A lower bound: most AI use leaves no trace.

  • AGENTS.md at the repo root (instructions for AI coding agents).
  • 25 of about 2,100 non-bot commits in the last 365 days (about 1.2 %) carry an AI co-author trailer (Claude, Copilot Autofix).
  • The PR template has an "AI assistance" checkbox.
  • AGENTS.md (agents.md, element-web)
  • d2a564228 2026-11-04 claude
  • 63663ec9c 2026-11-03 claude
  • ef0d0d46a 2026-10-29 claude
  • 4d736a1f5 2026-10-29 claude
  • cc6c1b32a 2026-10-28 claude

AI in the product

Whether the product itself has AI features

None found (fits the chosen stance)(against the chosen stance)

Activity

NovDecJanFebMarAprMayJunJulAugSeptOct MonWedFri
2116 commits on 269 days in the last year · outlined: the day of the last collection
Nov: 25Nov: 32Nov: 33Nov: 59Dec: 47Dec: 48Dec: 19Dec: 2Jan: 44Jan: 37Jan: 66Jan: 52Jan: 34Feb: 56Feb: 58Feb: 65Feb: 46Mar: 34Mar: 46Mar: 53Mar: 52Apr: 36Apr: 58Apr: 42Apr: 31Apr: 31May: 33May: 33May: 44May: 49Jun: 69Jun: 26Jun: 23Jun: 31Jul: 59Jul: 47Jul: 33Jul: 26Jul: 33Aug: 44Aug: 43Aug: 36Aug: 24Sept: 40Sept: 46Sept: 43Sept: 36Oct: 47Oct: 44Oct: 40Oct: 12Oct: 38
Commits per week, last 52 weeks · peak 69 (Jun)
Commits per week, last 52 weeks
Nov25
Nov32
Nov33
Nov59
Dec47
Dec48
Dec19
Dec2
Jan44
Jan37
Jan66
Jan52
Jan34
Feb56
Feb58
Feb65
Feb46
Mar34
Mar46
Mar53
Mar52
Apr36
Apr58
Apr42
Apr31
Apr31
May33
May33
May44
May49
Jun69
Jun26
Jun23
Jun31
Jul59
Jul47
Jul33
Jul26
Jul33
Aug44
Aug43
Aug36
Aug24
Sept40
Sept46
Sept43
Sept36
Oct47
Oct44
Oct40
Oct12
Oct38
2023 Q1: 542023 Q2: 362023 Q3: 422023 Q4: 362024 Q1: 272024 Q2: 282024 Q3: 272024 Q4: 202025 Q1: 252025 Q2: 302025 Q3: 332025 Q4: 252026 Q1: 342026 Q2: 312026 Q3: 382026 Q4: 26
Authors per quarter · peak 54 (2023 Q1)
Authors per quarter
2023 Q154
2023 Q236
2023 Q342
2023 Q436
2024 Q127
2024 Q228
2024 Q327
2024 Q420
2025 Q125
2025 Q230
2025 Q333
2025 Q425
2026 Q134
2026 Q231
2026 Q338
2026 Q426

Languages

  • TypeScript97.4 %
  • CSS1.5 %
  • HTML0.4 %
  • TypeScript Typings0.2 %
  • JavaScript0.2 %
by lines of code (scc)

Apps

OSBuilt withStatusMinimum OSWhere to get it
  • Web
other stable not stated web, docker
  • Windows
electron stable not stated element.io
  • macOS
electron stable not stated element.io
  • Linux
electron stable not stated flathub, apt

Features

FeatureValueHow we knowEvidence
SDK matrix-js-sdk (develop branch, Rust crypto) code github.com/element-hq/element-web/blob/a3f5be54f
Encryption (E2EE) Yes: Yes code github.com/element-hq/element-web/blob/a3f5be54f
Cross-signing Yes: Yes code github.com/element-hq/element-web/blob/a3f5be54f
Key backup Yes: Yes code github.com/element-hq/element-web/blob/a3f5be54f
Sliding sync Partial: Partial
Native MSC4186 sliding sync behind the labs flag feature_sliding_sync (default off).
code github.com/element-hq/element-web/blob/a3f5be54f
Next-gen auth (OIDC) Yes: Yes
Next-gen auth (OAuth 2.0 / MAS); docs/oauth.md. matrix.org: supported.
code github.com/element-hq/element-web/blob/a3f5be54f
Multiple accounts No: No claimed github.com/matrix-org/matrix.org/blob/041599b0dc
Threads Yes: Yes code github.com/element-hq/element-web/blob/a3f5be54f
Spaces Yes: Yes code github.com/element-hq/element-web/blob/a3f5be54f
1:1 calls Yes: Yes
Legacy m.call; Jitsi widgets also supported (matrix.org).
code github.com/element-hq/element-web/blob/a3f5be54f
Group calls Yes: Yes
Element Call embedded (@element-hq/element-call-embedded 0.28.0).
code github.com/element-hq/element-web/blob/a3f5be54f
Reactions Yes: Yes code github.com/element-hq/element-web/blob/a3f5be54f
Edits Yes: Yes code github.com/element-hq/element-web/blob/a3f5be54f
Replies Yes: Yes code github.com/element-hq/element-web/blob/a3f5be54f
Polls Yes: Yes code github.com/element-hq/element-web/blob/a3f5be54f
Custom emoji Partial: Partial
matrix.org: image_packs partial; no im.ponies code found in apps/web/src.
claimed github.com/matrix-org/matrix.org/blob/041599b0dc
Stickers Yes: Yes
Via the integration manager sticker picker.
code github.com/element-hq/element-web/blob/a3f5be54f
Location Yes: Yes
Static and live location (beacons).
code github.com/element-hq/element-web/blob/a3f5be54f
Voice messages Yes: Yes code github.com/element-hq/element-web/blob/a3f5be54f
Rich text editor Yes: Yes
Markdown composer plus the optional WYSIWYG composer.
code github.com/element-hq/element-web/blob/a3f5be54f
URL previews Yes: Yes code github.com/element-hq/element-web/blob/a3f5be54f
Push notifications Yes: Yes
Desktop/browser notifications and pusher management.
code github.com/element-hq/element-web/blob/a3f5be54f
Private read receipts Yes: Yes code github.com/element-hq/element-web/blob/a3f5be54f
Presence Yes: Yes code github.com/element-hq/element-web/blob/a3f5be54f
Room upgrades Yes: Yes code github.com/element-hq/element-web/blob/a3f5be54f
Moderation tools Yes: Yes code github.com/element-hq/element-web/blob/a3f5be54f
Accessibility yes
Playwright tests locate elements by role and accessible name; aria attributes in over 300 source files; a community room "Element accessibility" exists.
code github.com/element-hq/element-web/blob/a3f5be54f
Translations yes
Localazy; 41 locale files in apps/web/src/i18n/strings.
code github.com/element-hq/element-web/blob/a3f5be54f
Telemetry opt-in
PostHog analytics only after the user opts in (analyticsOptIn); Sentry (@sentry/browser, @sentry/electron) for rageshake/crash reports when configured.
code github.com/element-hq/element-web/blob/a3f5be54f
Default homeserver yes
matrix.org (default_server_config), identity server vector.im, integrations scalar.vector.im.
code github.com/element-hq/element-web/blob/a3f5be54f
Fork-friendliness partial
Large pnpm + nx monorepo (web, desktop, shared components, modules); triple licence AGPL-3.0 / GPL-3.0 / commercial with a CLA for contributions. Many forks exist (SchildiChat).
code github.com/element-hq/element-web/blob/a3f5be54f

Health signals

Bus factor (last year)
3
Issue first response
not measured (the forge did not give it)
Release cadence
50 tags in the last year, latest v1.12.33 (27 Oct 2026)
CI
.github/workflows/backport.yml .github/workflows/build-and-test-netlify.yaml .github/workflows/build-and-test.yaml .github/workflows/backport.yml .github/workflows/build_and_deploy.yaml .github/workflows/build_and_test.yaml
Tests
test files found
Security policy
none found
Licence
AGPL-3.0-only OR GPL-3.0-only OR LicenseRef-Element-Commercial
Funding
none listed
Telemetry SDKs in manifests
Sentry (apps/desktop/package.json) · Sentry (apps/web/package.json) · PostHog (apps/web/package.json) · Sentry (package.json)

Repositories

RepositoryRoleActivityLast commitCommits 1yAuthors 90dMeasured at
github.com/element-hq/element-web main Active 4 Nov 2026 2.1k 41 a3f5be54f
github.com/element-hq/element-desktop desktop Dormant 25 Mar 2026 61 0 264c591b9

Notes

matrix.org maturity: Stable. Element's organisation-wide AI policy (element-meta CONTRIBUTING.md, merged 2026-11-02 in https://github.com/element-hq/element-meta/pull/3393) applies to all element-hq repositories and to matrix-org repositories where Element is the core contributor. The repo's own CONTRIBUTING.md adds: "The PR description must be written by a human and mustn't be generated by AI tools"; its PR template has an "I used AI tools" checkbox. Element Desktop moved into the element-web monorepo (apps/desktop); the separate element-desktop repo's last commit is 2026-03-25.

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/element-web.yaml. Spotted a mistake? Open an issue with a link.