Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Updated README for Label dashboard profile sept 2023 #1037

Merged
Merged
Changes from 21 commits
Commits
Show all changes
34 commits
Select commit Hold shift + click to select a range
7ca6fcd
Updated README
niccolopaganini Sep 12, 2023
6822c67
multiple changes: 1. structure/ flow 2. added contents section 3. upd…
niccolopaganini Sep 23, 2023
8ea506d
build successful screenshot
niccolopaganini Sep 23, 2023
ed0e871
Update README.md
niccolopaganini Sep 23, 2023
54656b8
Update README.md
niccolopaganini Sep 23, 2023
290dcc5
Update README.md
niccolopaganini Sep 23, 2023
809fc5d
Update README.md
niccolopaganini Sep 23, 2023
b64ab62
Update README.md
niccolopaganini Sep 25, 2023
72922cf
1. Changed expected output for plugins 2. Removed tested on sub-secti…
niccolopaganini Sep 25, 2023
92ce707
1. reformatted to the original structure 2. removed floating links
niccolopaganini Sep 29, 2023
3d5e99b
Update README.md
niccolopaganini Sep 29, 2023
03bc5c3
Update README.md
niccolopaganini Sep 29, 2023
4d4d57d
Update README.md
niccolopaganini Sep 30, 2023
bbf18bd
Update README.md
niccolopaganini Sep 30, 2023
4da919f
Update README.md
niccolopaganini Sep 30, 2023
e8cbcb5
Update README.md
niccolopaganini Oct 1, 2023
498e04e
Delete Build_ss.png
niccolopaganini Oct 2, 2023
f4f3e68
Update README.md
niccolopaganini Oct 2, 2023
e1a6a32
Update README.md
niccolopaganini Oct 2, 2023
693852d
Update README.md
niccolopaganini Oct 2, 2023
32596a8
Updated README file: Restored to the original - 1. Removed versions 2…
niccolopaganini Oct 9, 2023
b6e3c65
Update README.md
niccolopaganini Oct 17, 2023
2b5735e
Update README.md
niccolopaganini Oct 17, 2023
cb954d1
Update README.md
niccolopaganini Oct 17, 2023
4643949
Apply suggestions from code review
JGreenlee Oct 18, 2023
685e1b6
Update README.md
JGreenlee Oct 18, 2023
047c2b7
Update README.md
JGreenlee Oct 18, 2023
5f9d189
Update README.md
JGreenlee Oct 18, 2023
c6dc2e5
Update README.md
JGreenlee Oct 18, 2023
96d29e6
Update README.md
JGreenlee Oct 18, 2023
079f4ea
Update README.md
JGreenlee Oct 18, 2023
58a50a6
Update README.md
niccolopaganini Oct 19, 2023
9d3965a
Update README.md
niccolopaganini Oct 19, 2023
ca0d569
clarify link to repo
shankari Oct 19, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
101 changes: 76 additions & 25 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,9 @@ e-mission phone app

This is the phone component of the e-mission system.

