mirror of
https://gitlab.com/famedly/fluffychat.git
synced 2024-12-28 17:12:33 +01:00
Merge branch 'KrilleFear-main-patch-81759' into 'main'
Update README.md See merge request famedly/fluffychat!610
This commit is contained in:
commit
0da1279510
151
README.md
151
README.md
@ -3,8 +3,7 @@
|
||||
<p align="center">
|
||||
<a href="https://matrix.to/#/#fluffychat:matrix.org" target="new">Join the community</a> - <a href="https://metalhead.club/@krille" target="new">Follow me on Mastodon</a> - <a href="https://hosted.weblate.org/projects/fluffychat/" target="new">Translate FluffyChat</a> - <a href="https://gitlab.com/ChristianPauly/fluffychat-website" target="new">Translate the website</a> - <a href="https://fluffychat.im" target="new">Website</a> - <a href="https://gitlab.com/famedly/famedlysdk" target="new">Famedly Matrix SDK</a> - <a href="https://famedly.com/kontakt">Server hosting and professional support</a>
|
||||
</p>
|
||||
<br>
|
||||
<br>
|
||||
|
||||
|
||||
FluffyChat is an open source, nonprofit and cute matrix messenger app. The app is easy to use but secure and decentralized.
|
||||
|
||||
@ -19,6 +18,7 @@ FluffyChat is an open source, nonprofit and cute matrix messenger app. The app i
|
||||
- Feature rich group moderation including all matrix features
|
||||
- Discover and join public groups
|
||||
- Dark mode
|
||||
- Custom themes
|
||||
- Hides complexity of Matrix IDs behind simple QR codes
|
||||
- Custom emotes and stickers
|
||||
- Video calls via sharing links to Jitsi
|
||||
@ -28,153 +28,20 @@ FluffyChat is an open source, nonprofit and cute matrix messenger app. The app i
|
||||
- Emoji verification & cross signing
|
||||
- And much more...
|
||||
|
||||
# Installation
|
||||
|
||||
## FluffyChat comes with a dream
|
||||
Please visit our website for installation instructions:
|
||||
|
||||
Imagine a world where everyone can choose the messenger they like and is still able to chat with all of their friends.
|
||||
|
||||
A world where there are no companies spying on you when you send selfies to friends and lovers.
|
||||
|
||||
And a world where apps are made for fluffyness and not for profit. ♥
|
||||
https://fluffychat.im
|
||||
|
||||
# How to build
|
||||
|
||||
1. [Install flutter](https://flutter.dev)
|
||||
Please visit our Wiki for build instructions:
|
||||
|
||||
2. Clone the repo:
|
||||
```
|
||||
git clone --recurse-submodules https://gitlab.com/famedly/fluffychat
|
||||
cd fluffychat
|
||||
```
|
||||
|
||||
3. Choose your target platform below and enable support for it.
|
||||
|
||||
3.1 If you want, enable Googles Firebase Cloud Messaging:
|
||||
|
||||
`git apply ./scripts/enable-android-google-services.patch`
|
||||
|
||||
4. Debug with: `flutter run`
|
||||
|
||||
### Android
|
||||
|
||||
* Install CMake from the SDK Manager
|
||||
|
||||
* Install ninja:
|
||||
```
|
||||
sudo apt install ninja-build
|
||||
```
|
||||
|
||||
* Build with: `flutter build apk`
|
||||
|
||||
### iOS / iPadOS
|
||||
|
||||
* Have a Mac with Xcode installed, and set up for Xcode-managed app signing
|
||||
* If you want automatic app installation to connected devices, make sure you have Apple Configurator installed, with the Automation Tools (`cfgutil`) enabled
|
||||
* Set a few environment variables
|
||||
* FLUFFYCHAT_NEW_TEAM: the Apple Developer team that your certificates should live under
|
||||
* FLUFFYCHAT_NEW_GROUP: the group you want App IDs and such to live under (ie: com.example.fluffychat)
|
||||
* FLUFFYCHAT_INSTALL_IPA: set to `1` if you want the IPA to be deployed to connected devices after building, otherwise unset
|
||||
* Run `./scripts/build-ios.sh`
|
||||
|
||||
### Web
|
||||
|
||||
* Enable web support in Flutter: https://flutter.dev/docs/get-started/web
|
||||
|
||||
* Build with:
|
||||
```bash
|
||||
./scripts/prepare-web.sh
|
||||
flutter build web --release
|
||||
```
|
||||
|
||||
* Optionally configure by serving a `config.json` at the same path as fluffychat.
|
||||
An example can be found at `config.sample.json`. None of these
|
||||
values have to exist, the ones stated here are the default ones. If you e.g. only want
|
||||
to change the default homeserver, then only modify the `default_homeserver` key.
|
||||
|
||||
### Desktop (Linux, Windows, macOS)
|
||||
|
||||
* Enable Desktop support in Flutter: https://flutter.dev/desktop
|
||||
|
||||
* Build with one of these:
|
||||
```bash
|
||||
flutter build linux --release
|
||||
flutter build windows --release
|
||||
flutter build macos --release
|
||||
```
|
||||
https://gitlab.com/famedly/fluffychat/-/wikis/How-To-Build
|
||||
|
||||
|
||||
# How to add translations for your language
|
||||
|
||||
You can use Weblate to translate the app to your language:
|
||||
|
||||
https://hosted.weblate.org/projects/fluffychat/
|
||||
|
||||
If you want to get your translated strings approved, please ask in our
|
||||
<a href="https://matrix.to/#/#fluffychat:matrix.org" target="new">support room</a>!
|
||||
|
||||
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';
|
||||
```
|
||||
|
||||
2. 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”
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
3. For testing just run a regular build without extras
|
||||
|
||||
# Android push notifications without FCM
|
||||
Fluffychat has the ability to receive push notifications on android without FCM via the
|
||||
[UnifiedPush](https://github.com/UnifiedPush) project, e.g. using gotify as push backend. As the project is still pretty new
|
||||
there might still be some bugs, overall it seems to be working, though.
|
||||
|
||||
While UnifiedPush also supports p2p push via [NoProvider2Push](https://github.com/NoProvider2Push/android)
|
||||
here the gotify setup will be outlined. Adapt re-write proxies accordingly, if you want to use a different push provider.
|
||||
|
||||
For self-hosted push with gotify you have to install and configure [gotify-server](https://github.com/gotify/server)
|
||||
with [UnifiedPush](https://github.com/UnifiedPush/contrib/blob/main/providers/gotify.md) support.
|
||||
|
||||
Install the `Gotify-UP` app from fdroid. Next log into your gotify account and push notifications should work!
|
||||
|
||||
## Matrix-specific re-write proxy
|
||||
Until [MSC2970](https://github.com/matrix-org/matrix-doc/pull/2970) is figured out we unfortunately
|
||||
need another simple re-write proxy. By default the one at https://matrix.gateway.unifiedpush.org
|
||||
is used, however you can easily self-host it. For that, please look at the [UnifiedPush Common-Proxies](https://github.com/UnifiedPush/common-proxies)
|
||||
repository.
|
||||
|
||||
# Special thanks to
|
||||
# Special thanks
|
||||
|
||||
* <a href="https://github.com/fabiyamada">Fabiyamada</a> is a graphics designer from Brasil and has made the fluffychat logo and the banner. Big thanks for her great designs.
|
||||
|
||||
@ -182,8 +49,6 @@ repository.
|
||||
|
||||
* 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.
|
||||
|
||||
* <a href="https://github.com/googlefonts/noto-emoji/">Noto Emoji Font</a> for the awesome emojis.
|
||||
|
Loading…
Reference in New Issue
Block a user