| 
				
					
						
							 | 
			5 years ago | |
|---|---|---|
| android | 5 years ago | |
| assets | 5 years ago | |
| ios | 5 years ago | |
| lib | 5 years ago | |
| linux | 5 years ago | |
| macos | 5 years ago | |
| snap | 5 years ago | |
| test | 5 years ago | |
| web | 5 years ago | |
| windows | 5 years ago | |
| .gitignore | 5 years ago | |
| .gitlab-ci.yml | 5 years ago | |
| .metadata | 6 years ago | |
| CHANGELOG.md | 5 years ago | |
| CONTRIBUTING.md | 6 years ago | |
| Gemfile | 6 years ago | |
| Gemfile.lock | 6 years ago | |
| LICENSE | 6 years ago | |
| PRIVACY.md | 5 years ago | |
| README.md | 5 years ago | |
| _config.yml | 6 years ago | |
| analysis_options.yaml | 6 years ago | |
| l10n.yaml | 5 years ago | |
| pubspec.lock | 5 years ago | |
| pubspec.yaml | 5 years 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
 
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
- 
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
You can use Weblate to translate the app to your language:
https://hosted.weblate.org/projects/fluffychat/
- 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';
- 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”
    }
  }
}
- 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.
 
