A lightweight but modern Mastodon client for the desktop, written in Go & QML.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Christian Muehlhaeuser da437b7053
Enable Go modules
11 months ago
.github Add GitHub metadata 1 year ago
accounts Add toot visibility setting, fixes #63 1 year ago
assets Create telephant.desktop 2 years ago
darwin/Contents Add MacOS Bundle Assets (#38) 1 year ago
qml Change QtQuick.Dialogs to 1.3 11 months ago
.gitignore Add MacOS Bundle Assets (#38) 1 year ago
.travis.yml Only download the deps, don't try to build them outside the Docker env on Travis 2 years ago
LICENSE Initial commit 4 years ago
README.md Change tagline in README 1 year ago
account.go Add toot visibility setting, fixes #63 1 year ago
attachmentmodel.go Update to be compatible with latest Qt bindings 2 years ago
bridges.go Add font and emoji font settings 11 months ago
config.go Add font and emoji font settings 11 months ago
events.go Add font and emoji font settings 11 months ago
go.mod Enable Go modules 11 months ago
go.sum Enable Go modules 11 months ago
messagemodel.go Add toot visibility setting, fixes #63 1 year ago
messagestore.go Add toot visibility setting, fixes #63 1 year ago
notifications.go Use logger and add debug flag for extra output 1 year ago
notifications_stub.go Fixed build tags for notifications stub 2 years ago
panemodel.go Add Default visibility setting for panes 1 year ago
telephant.go Add font and emoji font settings 11 months ago

README.md

Telephant

Latest Release GoDoc Build Status Go ReportCard

A lightweight but modern Mastodon client for the desktop, written in Go & QML.

telephant logo

Features

  • Live feed via Mastodon’s Streaming API
  • Multi pane support
  • Linux/macOS/Windows (Android & iOS should be working, but aren’t tested yet)
  • Media previews
  • Shortened URL resolving
  • System notifications
  • Direct messages
  • Multiple accounts (work-in-progress)
  • Support for more networks

Installation

Packages & Binaries

Ubuntu

Note that Telephant requires Qt >=5.12 installed. This means it currently doesn’t support Ubuntu <19.04 or Linux Mint.

You need to install the following dependencies to run the Ubuntu binary:

apt install libqt5gui5 libqt5qml5 libqt5quickcontrols2-5 libqt5multimedia5-plugins \
            qml-module-qtquick2 qml-module-qtmultimedia qml-module-qtquick-layouts \
            qml-module-qtquick-controls qml-module-qtquick-controls2 \
            qml-module-qtquick-window2 qml-module-qtgraphicaleffects \
            qml-module-qtquick-dialogs qml-module-qt-labs-folderlistmodel \
            qml-module-qt-labs-settings

From Source

Make sure you have a working Go environment (Go 1.9 or higher is required). See the install instructions.

You will also need Qt5 >=5.12 and its development headers installed.

Dependencies (Ubuntu example)

apt-get --no-install-recommends install build-essential git libglib2.0-dev libglu1-mesa-dev libpulse-dev
apt-get --no-install-recommends install libqt*5-dev qt*5-dev qt*5-doc-html qml-module-qtquick*
apt-get install qml-module-qtmultimedia qml-module-qt-labs-folderlistmodel qml-module-qt-labs-settings

Building Telephant

export QT_PKG_CONFIG=true
go get -u -v -tags=no_env github.com/therecipe/qt/cmd/...
go get -d -u -v github.com/muesli/telephant
cd $(go env GOPATH)/src/github.com/muesli/telephant
$(go env GOPATH)/bin/qtdeploy build desktop .

Within a Docker Container

Follow the build instructions above, but instead of the last command, run:

$(go env GOPATH)/bin/qtdeploy -docker build linux

Run it

./deploy/linux/telephant

telephant Screenshot