Home

Awesome

<br> <p align='center'> <img height="128" src="assets/logo/app_logo_cyan.svg"/> </p> <p align='center'> a privacy centric matrix client - now in open alpha* </p> <p align='center'> <a href='https://play.google.com/store/apps/details?id=org.tether.tether'> <img height="56" alt='Get it on Google Play' style="padding-right:8px;" src='assets/external/en_badge_web_generic.png'/> </a> <a href='https://apps.apple.com/app/syphon/id1496285352'> <img height="56" alt='Download on the App Store' style="padding-right:8px;" src='assets/external/download_on_the_app_store.svg'/> </a> <a href='https://f-droid.org/packages/org.tether.tether/'> <img height="56" src="assets/external/get-it-on-fdroid.png"> </a> <a href='https://flathub.org/apps/details/org.syphon.Syphon'> <img height='56' alt='Download on Flathub' src='https://flathub.org/assets/badges/flathub-badge-en.png'/> </a> </p> <br> <p align='center'> <img src="https://img.shields.io/github/license/syphon-org/syphon?color=teal"/> <img src="https://img.shields.io/github/v/release/syphon-org/syphon?include_prereleases&color=teal"/> <img src="https://img.shields.io/github/commits-since/syphon-org/syphon/0.2.6?color=teal"/> <a href="https://pub.dev/packages/lint"> <img src="https://img.shields.io/badge/style-lint-4BC0F5.svg?color=teal"/> </a> <a href="https://github.com/syphon-org/syphon/releases"> <img src="https://img.shields.io/github/downloads/syphon-org/syphon/total?color=teal"/> </a> <a href="https://matrix.to/#/#syphon:matrix.org"> <img src="https://img.shields.io/matrix/syphon:matrix.org?color=teal&logo=matrix"/> </a> <a href="https://hosted.weblate.org/engage/syphon/"> <img src="https://hosted.weblate.org/widgets/syphon/-/svg-badge.svg" alt="Translation status" /> </a> </p> <p align='center'> <img src="assets/screenshots/01-android-tiny.png"/> <img src="assets/screenshots/03-android-tiny.png"/> <img src="assets/screenshots/05-android-tiny.png"/> </p> <p align='center'> Syphon is still in alpha and we <b>do not recommend</b><br> using it where proven and independently verified security is required. </p> <br>

🤔 Why

Syphon aims to be built on the foundations of privacy, branding, and user experience <br>in an effort to pull others away from proprietary chat platforms to the matrix protocol.

Matrix has the potential to be a standardized peer-to-peer chat protocol, and in a way already is, that allows people to communicate and control their conversation data. Email has been standardized in this way for a long time. For example, someone using Outlook can still email someone using Gmail. Most popular proprietary chat platforms do not adhere to a federated or decentralized protocol, and as a result have too much control over users data.

If the goal for Matrix is adoption, a network effect is required for this paradigm shift. Syphon makes the bet that the best way to attract new users is through strong branding and user experience. I hope that contributing and maintaining Syphon will help kick start this process and help those in need.

Syphon will always be a not for profit, community driven application.

✨ Features

🚀 Goals

🌙 Nightlies

📝 Contributing

🏗️ Building

You may notice Syphon does not look very dart-y (for example, no _private variable declarations, or using redux instead of provider) in an effort to reduce the learning curve from other languages or platforms. The faster one can get people contributing, the easier it will be for others to maintain or oversee a tool that does not exploit the user.

workstation

ios/android

  1. install android studio
  2. install latest commandline tools through android studio gui
  3. confirm sdkmanager is available in your path
  4. pull the latest cmake, NDK, and other dependencies
  1. pull dependencies needed
  1. generate json conversion for models
  1. generate json conversion for models

macos

  1. flutter config --enable-macos-desktop
  2. brew install libolm to install native olm dependencies
  3. copy the dylib - not the soft links - to the macos folder
  1. follow instructions for linking the dylib generated from brew to the Syphon project
  1. flutter build macos to build the .app bundle

linux

  1. flutter config --enable-linux-desktop
  2. apt install libolm3 libsqlite3-dev or pacman -S libolm or platform equivalent for libolm
  3. flutter build linux && flutter build bundle
  4. navigate to release at $SYPHON_ROOT/build/linux/release/bundle
  5. Confirm build works with running $SYPHON_ROOT/build/linux/release/bundle/syphon

windows

  1. flutter doctor should give you warnings for anything missing
  2. flutter config --enable-windows-desktop
  3. Compile olm & move olm.dll to libolm.dll in the executable directory
  4. Fetch sqlite's Precompiled Binaries for Windows dll from the website

📐 Architecture

store

assets

integrations

references

decoration: BoxDecoration(
   border: Border.all(width: 1, color: Colors.white),
),

from those who made it possible

lub youu