:sparkles: This has now been upgraded to cordova android@9.0.0 and iOS@6.0.1 ([details](https://github.com/e-mission/e-mission-docs/issues/554)). It has also been upgraded to [android API 29](https://github.com/e-mission/e-mission-phone/pull/707/), [cordova-lib@10.0.0 and the most recent node and npm versions](https://github.com/e-mission/e-mission-phone/pull/708)It also now supports CI, so we should not have any build issues in the future. The limitations from the [previous upgrade](https://github.com/e-mission/e-mission-docs/issues/519) have all been resolved. This should be ready to build out of the box, after all the configuration files are changed.
:sparkles: This has been upgraded to the latest **Android**, **iOS**, **cordova-lib**, **node** and **npm** versions. __This is ready to build out of the box.__

For the latest versions, refer [`package.cordovabuild.json`](package.cordovabuild.json)
niccolopaganini marked this conversation as resolved.
Show resolved Hide resolved

Additional Documentation
---
Expand All @@ -12,6 +14,14 @@ https://github.com/e-mission/e-mission-docs/tree/master/docs/e-mission-phone

**Issues:** Since this repository is part of a larger project, all issues are tracked [in the central docs repository](https://github.com/e-mission/e-mission-docs/issues). If you have a question, [as suggested by the open source guide](https://opensource.guide/how-to-contribute/#communicating-effectively), please file an issue instead of sending an email. Since issues are public, other contributors can try to answer the question and benefit from the answer.

## Contents
#### 1. [Updating the UI only](#updating-the-ui-only)
#### 2. [End to End Testing](#end-to-end-testing)
#### 3. [Updating the e-mission-* plugins or adding new plugins](#updating-the-e-mission--plugins-or-adding-new-plugins)
#### 4. [Creating logos](#creating-logos)
#### 5. [Beta-testing debugging](#beta-testing-debugging)
#### 6. [Contributing](#contributing)

Updating the UI only
---
[![osx-serve-install](https://github.com/e-mission/e-mission-phone/workflows/osx-serve-install/badge.svg)](https://github.com/e-mission/e-mission-phone/actions?query=workflow%3Aosx-serve-install)
Expand All @@ -23,30 +33,30 @@ If you want to make only UI changes, (as opposed to modifying the existing plugi
Run the setup script

```
$ bash setup/setup_serve.sh
bash setup/setup_serve.sh
shankari marked this conversation as resolved.
Show resolved Hide resolved
```

**(optional)** Configure by changing the files in `www/json`.
Defaults are in `www/json/*.sample`

```
$ ls www/json/*.sample
$ cp www/json/startupConfig.json.sample www/json/startupConfig.json
$ cp ..... www/json/connectionConfig.json
ls www/json/*.sample
cp www/json/startupConfig.json.sample www/json/startupConfig.json
cp ..... www/json/connectionConfig.json
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I have not received any links from either you or Jack. Please revert all these changes; we can include them in a future README change.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

```

### Activation (after install, and in every new shell)

```
$ source setup/activate_serve.sh
source setup/activate_serve.sh
```

### Running

1. Start the phonegap deployment server and note the URL(s) that the server is listening to.
shankari marked this conversation as resolved.
Show resolved Hide resolved

```
shankari marked this conversation as resolved.
Show resolved Hide resolved
$ npm run serve
npm run serve
....
[phonegap] listening on 10.0.0.14:3000
[phonegap] listening on 192.168.162.1:3000
Expand Down Expand Up @@ -86,6 +96,7 @@ Updating the e-mission-\* plugins or adding new plugins
---
[![osx-build-ios](https://github.com/e-mission/e-mission-phone/actions/workflows/ios-build.yml/badge.svg)](https://github.com/e-mission/e-mission-phone/actions/workflows/ios-build.yml)
[![osx-build-android](https://github.com/e-mission/e-mission-phone/actions/workflows/android-build.yml/badge.svg)](https://github.com/e-mission/e-mission-phone/actions/workflows/android-build.yml)
[![osx-android-prereq-sdk-install](https://github.com/e-mission/e-mission-phone/actions/workflows/android-automated-sdk-install.yml/badge.svg)](https://github.com/e-mission/e-mission-phone/actions/workflows/android-automated-sdk-install.yml)

Pre-requisites
---
Expand All @@ -94,10 +105,10 @@ Pre-requisites
- or this [supposedly easier to use repo](https://github.com/xcpretty/xcode-install)
- **NOTE**: the basic xcode install on Catalina was messed up for me due to a prior installation of command line tools. [These workarounds helped](https://github.com/nodejs/node-gyp/blob/master/macOS_Catalina.md).
- git
- Java 11. Tested with [OpenJDK 11 (Temurin) using AdoptOpenJDK](https://adoptopenjdk.net/releases.html).
- Java 17. Tested with [OpenJDK 17 (Temurin) using Adoptium](https://adoptium.net).
- android SDK; install manually or use setup script below. Note that you only need to run this once **per computer**.
shankari marked this conversation as resolved.
Show resolved Hide resolved
```
$ bash setup/prereq_android_sdk_install.sh
bash setup/prereq_android_sdk_install.sh
```

<details><summary>Expected output</summary>
Expand Down Expand Up @@ -142,26 +153,46 @@ Installing (one time only)
Run the setup script for the platform you want to build

```
$ bash setup/setup_android_native.sh
bash setup/setup_android_native.sh
```
AND/OR
$ bash setup/setup_ios_native.sh
```
bash setup/setup_ios_native.sh
```

**(optional)** Configure by changing the files in `www/json`.
Defaults are in `www/json/*.sample`

```
$ ls www/json/*.sample
$ cp www/json/startupConfig.json.sample www/json/startupConfig.json
$ cp ..... www/json/connectionConfig.json
ls www/json/*.sample
cp www/json/startupConfig.json.sample www/json/startupConfig.json
cp ..... www/json/connectionConfig.json
```

### Activation (after install, and in every new shell)

```
$ source setup/activate_native.sh
source setup/activate_native.sh
```

<details><summary> Expected Output </summary>

```
Activating nvm
Using version <X version number>
Now using node <X version number> (npm <Y version>)
npm version = <Y version>
Adding cocoapods to the path
Verifying /Users/<username>/Library/Android/sk or /Users/<username>/Library/Android/sdk is set
Activating sdkman, and by default, gradle
Ensuring that we use the most recent version of the command line tools
Configuring the repo for building native code
Copied config.cordovabuild.xml -> config.xml and package.cordovabuild.json -> package.json
```

</details>


### Activation (after install, and in every new shell)
niccolopaganini marked this conversation as resolved.
Show resolved Hide resolved

If connecting to a development server over http, make sure to turn on http support on android
Expand All @@ -175,10 +206,24 @@ If connecting to a development server over http, make sure to turn on http suppo
### Run in the emulator
JGreenlee marked this conversation as resolved.
Show resolved Hide resolved

```
$ npx cordova emulate ios
npm run <ios>
```
AND/OR
$ npx cordova emulate android
```
npm run <android>
```
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It is not clear what <ios> and <android> are.

I think we should just give examples of the most common build scripts that we think will be used and list them out here.

npm run build (to build for both Android and iOS platforms)
npm run build-prod-android (to build for Android platform only)
npm run build-prod-ios (to build for iOS platform only)

for builds, refer [`package.cordovabuild.json`](package.cordovabuild.json)
niccolopaganini marked this conversation as resolved.
Show resolved Hide resolved

<details><summary>Expected output</summary>

```
BUILD SUCCESSFUL in 2m 48s
52 actionable tasks: 52 executed
Built the following apk(s):
/Users/<Username>/e-mission-phone/platforms/android/app/build/outputs/apk/debug/app-debug.apk
```

</details>

Creating logos
---
Expand Down Expand Up @@ -223,28 +268,34 @@ Contributing

Add the main repo as upstream

$ git remote add upstream https://github.com/covid19database/phone-app.git
git remote add upstream https://github.com/e-mission/e-mission-phone.git

Create a new branch (IMPORTANT). Please do not submit pull requests from master

$ git checkout -b mybranch
git checkout -b mybranch

Make changes to the branch and commit them

$ git commit
git commit

Push the changes to your local fork

$ git push origin mybranch
git push origin mybranch

Generate a pull request from the UI

Address my review comments

Once I merge the pull request, pull the changes to your fork and delete the branch
```
$ git checkout master
$ git pull upstream master
$ git push origin master
$ git branch -d mybranch
git checkout master
```
```
git pull upstream master
```
```
git push origin master
```
```
git branch -d <branch>
```
Loading