An experimental fork of FluffyChat.
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 Pauly 7d3c4a1dd6 Merge branch 'll/wayland' into 'main' 9 months ago
android fix(windows): Recreate windows files to make sure windows compiles 10 months ago
assets fix: Logo background color 9 months ago
ios fix: Change device displayname 10 months ago
lib Merge branch 'better-edit-cancel' into 'main' 9 months ago
linux feat(linux): wayland support 9 months ago
macos feat: Enable macOS build 10 months ago
snap fix: Snapcraft 10 months ago
test feat: Add scroll-to-event 11 months ago
web update sql-wasm 1 year ago
windows fix: Desktop file picker 10 months ago
.gitignore fix: LocalStorage location on desktop 10 months ago
.gitlab-ci.yml ci(fdroid): Further fdroid deployment fixes 9 months ago
.metadata Initial commit 2 years ago
CHANGELOG.md Merge branch 'soru/release' into 'main' 9 months ago
CONTRIBUTING.md Add French translations 1 year ago
Gemfile Add license and gitlab pages stuff 2 years ago
Gemfile.lock Add license and gitlab pages stuff 2 years ago
LICENSE Add license and gitlab pages stuff 2 years ago
PRIVACY.md Update PRIVACY.md 10 months ago
README.md Merge branch 'patch-1' into 'main' 10 months ago
_config.yml Add license and gitlab pages stuff 2 years ago
analysis_options.yaml Soru/moor 1 year ago
l10n.yaml fix(l10n): Make en the default fallback language. 10 months ago
pubspec.lock chore: update dependencies 10 months ago
pubspec.yaml chore: update dependencies 10 months ago

README.md


Open FluffyChat in the browser - Join the community - Follow me on Mastodon - Translate FluffyChat - Translate the website - FAQ - Website - Download latest APK - Famedly Matrix SDK



Features

  • Single and group chats
  • Send images and files
  • Voice messages
  • Offline chat history
  • Push Notifications
  • Account settings
  • Display user avatars
  • Themes, chat wallpapers and dark mode
  • Device management
  • Edit chat settings and permissions
  • Kick, ban and unban users
  • Display and edit chat topics
  • Change chat & user avatars
  • Archived chats
  • Discover public chats on the user's homeserver
  • Registration
  • Disable account
  • Change password
  • End-To-End-Encryption

How to build

  1. Install flutter

  2. Clone the repo:

git clone --recurse-submodules https://gitlab.com/ChristianPauly/fluffychat-flutter
cd fluffychat-flutter
  1. Choose your target platform below and enable support for it.

  2. Debug with: flutter run

Android

  • Install CMake from the SDK Manager

  • Install ninja:

sudo apt install ninja-build
  • Outcomment the Google Services plugin at the end of the file android/app/build.gradle:
// apply plugin: "com.google.gms.google-services"
  • Build with: flutter build apk

iOS / iPadOS

  • With xcode you can't build a release version without our cert. :-/ Use flutter run --profile to have a working version on your iOS device.

Web

Desktop (Linux, Windows, macOS)

flutter build linux --release
flutter build windows --release
flutter build macos --release

How to add translations for your language

You can use Weblate to translate the app to your language:

https://hosted.weblate.org/projects/fluffychat/

  1. Replace the non-translated string in the codebase:
Text("Hello world"),

with a method call:

Text(L10n.of(context).helloWorld),

and add the following import if missing:

import 'package:flutter_gen/gen_l10n/l10n.dart';
  1. Add the string to /lib/l10n/l10n_en.arb:

(The following example need to be sorounded by the usual json {} and after the @@locale key)

Example A:

"helloWorld": "Hello World!",
"@helloWorld": {
  "description": "The conventional newborn programmer greeting"
}

Example B:

"hello": "Hello {userName}",
"@hello": {
  "description": "A message with a single parameter",
  "placeholders": {
    "userName": {
      "type": “String”,
      “example”: “Bob”
    }
  }
}
  1. For testing just run a regular build without extras

Special thanks to

  • Fabiyamada is a graphics designer from Brasil and has made the fluffychat logo and the banner. Big thanks for her great designs.

  • Advocatux has made the Spanish translation with great love and care. He always stands by my side and supports my work with great commitment.

  • Thanks to MTRNord and Sorunome for developing.

  • Thanks to Mark for all his support and the chat background.

  • Also thanks to all translators and testers! With your help, fluffychat is now available in more than 12 languages.