An experimental fork of FluffyChat.
Go to file
2020-10-04 18:27:04 +03:00
android Merge commit 'bb5df2a66bd3a9ec3fc820c3a4b02130b24d27b1' into yiffed 2020-07-22 03:51:57 +03:00
assets fix: annoying notification sound 2020-08-23 19:58:14 +02:00
ios Merge commit 'cafd639c24dbcd2398271845aefbade283a8f279' into yiffed 2020-10-03 21:36:17 +03:00
lib hotfix: Capture Exception 2020-10-04 18:27:04 +03:00
linux feat: Implement basic windows linux support 2020-09-27 11:18:38 +02:00
macos feat: Enable macOS build 2020-09-26 21:22:49 +02:00
test feat: Add scroll-to-event 2020-09-20 11:37:48 +02:00
web update sql-wasm 2020-07-18 16:25:59 +02:00
windows feat: Implement basic windows linux support 2020-09-27 11:18:38 +02:00
.gitignore feat!: Use new localisation setup from flutter 1.22 2020-10-03 11:11:07 +00:00
.gitlab-ci.yml feat!: Use new localisation setup from flutter 1.22 2020-10-03 11:11:07 +00:00
.metadata Initial commit 2020-01-01 19:10:13 +01:00
_config.yml Add license and gitlab pages stuff 2020-01-02 13:42:49 +00:00
analysis_options.yaml Soru/moor 2020-05-13 13:58:59 +00:00
CHANGELOG.md feat: Enhance emote experience 2020-10-03 17:44:59 +02:00
CONTRIBUTING.md Add French translations 2020-05-17 08:18:31 +00:00
Dockerfile Fork chores 2020-06-13 22:37:40 +03:00
Gemfile Add license and gitlab pages stuff 2020-01-02 13:42:49 +00:00
Gemfile.lock Add license and gitlab pages stuff 2020-01-02 13:42:49 +00:00
l10n.yaml feat!: Use new localisation setup from flutter 1.22 2020-10-03 11:11:07 +00:00
LICENSE Add license and gitlab pages stuff 2020-01-02 13:42:49 +00:00
PRIVACY.md Update PRIVACY.md 2020-10-03 08:39:57 +00:00
pubspec.lock Make fork possible to be built 2020-10-04 12:20:56 +00:00
pubspec.yaml Delete Sentry 2020-10-03 21:38:40 +03:00
README.md Make fork possible to be built 2020-10-04 12:20:56 +00:00

FurryChat

An experimental fork of FluffyChat.

Changes from FluffyChat

  • Double check of .well-known
  • Get Jitsi from .well-known
  • Removed Sentry

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

Android / iOS

  1. For Android install CMake from the SDK Manager

  2. Install ninja:

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

Web

  1. flutter channel beta && flutter upgrade

  2. flutter config --enable-web

  3. flutter run

Docker

Don't even ask.

docker run -ti --privileged -v /dev/bus/usb:/dev/bus/usb -v ${PWD}:/build -v /home/inex/.pub-cache:/home/inex/.pub-cache -v /home/inex/flutter:/home/inex/flutter -d flutter-fluffy:1.0

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.