diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 283a44b2..c3f578b5 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -4,7 +4,7 @@ ## Issue tracking / Repository -From issues to wikis: everything is on [GitHub](https://github.com/liftoff-app/liftoff) +From issues to wikis: everything is on [Lifttof GitHub Repo](https://github.com/liftoff-app/liftoff) and [Lemmon Github Repo](https://github.com/orl0pl/lemmon/) ## Linting / Formatting @@ -38,7 +38,7 @@ To contribute time ago strings please send a PR containing a class that implemen ## Architecture -Liftoff is written in Dart using [Flutter](https://flutter.dev/docs). To communicate with Lemmy instances [lemmy_api_client](https://github.com/liftoff-app/lemmy_api_client) is used. +Lemmon is written in Dart using [Flutter](https://flutter.dev/docs). To communicate with Lemmy instances [lemmy_api_client](https://github.com/liftoff-app/lemmy_api_client) is used. ### State management @@ -58,7 +58,7 @@ Liftoff is written in Dart using [Flutter](https://flutter.dev/docs). To communi ### Things to keep in mind -- Be aware that Liftoff supports arbitrary Lemmy instances, don't hardcode instance urls +- Be aware that Lemmon supports arbitrary Lemmy instances, don't hardcode instance urls - Remember that a user is not obligated to be logged in, contributed widgets should handle this case ### Lemmy API diff --git a/README.md b/README.md index fcaa289e..599cde68 100644 --- a/README.md +++ b/README.md @@ -1 +1,100 @@ -Lemmon - fresh clone of clone of lemmur. +
+ +[![](https://github.com/liftoff-app/liftoff/workflows/ci/badge.svg)](https://github.com/liftoff-app/liftoff/actions) + +[![Chat on Matrix](https://matrix.to/img/matrix-badge.svg)](https://matrix.to/#/#liftoff-dev:matrix.org) + + + + +# Lemmon + +[](https://github.com/liftoff-app/liftoff/releases/latest) + +A fresh mobile client for [Lemmy](https://github.com/LemmyNet/lemmy) - a federated reddit alternative +
+ +## Screenshots + +| Card View | Compact | Search | +| ------------- | ------------- | ------------- | +| ![Home screenshot](https://github.com/orl0pl/lemmon/master/screenshots/homegreen.jpeg) | ![b34bd59e-8097-416f-8fc0-5dcd980a1e1d](https://github.com/liftoff-app/liftoff/assets/6200670/132d9e10-15b2-4f4e-abd4-bcf8e6de8fab) | ![7788ed7b-2054-4b93-afbf-dda3fe80c2e8](https://github.com/liftoff-app/liftoff/assets/6200670/e69ebc63-958e-4c1f-b496-df650c09c8c4) | + +- [Liftoff!](#liftoff) + - [Screenshots](#screenshots) +- [Contributing](#contributing) + - [Build from source](#build-from-source) + - [Prerequisites](#prerequisites) + - [iOS](#ios) + - [Android](#android) + - [Linux](#linux) + - [Windows](#windows) + - [FAQ](#faq) + - [Version x.x.x was released, why is it not yet on F-droid?](#version-xxx-was-released-why-is-it-not-yet-on-f-droid) + - ["App not installed" - what to do?](#app-not-installed---what-to-do) +- [What is your privacy policy?](#what-is-your-privacy-policy) +- [End User Code of Conduct](#end-user-code-of-conduct) + +# Contributing + +Please consider contributing! Even if you don't know flutter well use this as a chance to learn! [Contributing Guide](CONTRIBUTING.md) + +Join us on the matrix for support in contributions! [#liftoff-dev:matrix.org](https://matrix.to/#/#liftoff-dev:matrix.org) + +## Build from source + +### Prerequisites + +- Install [flutter](https://flutter.dev/docs/get-started/install): To check if this step was successful run `flutter doctor` (Installing android studio is not required if you setup the android SDK yourself) +- Clone this repo: `git clone https://github.com/liftoff-app/liftoff` +- Enter the repo: `cd liftoff` + +### iOS + +Visual Studio Code build configurations are provided for development testing. + +For final release, run: + +1. `flutter build ipa --flavor prod` + +The .api will be in `build/ios/ipa` + +### Android + +1. Build: `flutter build apk --flavor prod --target lib/main_prod.dart --release` + +The apk will be in `build/app/outputs/flutter-apk/app-prod-release.apk` + +### Linux + +1. Make sure you have the additional [linux requirements](https://flutter.dev/desktop#additional-linux-requirements) (verify with `flutter doctor`) +2. Build: `flutter build linux --target lib/main_prod.dart --release` + +The executable will be in `build/linux/x64/release/bundle/liftoff` (be aware, however, that this executable is not standalone) + +### Windows + +1. Make sure you have the additional [windows requirements](https://flutter.dev/desktop#additional-windows-requirements) (verify with `flutter doctor`) +2. Build: `flutter build windows --target lib/main_prod.dart --release` + +The executable will be in `build\windows\runner\Release\liftoff.exe` (be aware, however, that this executable is not standalone) + +## FAQ + +### Version x.x.x was released, why is it not yet on F-droid? + +We have no control over F-droid's build process. This process is automatic and not always predictable in terms of time it takes. If a new version does not appear in F-droid a week after its release, then feel free to open an issue about it and we will look into it. + +### "App not installed" - what to do? + +When installing the APK directly you might get this message. This happens when you are trying to update liftoff from a different source than where you originally got it from. To fix it simply uninstall the previous version (you will lose all local data) and then install the new one. Always make sure to install liftoff APKs only from verified sources. + +# What is your privacy policy? + +As stated in our [Privacy Policy statement](PRIVACY_POLICY.md), we don't have access to any of your personal data or usage information from your device. + +# End User Code of Conduct + +We want Liftoff! to be a great way of interacting with the Lemmy network in a safe manner, so end-users of the packages that we produce and distribute are required to read and follow our [End User Code of Conduct](CODE_OF_CONDUCT.md). \ No newline at end of file diff --git a/android/app/src/main/res/mipmap-hdpi/ic_launcher_monochrome.png b/android/app/src/main/res/mipmap-hdpi/ic_launcher_monochrome.png index 82471f09..3589b795 100644 Binary files a/android/app/src/main/res/mipmap-hdpi/ic_launcher_monochrome.png and b/android/app/src/main/res/mipmap-hdpi/ic_launcher_monochrome.png differ diff --git a/android/app/src/main/res/mipmap-mdpi/ic_launcher_monochrome.png b/android/app/src/main/res/mipmap-mdpi/ic_launcher_monochrome.png index 3546d013..82551539 100644 Binary files a/android/app/src/main/res/mipmap-mdpi/ic_launcher_monochrome.png and b/android/app/src/main/res/mipmap-mdpi/ic_launcher_monochrome.png differ diff --git a/android/app/src/main/res/mipmap-xhdpi/ic_launcher_monochrome.png b/android/app/src/main/res/mipmap-xhdpi/ic_launcher_monochrome.png index 47d4fb54..615a13b2 100644 Binary files a/android/app/src/main/res/mipmap-xhdpi/ic_launcher_monochrome.png and b/android/app/src/main/res/mipmap-xhdpi/ic_launcher_monochrome.png differ diff --git a/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_monochrome.png b/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_monochrome.png index e07ed3b7..723f0a72 100644 Binary files a/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_monochrome.png and b/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_monochrome.png differ diff --git a/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_monochrome.png b/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_monochrome.png index ec7ae44a..d404fa8f 100644 Binary files a/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_monochrome.png and b/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_monochrome.png differ diff --git a/assets/app_icon_monochrome.png b/assets/app_icon_monochrome.png index 18f4bc42..6dad033a 100644 Binary files a/assets/app_icon_monochrome.png and b/assets/app_icon_monochrome.png differ diff --git a/lib/widgets/user_profile.dart b/lib/widgets/user_profile.dart index c86a559c..e5e35cf5 100644 --- a/lib/widgets/user_profile.dart +++ b/lib/widgets/user_profile.dart @@ -149,8 +149,7 @@ class _UserOverview extends HookWidget { @override Widget build(BuildContext context) { final theme = Theme.of(context); - final colorOnTopOfAccentColor = - textColorBasedOnBackground(theme.colorScheme.secondary); + final colorOnTopOfAccentColor = theme.colorScheme.secondary; return Stack( fit: StackFit.expand, diff --git a/screenshots/bluehome.jpeg b/screenshots/bluehome.jpeg new file mode 100644 index 00000000..8a8d59c0 Binary files /dev/null and b/screenshots/bluehome.jpeg differ diff --git a/screenshots/homegreen.jpeg b/screenshots/homegreen.jpeg new file mode 100644 index 00000000..a627d8c0 Binary files /dev/null and b/screenshots/homegreen.jpeg differ diff --git a/screenshots/searchgreen.jpeg b/screenshots/searchgreen.jpeg new file mode 100644 index 00000000..64e401a7 Binary files /dev/null and b/screenshots/searchgreen.jpeg differ