android | ||
assets | ||
ios | ||
lib | ||
linux | ||
test | ||
web | ||
_config.yml | ||
.gitignore | ||
.gitlab-ci.yml | ||
.gitmodules | ||
.metadata | ||
analysis_options.yaml | ||
CHANGELOG.md | ||
Gemfile | ||
Gemfile.lock | ||
LICENSE | ||
preferences.json | ||
PRIVACY.md | ||
pubspec.lock | ||
pubspec.yaml | ||
README.md |
Open
FluffyChat in the browser -
Join
the community -
Follow me on
Mastodon -
Translate
the website -
FAQ
-
Website
Features
- Single and group chats
- Send images and files
- 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
How to build
Clone the repo:
git clone --recurse-submodules https://gitlab.com/ChristianPauly/fluffychat-flutter
cd fluffychat-flutter
Android / iOS
For 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"
flutter run
Web
flutter channel beta && flutter upgrade
flutter config --enable-web
flutter run
How to add translations for your language
- Replace the non-translated string in the codebase:
Text("Hello world"),
with a method call:
Text(I18n.of(context).helloWorld),
And add the method to /lib/i18n/i18n.dart
:
String get helloWorld => Intl.message('Hello world');
- Add the string to the .arb files with this command:
flutter pub run intl_translation:extract_to_arb --output-dir=lib/i18n lib/i18n/i18n.dart
Copy the new translation objects from
/lib/i18n/intl_message.arb
to/lib/i18n/intl_<yourlanguage>.arb
and translate it or create a new file for your language by copyingintl_message.arb
.Update the translations with this command:
flutter pub pub run intl_translation:generate_from_arb --output-dir=lib/i18n --no-use-deferred-loading lib/i18n/i18n.dart lib/i18n/intl_*.arb
- Make sure your language is in
supportedLocales
in/lib/main.dart
.
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.