From 59d87b8a530ec69a51718755102df47d24fdc6c5 Mon Sep 17 00:00:00 2001 From: eymeric Date: Wed, 6 Sep 2023 09:59:54 +0200 Subject: [PATCH 1/8] fix intellij warning on readme --- README.md | 35 +++++++++++++++++++++-------------- 1 file changed, 21 insertions(+), 14 deletions(-) diff --git a/README.md b/README.md index a8db6167..3587cecd 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,5 @@ - -

+ +


Onyx
@@ -9,7 +9,7 @@

The student application for Claude Bernard Lyon 1 University

-

+

Releases @@ -23,7 +23,6 @@ alt="License"> - Discord @@ -31,7 +30,7 @@

-

+

Features | Download | Contribute | @@ -41,18 +40,22 @@ ![Banner](apps/onyx/assets/screenshots/banner_en.png) - -Onyx is an unofficial, open-source application that lets you access all Université Claude Bernard Lyon 1 services from your phone. +Onyx is an unofficial, open-source application that lets you access all Université Claude Bernard Lyon 1 services from +your phone. ## Features -

- -

+
+ Calendar Screenshot + Email Screenshot + Grades Screenshot + Map Screenshot + Izly Screenshot +
## Download -

+

google-play github @@ -69,7 +72,8 @@ We really appreciate any help. You can also chat with us on [Discord](https://di ### Run the integration test -Start app in test mode : `flutter run integration_test/app_test.dart --host-vmservice-port 9753 --disable-service-auth-codes --dart-define CONVENIENT_TEST_MANAGER_HOST="an ip address" --dart-define CONVENIENT_TEST_APP_CODE_DIR=/path/to/onyx`. +Start app in test +mode : `flutter run integration_test/app_test.dart --host-vmservice-port 9753 --disable-service-auth-codes --dart-define CONVENIENT_TEST_MANAGER_HOST="an ip address" --dart-define CONVENIENT_TEST_APP_CODE_DIR=/path/to/onyx`. Replace `an ip address` with the ip address of your computer (if using an emulator, set to 10.0.2.2). Replace `/path/to/onyx` with the path to the onyx directory. @@ -82,13 +86,16 @@ Replace `an ip address` with the ip address of your phone (if using an emulator, Replace `linux` with your operating system. Common issue : + - You will maybe need to install vlc-dev on linux to be able to compile the test manager. - Enable isolation in the test manager to run all the tests at once. ## License -This work is licensed under the Creative Commons Attribution-NonCommercial 4.0 International License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nc/4.0/ or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA.\ +This work is licensed under the Creative Commons Attribution-NonCommercial 4.0 International License. To view a copy of +this license, visit http://creativecommons.org/licenses/by-nc/4.0/ or send a letter to Creative Commons, PO Box 1866, +Mountain View, CA 94042, USA.\ -

+

Creative Commons License

From 995039145d6fb80234278f2b175097caab71c35d Mon Sep 17 00:00:00 2001 From: eymeric Date: Wed, 6 Sep 2023 10:00:12 +0200 Subject: [PATCH 2/8] delete old readme --- apps/onyx/README.md | 51 -------------------------------------- apps/onyx/README.md.backup | 42 ------------------------------- 2 files changed, 93 deletions(-) delete mode 100644 apps/onyx/README.md delete mode 100644 apps/onyx/README.md.backup diff --git a/apps/onyx/README.md b/apps/onyx/README.md deleted file mode 100644 index 32f24cf0..00000000 --- a/apps/onyx/README.md +++ /dev/null @@ -1,51 +0,0 @@ -# Onyx - -Onyx is an application to access all lyon1's services from your phone.\ - -| | | -|:------------------------------------------------------------------------:|:------------------------------------------------------------------------:| -| Toutes tes notes en un clin d'oeil⚡ | Ton emploi du temps sans rien à configurer 🥳 | -| ![](assets/screen_shot/Screenshot_20230221-155049_Onyx.png){width="50%"} | ![](assets/screen_shot/Screenshot_20230221-155102_Onyx.png){width="50%"} | -| Tes mails toujours disponible 🤩 | Plein de paramètres une application comme tu la veut ❤️‍🔥 | -| ![](assets/screen_shot/Screenshot_20230221-155151_Onyx.png){width="50%"} | ![](assets/screen_shot/Screenshot_20230221-155154_Onyx.png){width="50%"} | -| Izly tu peut supprimer l'app Izly🧹 | Un plan des bâtimens pour cet amphi que personne connait😢 | -| ![](assets/screen_shot/Screenshot_20230221-155123_Onyx.png){width="50%"} | ![](assets/screen_shot/Screenshot_20230221-155158_Onyx.png){width="50%"} | - -## contribute - -Feel free to contribute to this project by opening issues or pull requests.\ -We really appreciate any help. - -### run the integration test - -start app in test -mode : `flutter run integration_test/app_test.dart --host-vmservice-port 9753 --disable-service-auth-codes --dart-define CONVENIENT_TEST_MANAGER_HOST="an ip address" --dart-define CONVENIENT_TEST_APP_CODE_DIR=/path/to/onyx` - -replace `an ip address` with the ip address of your computer (if using an emulator, set to 10.0.2.2) -replace `/path/to/onyx` with the path to the onyx directory - -run the test manager (can be found here : https://github.com/fzyzcjy/flutter_convenient_test/) -`flutter run packages/convenient_test_manager/lib/main.dart --profile --dart-define CONVENIENT_TEST_WORKER_HOST="an ip address" -d linux` - -replace `an ip address` with the ip address of your phone (if using an emulator, set to 127.0.0.1) - -replace `linux` with your operating system - -common issue : - -- you will maybe need to install vlc-dev on linux to be able to compile the test manager -- enable isolation in the test manager to run all the tests at once - -tips: -to list all the directories in map : - -```bash -find -depth -type d | awk -F / 'NF>=p; {p=NF}' | sed 's/.//' | xargs -I{} echo " - assets/map{}/" -``` - -## licence - -This work is licensed under the Creative Commons Attribution-NonCommercial 4.0 International License. To view a copy of -this license, visit http://creativecommons.org/licenses/by-nc/4.0/ or send a letter to Creative Commons, PO Box 1866, -Mountain View, CA 94042, USA.\ -Creative Commons License \ No newline at end of file diff --git a/apps/onyx/README.md.backup b/apps/onyx/README.md.backup deleted file mode 100644 index a92c7f1f..00000000 --- a/apps/onyx/README.md.backup +++ /dev/null @@ -1,42 +0,0 @@ -# Onyx - -Onyx is an application to access all lyon1's services from your phone.\ - -||| -|:-:|:-:| -|Toutes tes notes en un clin d'oeil⚡|Ton emploi du temps sans rien à configurer 🥳| -|![](assets/screen_shot/Screenshot_20230221-155049_Onyx.png){width="50%"}|![](assets/screen_shot/Screenshot_20230221-155102_Onyx.png){width="50%"}| -|Tes mails toujours disponible 🤩|Plein de paramètres une application comme tu la veut ❤️‍🔥| -|![](assets/screen_shot/Screenshot_20230221-155151_Onyx.png){width="50%"}|![](assets/screen_shot/Screenshot_20230221-155154_Onyx.png){width="50%"}| -|Izly tu peut supprimer l'app Izly🧹|Un plan des bâtimens pour cet amphi que personne connait😢| -|![](assets/screen_shot/Screenshot_20230221-155123_Onyx.png){width="50%"}|![](assets/screen_shot/Screenshot_20230221-155158_Onyx.png){width="50%"}| - -## contribute - -Feel free to contribute to this project by opening issues or pull requests.\ -We really appreciate any help. - -### run the integration test - -start app in test -mode : `flutter run integration_test/app_test.dart --host-vmservice-port 9753 --disable-service-auth-codes --dart-define CONVENIENT_TEST_MANAGER_HOST="an ip address" --dart-define CONVENIENT_TEST_APP_CODE_DIR=/path/to/onyx` - -replace `an ip address` with the ip address of your computer (if using an emulator, set to 10.0.2.2) -replace `/path/to/onyx` with the path to the onyx directory - -run the test manager (can be found here : https://github.com/fzyzcjy/flutter_convenient_test/) -`flutter run packages/convenient_test_manager/lib/main.dart --profile --dart-define CONVENIENT_TEST_WORKER_HOST="an ip address" -d linux` - -replace `an ip address` with the ip address of your phone (if using an emulator, set to 127.0.0.1) - -replace `linux` with your operating system - -common issue : - -- you will maybe need to install vlc-dev on linux to be able to compile the test manager -- enable isolation in the test manager to run all the tests at once - -## licence - -This work is licensed under the Creative Commons Attribution-NonCommercial 4.0 International License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nc/4.0/ or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA.\ -Creative Commons License \ No newline at end of file From 28de2c4f762afbfd0563a3f6bf306589280371ec Mon Sep 17 00:00:00 2001 From: eymeric Date: Wed, 6 Sep 2023 10:33:42 +0200 Subject: [PATCH 3/8] update build instruction in readme --- README.md | 56 +++++++++++++++++++++++++++++++++++++++++++------------ 1 file changed, 44 insertions(+), 12 deletions(-) diff --git a/README.md b/README.md index 3587cecd..159ec3b6 100644 --- a/README.md +++ b/README.md @@ -70,25 +70,57 @@ We really appreciate any help. You can also chat with us on [Discord](https://di ## Build -### Run the integration test +To build the app, follow these steps: -Start app in test -mode : `flutter run integration_test/app_test.dart --host-vmservice-port 9753 --disable-service-auth-codes --dart-define CONVENIENT_TEST_MANAGER_HOST="an ip address" --dart-define CONVENIENT_TEST_APP_CODE_DIR=/path/to/onyx`. +### Prerequisites -Replace `an ip address` with the ip address of your computer (if using an emulator, set to 10.0.2.2). -Replace `/path/to/onyx` with the path to the onyx directory. +- Install Flutter from [flutter.dev](https://flutter.dev). +- Note: If you intend to build for Linux, ensure you have the libsecret library installed in your development + environment. -Run the test manager (can be found here : https://github.com/fzyzcjy/flutter_convenient_test/) -`flutter run packages/convenient_test_manager/lib/main.dart --profile --dart-define CONVENIENT_TEST_WORKER_HOST="an ip address" -d linux`. +### Building the App -Replace `an ip address` with the ip address of your phone (if using an emulator, set to 127.0.0.1). +Please make sure you are on the main branch before proceeding with the build process. +Navigate to the `apps/onyx` directory and execute the following command based on your +target platform: -Replace `linux` with your operating system. +- To build an APK: `flutter build apk` + - The APK file is located at `apps/onyx/build/app/outputs/flutter-apk/app-release.apk`. +- To build for Linux: `flutter build linux` + - The Linux build is located at `apps/onyx/build/linux/x64/release/bundle/Onyx`. +- To build an app bundle: `flutter build appbundle` + - The app bundle is located at `apps/onyx/build/app/outputs/bundle/release/app-release.aab`. +- For other platforms, please refer to the Flutter documentation for their respective build locations. -Common issue : +### Development Environment Setup -- You will maybe need to install vlc-dev on linux to be able to compile the test manager. -- Enable isolation in the test manager to run all the tests at once. +To set up your development environment: + +1. The required libraries are located in the `packages/` directory. +2. Install Melos, which handles linking libraries directly in the app for development: + - Install Melos by running: `dart pub global activate melos`. + - Refer to the [Melos documentation](https://melos.invertase.dev/) for more details. +3. Run `melos bs` or `melos bootstrap` to link the local libraries in the app and retrieve all dependencies. +4. Navigate to the `apps/onyx` directory and run `flutter clean` to ensure a clean environment. +5. Run `flutter run` to start the app. +6. Optionally, you can use `melos generate` to generate automatically generated files (usually not needed unless you + modify them). +7. Run `melos test` to run unit tests for all the libraries. +8. Run `melos analyze` to perform static analysis on the libraries and the Onyx app. +9. To unlink everything, use `melos clean`. + +### End-to-End Testing + +To run end-to-end tests: + +1. Install Maestro by following the [Maestro documentation](https://maestro.mobile.dev/). +2. Run the following command to install Maestro: `curl -Ls "https://get.maestro.mobile.dev" | bash` (Applicable for Mac + OS, Linux, or Windows with WSL) +3. Navigate to the `apps/onyx/integration_test` directory. + 4. After installing the app on an Android device (physical or virtual), run the following command to execute the + tests: `maestro test general_test.yaml` Maestro will automatically run the tests. + +Now, you're all set to build and test your Flutter app. ## License From 7282c586aaf66f314dcee0c6fc842b510adfa8bd Mon Sep 17 00:00:00 2001 From: hatch01 <42416805+hatch01@users.noreply.github.com> Date: Wed, 6 Sep 2023 11:09:18 +0200 Subject: [PATCH 4/8] recentere logo --- README.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 159ec3b6..205d9521 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,8 @@

-
- Onyx + + Onyx +
Onyx : Everything for Lyon 1
From 8f83ed98386e67dfc9d18c7f1bf4c8cd3b2ae948 Mon Sep 17 00:00:00 2001 From: eymeric Date: Wed, 6 Sep 2023 11:14:07 +0200 Subject: [PATCH 5/8] correct build instruction for android --- README.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 205d9521..d7adb443 100644 --- a/README.md +++ b/README.md @@ -85,11 +85,13 @@ Please make sure you are on the main branch before proceeding with the build pro Navigate to the `apps/onyx` directory and execute the following command based on your target platform: -- To build an APK: `flutter build apk` +- To build an APK: `flutter build apk --profile` (the `--profile` flag build the app without the signing key but with + full optimizations) - The APK file is located at `apps/onyx/build/app/outputs/flutter-apk/app-release.apk`. - To build for Linux: `flutter build linux` - The Linux build is located at `apps/onyx/build/linux/x64/release/bundle/Onyx`. -- To build an app bundle: `flutter build appbundle` +- To build an app bundle: `flutter build appbundle --profile` (the `--profile` flag build the app without the signing + key but with full optimizations) - The app bundle is located at `apps/onyx/build/app/outputs/bundle/release/app-release.aab`. - For other platforms, please refer to the Flutter documentation for their respective build locations. From 8589bc7576548a63f4a8eececae78671f2e82ab1 Mon Sep 17 00:00:00 2001 From: hatch01 <42416805+hatch01@users.noreply.github.com> Date: Wed, 6 Sep 2023 11:38:15 +0200 Subject: [PATCH 6/8] back to align... --- README.md | 38 ++++++++++++++++---------------------- 1 file changed, 16 insertions(+), 22 deletions(-) diff --git a/README.md b/README.md index d7adb443..c8202a6e 100644 --- a/README.md +++ b/README.md @@ -10,28 +10,22 @@

The student application for Claude Bernard Lyon 1 University

-

- - Releases - - - Playstore - - - License - - - - Discord - - -

- -

+

+ + Releases + + + Playstore + + + License + + + Discord + +

+ +

Features | Download | Contribute | From 0d2858a757fa8c8026cacc37a9262daf51bad838 Mon Sep 17 00:00:00 2001 From: hatch01 <42416805+hatch01@users.noreply.github.com> Date: Wed, 6 Sep 2023 11:39:22 +0200 Subject: [PATCH 7/8] completly revert to align=center --- README.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index c8202a6e..e1ec1e46 100644 --- a/README.md +++ b/README.md @@ -40,17 +40,17 @@ your phone. ## Features -

+

Calendar Screenshot Email Screenshot Grades Screenshot Map Screenshot Izly Screenshot -

+

## Download -

+

google-play github @@ -125,6 +125,6 @@ This work is licensed under the Creative Commons Attribution-NonCommercial 4.0 I this license, visit http://creativecommons.org/licenses/by-nc/4.0/ or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA.\ -

+

Creative Commons License

From 018d0e1eea22044c76dc571c469cc3ab5911380a Mon Sep 17 00:00:00 2001 From: hatch01 <42416805+hatch01@users.noreply.github.com> Date: Wed, 6 Sep 2023 11:44:12 +0200 Subject: [PATCH 8/8] emojiiii --- README.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index e1ec1e46..d7519d67 100644 --- a/README.md +++ b/README.md @@ -67,13 +67,13 @@ We really appreciate any help. You can also chat with us on [Discord](https://di To build the app, follow these steps: -### Prerequisites +### Prerequisites 🛠️ - Install Flutter from [flutter.dev](https://flutter.dev). - Note: If you intend to build for Linux, ensure you have the libsecret library installed in your development environment. -### Building the App +### Building the App 🏗️ Please make sure you are on the main branch before proceeding with the build process. Navigate to the `apps/onyx` directory and execute the following command based on your @@ -89,7 +89,7 @@ target platform: - The app bundle is located at `apps/onyx/build/app/outputs/bundle/release/app-release.aab`. - For other platforms, please refer to the Flutter documentation for their respective build locations. -### Development Environment Setup +### Development Environment Setup ⚙️ To set up your development environment: @@ -106,7 +106,7 @@ To set up your development environment: 8. Run `melos analyze` to perform static analysis on the libraries and the Onyx app. 9. To unlink everything, use `melos clean`. -### End-to-End Testing +### End-to-End Testing 🧪 To run end-to-end tests: @@ -117,7 +117,7 @@ To run end-to-end tests: 4. After installing the app on an Android device (physical or virtual), run the following command to execute the tests: `maestro test general_test.yaml` Maestro will automatically run the tests. -Now, you're all set to build and test your Flutter app. +Now, you're all set to build and test your Flutter app. 🎉 ## License