Desktop client for the Matrix protocol.
Go to file
Konstantinos Sideris 7e03ca4359 Reset the sender's name when paginating backwards
The first message of the timeline would have an avatar and
the rest of the messages would use the previous to be configured
(whether or not should have an avatar).

fixes #63
2017-11-03 14:25:01 +02:00
.ci Remove test from formatting 2017-10-01 18:20:53 +03:00
.github Update issue template 2017-11-02 22:02:31 +02:00
dist Add missing dependencies to gentoo ebuild 2017-09-26 22:53:32 +03:00
include Improvements to the quick switcher (#109) 2017-11-03 08:54:17 +02:00
libs Initial support for state cache 2017-07-30 14:30:55 +03:00
resources Add scroll-down button 2017-10-27 22:20:33 +03:00
scripts Remove custom badge counter from mac and windows (#42) 2017-07-09 12:49:17 +03:00
src Reset the sender's name when paginating backwards 2017-11-03 14:25:01 +02:00
tests Linting 2017-09-24 17:39:06 +03:00
.clang-format Remove extra inline keywords 2017-10-22 19:03:55 +03:00
.gitignore Remove nick colors 2017-08-26 11:33:26 +03:00
.gitmodules Initial support for state cache 2017-07-30 14:30:55 +03:00
.travis.yml Add clang-format to ci 2017-09-24 17:08:11 +03:00
CMakeLists.txt Add dummy settings menu 2017-11-02 00:41:13 +02:00
LICENSE Initial commit 2017-04-06 02:06:42 +03:00
Makefile Remove ui flickering when adding new timeline events 2017-10-21 18:53:15 +03:00
README.md Remove snap 2017-10-21 12:59:38 +03:00
appveyor.yml Build lmdb on appveyor 2017-10-01 22:38:46 +03:00
default.nix Add basic nix expressions (#47) 2017-08-05 18:40:00 +03:00
package.nix Nix: ignore earlier build results 2017-08-05 18:56:41 +03:00

README.md

nheko

Build Status Build status Chat on Matrix License: GPL v3 AUR: nheko-git

The motivation behind the project is to provide a native desktop app for Matrix that feels more like a mainstream chat app (Riot, Telegram etc) and less like an IRC client.

Features

Most of the features you would expect from a chat application are missing right now but we are getting close to a more feature complete client. Specifically there is support for:

  • Joining & leaving rooms
  • Sending & receiving images and emoji.
  • Receiving typing notifications.

Installation

Arch Linux

pacaur -S nheko-git

Fedora

sudo dnf copr enable xvitaly/matrix
sudo dnf install nheko

Gentoo Linux

sudo layman -a matrix
sudo emerge -a nheko

Windows

You can find an installer here.

Build Requirements

  • Qt5 (5.7 or greater). Qt 5.7 adds support for color font rendering with Freetype, which is essential to properly support emoji.
  • CMake 3.1 or greater.
  • LMDB.
  • A compiler that supports C++11.
    • Clang 3.3 (or greater).
    • GCC 4.8 (or greater).
Arch Linux
sudo pacman -S qt5-base qt5-tools cmake gcc fontconfig lmdb
Gentoo Linux
sudo emerge -a ">=dev-qt/qtgui-5.7.1" media-libs/fontconfig
Ubuntu (e.g 14.04)
sudo add-apt-repository ppa:beineri/opt-qt58-trusty
sudo add-apt-repository ppa:george-edison55/cmake-3.x
sudo apt-get update
sudo apt-get install qt58base qt58tools cmake liblmdb-dev
OSX (Xcode 8 or later)
brew update
brew install qt5 lmdb

N.B. you will need to pass -DCMAKE_PREFIX_PATH=/usr/local/opt/qt5 to cmake to point it at your qt5 install (tweaking the path as needed)

Building

Clone the repo with its submodules

git clone --recursive https://github.com/mujx/nheko

or

git clone https://github.com/mujx/nheko
cd nheko
git submodule update --init

and then use the following

cmake -H. -Bbuild -DCMAKE_BUILD_TYPE=Release # Default is Debug.
make -C build

The nheko binary will be located in the build directory.

MacOS

You can create an app bundle with make app. The output will be located at dist/MacOS/Nheko.app which can be copied to /Applications/Nheko.app.

You can also create a disk image with make dmg. The output will be located at dist/MacOS/Nheko.dmg

Nix

Download the repo as mentioned above and run

nix-build

in the project folder. This will output a binary to result/bin/nheko.

You can also install nheko by running nix-env -f . -i

Contributing

Any kind of contribution to the project is greatly appreciated. You are also encouraged to open feature request issues.

Screens

Here is a screen shot to get a feel for the UI, but things will probably change.

nheko

Third party