selfhost.directory

The index of self-hostable projects — ranked, categorized and served with live updates.
Own your data and stop giving it to big tech.

Twake Chat logo

Self-host Twake Chat

v2.26.0

Matrix-based chat client with end-to-end encryption

ReleaseOpen SourceAGPL-3.0
Updated6 hours ago
LanguageDart
Setup difficultyModerate
MobileNative app
ThemeDark mode
Stars
172
Port
6868 (web client HTTP)
Docker
linagora/twake-web
Install with Docker

What is Twake Chat?

Twake Chat is an open-source chat application built on the Matrix protocol for secure, decentralized communication. Developed by Linagora, it provides native applications for Android, iOS, Linux, and a web client that can be self-hosted via Docker. The app supports end-to-end encryption with emoji verification and cross-signing, along with audio recordings, location sharing, push alerts, spaces, custom themes, and dark mode. It simplifies onboarding by hiding Matrix ID complexity behind QR codes. The web version runs as an nginx-served static site with a configurable JSON file, connecting to any Matrix homeserver. It originated as a fork of FluffyChat and maintains compatibility with other Matrix clients like Element, Nheko, and NeoChat.

Should you self-host Twake Chat?

Twake Chat scores 46/100 on selfhost.directory (how scoring works) and ranks #64 of 110 in Chat. It has 172 GitHub stars.

It shipped 10 stable releases in the past year. The latest, v2.26.0, came out on 27 October 2026. New versions land roughly every 2 weeks.

Setup is moderate: expect some configuration beyond a single command. An official Docker image is available. It is AGPL-3.0-licensed and written mostly in Dart.

Its closest alternative on selfhost.directory is Zulip (82/100, 26 125 stars). It scores higher overall, so compare the two before you pick. See Twake Chat vs Zulip side by side.

Features

  • Cross-platform
  • Custom emotes and stickers
  • End-to-end encryption
  • File and image sharing
  • Group chats
  • Group moderation
  • Location Sharing
  • Matrix compatibility
  • Public channels
  • Push Notifications
  • QR code login
  • Spaces
  • Voice messages

Twake Chat README

How to install Twake Chat

Install Twake Chat with Docker

Environment variables
TWAKECHAT_LISTEN_PORT

docker run -d -p : -e TWAKECHAT_LISTEN_PORT= --name -v :/usr/share/nginx/html/web/config.json linagora/twake-web:

Requires a config.json file mounted at /usr/share/nginx/html/web/config.json

How to configure Twake Chat

  • app_grid_dashboard_availabletrueWhether app grid dashboard is available

    Whether app grid dashboard is available

    values: true/false

  • application_nameTwake ChatDisplay name of the application

    Display name of the application

  • application_welcome_messageWelcome to Twake Chat!Welcome message shown to users

    Welcome message shown to users

  • cozy_external_bridge_version0.8.0Cozy external bridge version

    Cozy external bridge version

  • default_homeservermatrix.linagora.comDefault Matrix homeserver for registration

    Default Matrix homeserver for registration

  • default_max_upload_avatar_size_in_bytes1000000Maximum avatar upload size in bytes

    Maximum avatar upload size in bytes

  • dev_modefalseEnable development mode

    Enable development mode

    values: true/false

  • enable_logsfalseEnable logging

    Enable logging

    values: true/false

  • hide_redacted_eventsfalseHide redacted events

    Hide redacted events

    values: true/false

  • hide_unknown_eventsfalseHide unknown Matrix event types

    Hide unknown Matrix event types

    values: true/false

  • homeserverhttps://example.com/Matrix homeserver URL

    Matrix homeserver URL

  • issue_idIssue tracker identifier

    Issue tracker identifier

  • platformplatformPlatform identifier

    Platform identifier

  • privacy_urlhttps://twake.app/en/privacy/URL to privacy policy

    URL to privacy policy

  • qr_code_download_urlhttps://sign-up.twake.app/download/chatURL for QR code download link

    URL for QR code download link

  • registration_urlhttps://example.com/URL for user registration

    URL for user registration

  • render_htmltrueWhether to render HTML in messages

    Whether to render HTML in messages

    values: true/false

  • sentry_dsnSentry DSN for error tracking

    Sentry DSN for error tracking

  • sentry_environmentSentry environment name

    Sentry environment name

  • support_emailsupport@twake.appSupport email address

    Support email address

  • support_urlhttps://twake.app/supportSupport page URL

    Support page URL

  • TWAKECHAT_LISTEN_PORTPort the nginx server listens on inside the container

    Port the nginx server listens on inside the container

  • twake_workplace_homeserverhttps://example.com/Twake Workplace homeserver URL

    Twake Workplace homeserver URL

  • vapid_public_keyVAPID public key for web push

    VAPID public key for web push

  • web_push_enabledfalseEnable web push notifications

    Enable web push notifications

    values: true/false

Twake Chat releases & version history

More in Decentralized

Rate this project

Click to rate — no account needed.

0 comments

Posting as guest
Loading comments…