Mirage

FeaturesInstallationConfiguration & ThemingScreenshots

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

Accounts

Rooms

Messages

Installation

See INSTALL.md

Configuration & Theming

The config file can be found at $XDG_CONFIG_HOME/mirage/settings.json, or ~/.config/mirage/settings.json.

For Flatpak users, this will be ~/.var/app/io.github.mirukana.mirage/config/mirage instead.

The config folder where accounts.json and settings.json is located can be overriden by setting the MIRAGE_CONFIG_DIR environment variable.

The user data folder where themes, encryption data and interface states are saved can be overriden with MIRAGE_DATA_DIR.

The cache folder where downloaded files and thumbnails are saved can be overriden with MIRAGE_CACHE_DIR.

The theme setting can be:

A default theme from this repository can be copied to use as a base and edit, for example:

    cp mirage/src/themes/Midnight.qpl \
       "${XDG_DATA_HOME:-$HOME/.local/share}/mirage/themes/MyTheme.qpl"

Or for Flatpak users:

    cp mirage/src/themes/Midnight.qpl \
       ~/.var/app/io.github.mirukana.mirage/data/mirage/themes/MyTheme.qpl

The config setting theme would need to be set to MyTheme.qpl in this case.

Theme files are nested-by-indentations sections of properties and values.
Properties are declared as <type> <name>: <value>.
Values can be any JavaScript (ECMAScript 7) expressions.

Most of the properties are of type color. Their values, if not just refering to another property, can be expressed with a:

If you just want to change the background picture, or use a gradient/simple color instead, search for the ui: section in your text editor.

With Alt+Shift+R by default, the config and theme can be reloaded without restarting the app.

Warnings:

GUI settings will also be implemented in the future.

Screenshots

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