Go to file
2021-03-03 17:14:56 -04:00
.github/ISSUE_TEMPLATE Improve issue templates 2020-06-27 16:55:54 -04:00
docs PushRuleSettingsPopup: add custom sound field 2021-03-03 17:14:56 -04:00
packaging AppImage building: use Qt 5.12.9 instead of 5.12.7 2021-03-03 17:14:56 -04:00
src PushRuleSettingsPopup: add custom sound field 2021-03-03 17:14:56 -04:00
submodules Get SortProxyFilterModel stuff working? 2020-02-12 05:56:18 -04:00
.flake8 Add flake8, mypy and isort setup 2021-03-03 17:14:55 -04:00
.gitignore Update flatpak script generator 2021-03-03 17:12:08 -04:00
.gitmodules Change name and bump version 2020-03-10 10:41:27 -04:00
.isort.cfg Add flake8, mypy and isort setup 2021-03-03 17:14:55 -04:00
.mypy.ini Add make test command to mirage.pro 2021-03-03 17:14:55 -04:00
autoreload.py autoreload: improve code & which files are watched 2021-03-03 17:14:55 -04:00
COPYING Initial commit 2019-03-21 23:28:14 -04:00
COPYING.LESSER Start rewriting backend with pyotherside+asyncio 2019-06-27 02:31:03 -04:00
mirage.pro Add support for notification sound effects 2021-03-03 17:14:56 -04:00
README.md Update README to point to new documentation files 2021-03-03 17:14:55 -04:00
requirements-dev.txt Replace pprintpp usage by devtools.debug 2021-03-03 17:14:55 -04:00
requirements.txt requirements.txt: update Pillow and aiofiles 2021-03-03 17:14:55 -04:00

Mirage

Latest release
Built with matrix-nio
#mirage-client:matrix.org

Features
Installation
Configuration
Theming
Contributing
Screenshots

A fancy, customizable, keyboard-operable Matrix chat
client for encrypted and decentralized communication.
Written in Qt/QML and Python, currently in alpha.

Chat screenshot

Currently Implemented Features

Interface

  • Fluid, responsive interface that adapts to any window size
  • Toggleable compact mode
  • Customizable keyboard shortcuts for everything, including
    switching rooms, navigating messages, sending/opening files...
  • Versatile theming system, properties can refer to each other and have
    any valid ECMAScript 7 expression as values
    • Comes by default with dark and transparent themes

Accounts

  • Multiple accounts in one client
  • Built-in public homeservers list
  • SSO and password authentication
  • Set your display name and profile picture
  • Import/export E2E key files
  • Inspect, rename, manually verify and sign out one or multiple sessions
  • Sessions for accounts within the same client automatically verify each others
  • Set your account's presence to online, unavailable, invisible or offline
  • Set custom status messages
  • Automatically set your status to unavailable after a period of inactivity

Rooms

  • Create, join, leave and forget rooms

  • Send, accept and refuse invites

  • Edit the room's name, topic, invite requirement, guest access and enable E2E

  • Kick, ban and set the power level of users

  • Unread message and highlight counters

  • Sending read receipts to mark rooms as read

  • Inspect and manually verify other users's E2E sessions

  • See other users's presence, status message and last seen time

  • Typing notifications

Messages

  • Send and receive E2E encrypted messages

  • Send and receive emote messages (e.g. /me reads attentively)

  • Receive notice (bot) messages

  • Send markdown formatted messages

    • Additional syntax for coloring text, e.g. <red>(Some text...) -
      SVG/CSS color names,
      #RGB, #RRGGBB and #AARRGGBB hex codes can be used
  • Send and receive normal or E2E encrypted files

  • Client-side Matrix & HTTP URL image previews, including animated GIF

  • Upload images by pasting

  • Full-size image viewer

  • User ID, display names, room ID and room aliases mentions

  • Autocompletion for usernames and user ID

  • Individual and mass message removal

  • Sending rich replies

Documentation

Screenshots

Sign-in
Account settings
Room creation
Chat
Main pane in small window
Chat in small window
Room pane in small window