An experiment in building a better XMPP client. This time using Flutter.
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.
 
 
PapaTutuWawa 9a0bc87636 Merge pull request 'Message reactions' (#178) from feat/reactions into master 2 hours ago
android android: Declare external storage permissions 3 months ago
assets feat(ui): Translate the reaction button 3 days ago
fastlane/metadata/android/en-US meta: Add fastlane metadata 4 months ago
integration_test test(service): Integration test MoxxyReconnectionPolicy 3 weeks ago
lib fix(service): Fix senders being added multiple times to a reaction 2 hours ago
test feat(service): Remove shared media entry on message retraction 2 weeks ago
thirdparty build: Improve even more 12 months ago
.gitignore feat(ui): Use slang for the intro page 3 weeks ago
.gitlint feat(i18n): Give each translation a name 3 weeks ago
.gitmodules build: Improve even more 12 months ago
.metadata Initial commit 12 months ago
LICENSE Initial commit 12 months ago
README.md fix(meta): Remove ANDROID_* from the Flake 4 weeks ago
analysis_options.yaml feat(ui): Use slang for the intro page 3 weeks ago
build.yaml feat(ui): Use slang for the intro page 3 weeks ago
flake.lock feat(meta): Update Flutter to 3.3.8 2 weeks ago
flake.nix fix(meta): Remove ANDROID_* from the Flake 4 weeks ago
moxxy.doap docs(meta): Update DOAP 3 days ago
pubspec.lock feat(service): Handle messages with <no-store/> Message Processing Hints 5 hours ago
pubspec.yaml feat(service): Handle messages with <no-store/> Message Processing Hints 5 hours ago

README.md

Moxxy

An experimental XMPP client that tries to be as easy, modern and beautiful as possible.

The code is also available on codeberg.

Get it on IzzyOnDroid

Screenshots

Developing and Building

Clone using git clone --recursive https://github.com/Polynomdivision/moxxyv2.git.

In order to build Moxxy, you need to have Flutter set up. If you are running NixOS or using Nix, you can also use the Flake at the root of the repository by running nix develop to get a development shell including everything that is needed. Note that if you decide to use the Flake, ANDROID_HOME and ANDROID_AVD_HOME must be set to the respective directories.

Before building Moxxy, you need to generate all needed data classes. To do this, run flutter pub get to install all dependencies. Then run flutter pub run build_runner build to generate state classes, data classes and the database schemata. After that is done, you can either build the app with flutter build apk --debug to create a debug build, flutter build apk --release to create a relase build or just run the app in development mode with flutter run.

After implementing a change or a feature, please ensure that nothing is broken by the change by running flutter test afterwards. Also make sure that the code passes the linter by running flutter analyze. This project also uses gitlint to ensure uniform formatting of commit messages.

Also, feel free to join the development chat at moxxy@muc.moxxy.org.

A Bit of History

This project is the successor of moxxyv1, which was written in React Native and abandoned due to various technical issues.

License

See ./LICENSE.

Special Thanks

  • New logo designed by Synoh