A (hopefully) good cross-platform client for matrix servers.
Currently, this is just a personal project with some uni friends, but we are always open for feature requests and bug reports.
- Rust
- Bun (Node.js probably works too, but we use bun for development)
- Android studio with android SDK 35. (if you plan on building for android)
- Xcode (if you plan on building for macOS/iOS)
If you are on NixOS, you can use the provided shell.nix to get a development environment with all the necessary dependencies.
Run nix-shell shell.nix to enter the development environment.
Alternatively, you can use the provided direnv to automatically enable the environment when you cd into the project root.
Ensure this is inside your configuration.nix:
{
# Allows the direnv manager to always be available
programs.direnv = {
enable = true;
nix-direnv.enable = true;
# This ensures the shell integration is loaded for bash/zsh
enableBashIntegration = true;
enableZshIntegration = true;
};
}Then restart your terminal, and cd into the project directory and enable direnv by using the command it displays and the environment should work!
To install dependencies, run:
bun installTo build for desktop, run:
bun run tauri buildTo run the app via an Android emulator, first run the following to start the emulator:
run-test-emulatorThen, to run the application in the emulator:
bun run tauri android devWe recommend using an Android device if your hardware acceleration is broken for the Android SDK on Linux,
To do so, you need to follow the following steps on your device:
-
Go to Settings > About Phone.
-
Tap Build Number 7 times until it says "You are now a developer."
-
Go to Settings > System > Developer Options.
-
Enable USB Debugging.
on NixOS, you need to add this to your config:
{
programs.adb.enable = true;
users.users.YOURUSERNAMEHERE.extraGroups = [ "adbusers" ];
}On non-NixOS systems, you need to ensure your user is in the adbusers group, and you have the correct udev rules implemented.
On Windows, you should not have any issues (hopefully), but it has not been tested yet.
To run in a dev environment, run the command:
bun run tauri android dev --host 127.0.0.1To build for android, run:
bun run tauri android buildAll software used can be found inside THIRD_PARTY_LICENSES.md, or if the URL is broken for some reason;
At static/THIRD_PARTY_LICENSES.md inside this repository.