Rename drip to drip.
This commit is contained in:
@@ -1,4 +1,4 @@
|
|||||||
# drip, the open-source cycle tracking app
|
# drip. the open-source cycle tracking app
|
||||||
|
|
||||||
A menstrual cycle tracking app that's open-source and leaves your data on your phone. Use it to track your menstrual cycle and/or for fertility awareness!
|
A menstrual cycle tracking app that's open-source and leaves your data on your phone. Use it to track your menstrual cycle and/or for fertility awareness!
|
||||||
Find more information on [our website](https://bloodyhealth.gitlab.io/).
|
Find more information on [our website](https://bloodyhealth.gitlab.io/).
|
||||||
@@ -29,11 +29,9 @@ Install [Android Studio](https://developer.android.com/studio/) - you'll need it
|
|||||||
|
|
||||||
Make sure you are running Node 10 and npm 6.x (newer versions won't work). It's easiest to switch Node versions using `nvm`, here's how to do it:
|
Make sure you are running Node 10 and npm 6.x (newer versions won't work). It's easiest to switch Node versions using `nvm`, here's how to do it:
|
||||||
|
|
||||||
|
|
||||||
$ curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.0/install.sh | bash
|
$ curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.0/install.sh | bash
|
||||||
$ nvm install v10
|
$ nvm install v10
|
||||||
|
|
||||||
|
|
||||||
#### 3. Get this repository
|
#### 3. Get this repository
|
||||||
|
|
||||||
Clone it with SSH
|
Clone it with SSH
|
||||||
@@ -58,71 +56,79 @@ Open Android Studio and click on "Open an existing Android Studio project". Navi
|
|||||||
Either start a [virtual device in Android Studio](https://developer.android.com/studio/run/emulator) or [set your physical device like your Android phone up](https://developer.android.com/training/basics/firstapp/running-app) to run the app.
|
Either start a [virtual device in Android Studio](https://developer.android.com/studio/run/emulator) or [set your physical device like your Android phone up](https://developer.android.com/training/basics/firstapp/running-app) to run the app.
|
||||||
|
|
||||||
1. Open a terminal and run
|
1. Open a terminal and run
|
||||||
```
|
|
||||||
$ npm run android
|
|
||||||
```
|
|
||||||
|
|
||||||
2. To see logging output, run the following command in another tab:
|
```
|
||||||
```
|
$ npm run android
|
||||||
$ npm run log
|
```
|
||||||
```
|
|
||||||
|
|
||||||
3. Run the following command and select enable hot reloading (see https://facebook.github.io/react-native/docs/debugging.html):
|
2. To see logging output, run the following command in another tab:
|
||||||
```
|
|
||||||
$ adb shell input keyevent 82
|
|
||||||
```
|
|
||||||
|
|
||||||
4. We recommend installing an [ESLint plugin in your editor](https://eslint.org/docs/user-guide/integrations#editors). There's an `.eslintrc` file in this project which will be used by the plugin to check your code for style errors and potential bugs.
|
```
|
||||||
|
$ npm run log
|
||||||
|
```
|
||||||
|
|
||||||
|
3. Run the following command and select enable hot reloading (see https://facebook.github.io/react-native/docs/debugging.html):
|
||||||
|
|
||||||
|
```
|
||||||
|
$ adb shell input keyevent 82
|
||||||
|
```
|
||||||
|
|
||||||
|
4. We recommend installing an [ESLint plugin in your editor](https://eslint.org/docs/user-guide/integrations#editors). There's an `.eslintrc` file in this project which will be used by the plugin to check your code for style errors and potential bugs.
|
||||||
|
|
||||||
#### 6. Run app on iOS
|
#### 6. Run app on iOS
|
||||||
|
|
||||||
Minimum system requirements to run iOS app are as follows:
|
Minimum system requirements to run iOS app are as follows:
|
||||||
|
|
||||||
- MacOS 10.15.7 for Mac users
|
- MacOS 10.15.7 for Mac users
|
||||||
- Xcode 12.3 (I assume, that only command line tools might be enough)
|
- Xcode 12.3 (I assume, that only command line tools might be enough)
|
||||||
|
|
||||||
1. Install XCode dependencies by running the following command from the root project directory:
|
1. Install XCode dependencies by running the following command from the root project directory:
|
||||||
|
|
||||||
```
|
```
|
||||||
$ cd ios && pod install && cd ..
|
$ cd ios && pod install && cd ..
|
||||||
```
|
```
|
||||||
|
|
||||||
2. To run app either open drip workspace ('drip.xcworkspace' file) with XCode and run "Build" or run the following command:
|
2. To run app either open drip workspace ('drip.xcworkspace' file) with XCode and run "Build" or run the following command:
|
||||||
|
|
||||||
```
|
```
|
||||||
$ npm run ios
|
$ npm run ios
|
||||||
```
|
```
|
||||||
|
|
||||||
3. If you are building the app with XCode make sure you are running this as well:
|
3. If you are building the app with XCode make sure you are running this as well:
|
||||||
`$ npm start`
|
`$ npm start`
|
||||||
|
|
||||||
### Troubleshooting
|
### Troubleshooting
|
||||||
|
|
||||||
#### [MacOS] Java problems
|
#### [MacOS] Java problems
|
||||||
|
|
||||||
Make sure that you have Java 1.8 by running `java -version`.
|
Make sure that you have Java 1.8 by running `java -version`.
|
||||||
|
|
||||||
If you don't have Java installed, or your Java version is different, the app may not work. You can try just using Android Studio's Java by prepending it to your `$PATH` in your shell profile:
|
If you don't have Java installed, or your Java version is different, the app may not work. You can try just using Android Studio's Java by prepending it to your `$PATH` in your shell profile:
|
||||||
```
|
` $ export PATH="/Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin:${PATH}" `
|
||||||
$ export PATH="/Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin:${PATH}"
|
|
||||||
```
|
|
||||||
|
|
||||||
Now, `which java` should output `/Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java`, and the correct Java version should be used.
|
Now, `which java` should output `/Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java`, and the correct Java version should be used.
|
||||||
|
|
||||||
#### [MacOS] Ninja
|
#### [MacOS] Ninja
|
||||||
|
|
||||||
If `npm` says `CMake was unable to find a build program corresponding to "Ninja".`:
|
If `npm` says `CMake was unable to find a build program corresponding to "Ninja".`:
|
||||||
```
|
` $ brew install ninja `
|
||||||
$ brew install ninja
|
|
||||||
```
|
|
||||||
|
|
||||||
### [MacOS] adb not on the path
|
### [MacOS] adb not on the path
|
||||||
|
|
||||||
If you get error messages about `adb` not being found on your path:
|
If you get error messages about `adb` not being found on your path:
|
||||||
```
|
` $ ln -s ~/Library/Android/sdk/platform-tools/adb /usr/local/bin/adb `
|
||||||
$ ln -s ~/Library/Android/sdk/platform-tools/adb /usr/local/bin/adb
|
|
||||||
```
|
|
||||||
|
|
||||||
### [MacOS] and XCode 12.5
|
### [MacOS] and XCode 12.5
|
||||||
|
|
||||||
If you run XCode 12.5, more likely you'll have problems building app for iOS. Please use the following fix: https://stackoverflow.com/a/67320887.
|
If you run XCode 12.5, more likely you'll have problems building app for iOS. Please use the following fix: https://stackoverflow.com/a/67320887.
|
||||||
|
|
||||||
If you experience any further issues, please feel free to check out the following threads:
|
If you experience any further issues, please feel free to check out the following threads:
|
||||||
|
|
||||||
- [react-native run-ios build failure on XCode 12.5 beta](https://github.com/react-native-community/cli/issues/1365)
|
- [react-native run-ios build failure on XCode 12.5 beta](https://github.com/react-native-community/cli/issues/1365)
|
||||||
- [Xcode 12.5 troubleshooting guide (RN 0.61/0.62/0.63/0.64)](https://github.com/facebook/react-native/issues/31480)
|
- [Xcode 12.5 troubleshooting guide (RN 0.61/0.62/0.63/0.64)](https://github.com/facebook/react-native/issues/31480)
|
||||||
|
|
||||||
### Clearing project cache
|
### Clearing project cache
|
||||||
|
|
||||||
If you would like to clear project cache and/or re-install project libraries, you can run clear script as follows:
|
If you would like to clear project cache and/or re-install project libraries, you can run clear script as follows:
|
||||||
|
|
||||||
$ npm run clear
|
$ npm run clear
|
||||||
@@ -141,45 +147,43 @@ For example, if you would like to clear android part of the project and re-insta
|
|||||||
## Tests
|
## Tests
|
||||||
|
|
||||||
### Unit tests
|
### Unit tests
|
||||||
|
|
||||||
You can run the tests with:
|
You can run the tests with:
|
||||||
```
|
` $ npm test `
|
||||||
$ npm test
|
|
||||||
```
|
|
||||||
|
|
||||||
### End to end tests
|
### End to end tests
|
||||||
|
|
||||||
1. Check what testing device is specified in [package.json](https://gitlab.com/bloodyhealth/drip/blob/master/package.json) under:
|
1. Check what testing device is specified in [package.json](https://gitlab.com/bloodyhealth/drip/blob/master/package.json) under:
|
||||||
```
|
```
|
||||||
{"detox":
|
{"detox":
|
||||||
{"configurations":
|
{"configurations":
|
||||||
{"name": "NEXUS_DEVICE_OR_WHATEVER_SPECIFIED_DEVICE"}
|
{"name": "NEXUS_DEVICE_OR_WHATEVER_SPECIFIED_DEVICE"}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
2. Check if the current device is already installed on your machine. Go to `cd ~/Android/sdk/emulator/` or wherever you have Android installed on your machine. Here you can run `./emulator -list-avds` and compare the devices with the one you found in step 1.
|
2. Check if the current device is already installed on your machine. Go to `cd ~/Android/sdk/emulator/` or wherever you have Android installed on your machine. Here you can run `./emulator -list-avds` and compare the devices with the one you found in step 1.
|
||||||
3. Open Android Studio and go to -> Tools -> AVD manager -> `+Create virtual device` and select the device checked in the previous step
|
3. Open Android Studio and go to -> Tools -> AVD manager -> `+Create virtual device` and select the device checked in the previous step
|
||||||
4. Use the emulator on your machine to run it without heavy Android Studio, e.g. in `~/Android/Sdk/emulator` OR chose to run the emulator within Android Studio
|
4. Use the emulator on your machine to run it without heavy Android Studio, e.g. in `~/Android/Sdk/emulator` OR chose to run the emulator within Android Studio
|
||||||
4.1 Here run: `$ ./emulator -avd NEXUS_DEVICE_OR_WHATEVER_SPECIFIED_DEVICE`
|
4.1 Here run: `$ ./emulator -avd NEXUS_DEVICE_OR_WHATEVER_SPECIFIED_DEVICE`
|
||||||
4.2 You might need to specify the following environment variables in your zsh or bash file according to where you have it installed. You can find exact path in Android Studio (Android Studio Preferences → Appearance and Behavior → System Settings → Android SDK). After adding environment variables, you might need to restart your terminal or source the modified bash profile (i.e. "source ~/.bash_profile").
|
4.2 You might need to specify the following environment variables in your zsh or bash file according to where you have it installed. You can find exact path in Android Studio (Android Studio Preferences → Appearance and Behavior → System Settings → Android SDK). After adding environment variables, you might need to restart your terminal or source the modified bash profile (i.e. "source ~/.bash_profile").
|
||||||
```
|
` export ANDROID_HOME="/home/myname/Android/Sdk" export ANDROID_SDK_ROOT="/home/myname/Android/Sdk" export ANDROID_AVD_HOME="/home/myname/.android/avd" `
|
||||||
export ANDROID_HOME="/home/myname/Android/Sdk"
|
|
||||||
export ANDROID_SDK_ROOT="/home/myname/Android/Sdk"
|
|
||||||
export ANDROID_AVD_HOME="/home/myname/.android/avd"
|
|
||||||
```
|
|
||||||
5. For the first time you need to get the app on the phone or if you run into this error:
|
5. For the first time you need to get the app on the phone or if you run into this error:
|
||||||
`'app-debug-androidTest.apk' could not be found`
|
`'app-debug-androidTest.apk' could not be found`
|
||||||
--> open a new 2nd tab and run (in your drip folder): `cd android and ./gradlew assembleAndroidTest`
|
--> open a new 2nd tab and run (in your drip folder): `cd android and ./gradlew assembleAndroidTest`
|
||||||
Otherwise just open a new 2nd tab to run (in your drip folder) `npm run android`
|
Otherwise just open a new 2nd tab to run (in your drip folder) `npm run android`
|
||||||
6. Open a new 3rd tab to run `./node_modules/.bin/detox test -c android.emu.debug`
|
6. Open a new 3rd tab to run `./node_modules/.bin/detox test -c android.emu.debug`
|
||||||
|
|
||||||
Hopefully you see the magic happening clicking through the app and happy test results on your console :sun_with_face: !
|
Hopefully you see the magic happening clicking through the app and happy test results on your console :sun_with_face: !
|
||||||
|
|
||||||
## Debugging
|
## Debugging
|
||||||
|
|
||||||
In order to see logging output from the app, run `npm run log` in a separate terminal. You can output specific code you want to see, with:
|
In order to see logging output from the app, run `npm run log` in a separate terminal. You can output specific code you want to see, with:
|
||||||
`console.log(theVariableIWantToSeeHere)`
|
`console.log(theVariableIWantToSeeHere)`
|
||||||
or just a random string to check if this piece of code is actually running:
|
or just a random string to check if this piece of code is actually running:
|
||||||
`console.log("HELLO")`.
|
`console.log("HELLO")`.
|
||||||
|
|
||||||
## NFP rules
|
## NFP rules
|
||||||
|
|
||||||
More information about how the app calculates fertility status and bleeding predictions in the [wiki on Gitlab](https://gitlab.com/bloodyhealth/drip/wikis/home).
|
More information about how the app calculates fertility status and bleeding predictions in the [wiki on Gitlab](https://gitlab.com/bloodyhealth/drip/wikis/home).
|
||||||
|
|
||||||
## Adding a new tracking icon
|
## Adding a new tracking icon
|
||||||
@@ -194,4 +198,5 @@ More information about how the app calculates fertility status and bleeding pred
|
|||||||
5. You should be able to use the icon now within drip, e.g. in Cycle Day Overview and on the chart.
|
5. You should be able to use the icon now within drip, e.g. in Cycle Day Overview and on the chart.
|
||||||
|
|
||||||
## Translation
|
## Translation
|
||||||
|
|
||||||
We are using [Weblate](https://weblate.org/) as translation software.
|
We are using [Weblate](https://weblate.org/) as translation software.
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
{
|
{
|
||||||
"name": "drip",
|
"name": "drip.",
|
||||||
"displayName": "drip"
|
"displayName": "drip."
|
||||||
}
|
}
|
||||||
+30
-3
@@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"labels": {
|
"labels": {
|
||||||
"bleedingPrediction": {
|
"bleedingPrediction": {
|
||||||
"noPrediction": "As soon as you have tracked 3 menstrual cycles, drip will make predictions for the next ones."
|
"noPrediction": "As soon as you have tracked 3 menstrual cycles, drip. will make predictions for the next ones."
|
||||||
},
|
},
|
||||||
"home": {
|
"home": {
|
||||||
"cycleDay": " day of your cycle",
|
"cycleDay": " day of your cycle",
|
||||||
@@ -16,8 +16,35 @@
|
|||||||
},
|
},
|
||||||
"settings": {
|
"settings": {
|
||||||
"license": {
|
"license": {
|
||||||
"title": "drip is an open-source cycle tracking app",
|
"title": "drip. an open-source cycle tracking app",
|
||||||
"text": "Copyright (C) {{currentYear}} Bloody Health GbR\n\nThis program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details: https://www.gnu.org/licenses/gpl-3.0.html\n\nYou can contact us by drip@mailbox.org."
|
"text": "Copyright (C) {{currentYear}} Heart of Code e.V.\n\nThis program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details: https://www.gnu.org/licenses/gpl-3.0.html\n\nYou can contact us at drip@mailbox.org."
|
||||||
|
},
|
||||||
|
"privacyPolicy": {
|
||||||
|
"title": "Privacy Policy",
|
||||||
|
"intro": {
|
||||||
|
"title": "Introduction",
|
||||||
|
"text": `This Privacy Policy sets out how the iOS app 'drip.' uses and protects your personal data that you generate and store within the app.`
|
||||||
|
},
|
||||||
|
"dataUse": {
|
||||||
|
"title": "Data use",
|
||||||
|
"text": `Drip respects and celebrates your privacy. There is no collection of usage data or personal information, no ads, no spyware. Drip can store data related to menstrual health locally on your device.
|
||||||
|
|
||||||
|
This includes:
|
||||||
|
• settings
|
||||||
|
• menstrual cycle tracking data
|
||||||
|
|
||||||
|
The data is used to display statistics and apply fertility awareness rules. This data cannot be accessed by other apps.
|
||||||
|
|
||||||
|
If you wish to delete all your app data you can do so by navigating to Settings, Data and Delete app data. This can also be done by uninstalling the app.`
|
||||||
|
},
|
||||||
|
"permissions": {
|
||||||
|
"title": "Permissions",
|
||||||
|
"text": "For using reminders in drip you need to allow push notifications. If you don't want to use this feature you simply don't allow notifications for the app."
|
||||||
|
},
|
||||||
|
"transparency": {
|
||||||
|
"title": "Transparency",
|
||||||
|
"text": "You can read through the source code of drip to ensure the given information is correct. The source code is like a recipe: It tells you how much and what kind of ingredients you need and how you prepare them to cook a tasty meal or program a funky app.\n\nBuon appetito!"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+22
-22
@@ -11,10 +11,10 @@ export const generalInfo = {
|
|||||||
3. and menstrual bleeding
|
3. and menstrual bleeding
|
||||||
the app helps you identify in which phase of the menstrual cycle you are.
|
the app helps you identify in which phase of the menstrual cycle you are.
|
||||||
|
|
||||||
drip makes period predictions for you and helps you apply NFP fertility awareness rules. But please remember that this app is made by humans, and humans make mistakes. Always think for yourself: "Does this make sense?" Remember, you don't need an app to understand your cycle! However, drip wants to support you and make period tracking easier, more transparent and secure.
|
drip. makes period predictions for you and helps you apply NFP fertility awareness rules. But please remember that this app is made by humans, and humans make mistakes. Always think for yourself: "Does this make sense?" Remember, you don't need an app to understand your cycle! However, drip. wants to support you and make period tracking easier, more transparent and secure.
|
||||||
|
|
||||||
Please find more info on the sympto-thermal method in ${links.wiki.url}.`,
|
Please find more info on the sympto-thermal method in ${links.wiki.url}.`,
|
||||||
noNfpSymptom: `The app allows you to track this symptom for your information, it is not taken into account for any calculation. On the chart you can check how often you track this symptom.`
|
noNfpSymptom: `The app allows you to track this symptom for your information, it is not taken into account for any calculation. On the chart you can check how often you track this symptom.`,
|
||||||
}
|
}
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
@@ -22,7 +22,7 @@ export default {
|
|||||||
title: `Tracking menstrual bleeding`,
|
title: `Tracking menstrual bleeding`,
|
||||||
text: `Tracking menstrual bleeding allows you to know the beginning and the end of a menstrual cycle.
|
text: `Tracking menstrual bleeding allows you to know the beginning and the end of a menstrual cycle.
|
||||||
|
|
||||||
After tracking at least 3 menstrual cycles, drip will give you an overview of
|
After tracking at least 3 menstrual cycles, drip. will give you an overview of
|
||||||
· how long your cycles last on average (in "stats"),
|
· how long your cycles last on average (in "stats"),
|
||||||
· whether the length of your cycles varied significantly (in "stats" and in bleeding predictions)
|
· whether the length of your cycles varied significantly (in "stats" and in bleeding predictions)
|
||||||
· and predict your next 3 cycles with a range of 3 or 5 days (on home screen and "calendar").
|
· and predict your next 3 cycles with a range of 3 or 5 days (on home screen and "calendar").
|
||||||
@@ -33,7 +33,7 @@ Excluding bleeding values is for tracking bleeding when it's not marking the sta
|
|||||||
|
|
||||||
${generalInfo.nfpTfyReminder}`,
|
${generalInfo.nfpTfyReminder}`,
|
||||||
},
|
},
|
||||||
cervix: {
|
cervix: {
|
||||||
title: `Tracking your cervix`,
|
title: `Tracking your cervix`,
|
||||||
text: `The cervix is located inside of the body at the end of the vaginal canal, between the vagina and the uterus.
|
text: `The cervix is located inside of the body at the end of the vaginal canal, between the vagina and the uterus.
|
||||||
|
|
||||||
@@ -42,15 +42,15 @@ Tracking how open or closed and how firm or soft the cervix feels can help deter
|
|||||||
By default, the secondary symptom the app uses for NFP evaluation is cervical mucus, but you can change it to cervix in "Settings" -> "NFP Settings".
|
By default, the secondary symptom the app uses for NFP evaluation is cervical mucus, but you can change it to cervix in "Settings" -> "NFP Settings".
|
||||||
|
|
||||||
· How to identify a fertile cervix?
|
· How to identify a fertile cervix?
|
||||||
A fertile cervix is open and feels soft like your earlobes. In contrast, an infertile cervix feels closed and hard, like the tip of your nose. If the cervix feels anything other than closed and hard, drip takes it as a sign of fertility. On the chart, a fertile cervix is colored in dark yellow, and infertile cervix is colored in light yellow.
|
A fertile cervix is open and feels soft like your earlobes. In contrast, an infertile cervix feels closed and hard, like the tip of your nose. If the cervix feels anything other than closed and hard, drip. takes it as a sign of fertility. On the chart, a fertile cervix is colored in dark yellow, and infertile cervix is colored in light yellow.
|
||||||
|
|
||||||
${generalInfo.chartNfp}
|
${generalInfo.chartNfp}
|
||||||
|
|
||||||
${generalInfo.excludeExplainer}
|
${generalInfo.excludeExplainer}
|
||||||
|
|
||||||
${generalInfo.nfpTfyReminder}`
|
${generalInfo.nfpTfyReminder}`,
|
||||||
},
|
},
|
||||||
desire: {
|
desire: {
|
||||||
title: 'Tracking sexual desire',
|
title: 'Tracking sexual desire',
|
||||||
text: `The app allows you to track sexual desire independently from sexual activity.
|
text: `The app allows you to track sexual desire independently from sexual activity.
|
||||||
|
|
||||||
@@ -58,9 +58,9 @@ ${generalInfo.cycleRelation}
|
|||||||
|
|
||||||
${generalInfo.noNfpSymptom}
|
${generalInfo.noNfpSymptom}
|
||||||
|
|
||||||
${generalInfo.curiousNfp}`
|
${generalInfo.curiousNfp}`,
|
||||||
},
|
},
|
||||||
mood: {
|
mood: {
|
||||||
title: 'Tracking mood',
|
title: 'Tracking mood',
|
||||||
text: `The app allows you to track your mood.
|
text: `The app allows you to track your mood.
|
||||||
|
|
||||||
@@ -68,16 +68,16 @@ ${generalInfo.cycleRelation}
|
|||||||
|
|
||||||
${generalInfo.noNfpSymptom}
|
${generalInfo.noNfpSymptom}
|
||||||
|
|
||||||
${generalInfo.curiousNfp}`
|
${generalInfo.curiousNfp}`,
|
||||||
},
|
},
|
||||||
mucus: {
|
mucus: {
|
||||||
title: 'Tracking cervical mucus',
|
title: 'Tracking cervical mucus',
|
||||||
text: `Cervical mucus can help determine in which phase of the menstrual cycle you are.
|
text: `Cervical mucus can help determine in which phase of the menstrual cycle you are.
|
||||||
|
|
||||||
By default the secondary symptom the app uses for NFP evaluation is cervical mucus.
|
By default the secondary symptom the app uses for NFP evaluation is cervical mucus.
|
||||||
|
|
||||||
· How to identify fertile cervical mucus?
|
· How to identify fertile cervical mucus?
|
||||||
Tracking the feeling and the texture of your cervical mucus on a daily basis helps you identify changes of the quality of the cervical mucus. The values you enter for both feeling and texture of your cervical mucus are combined by drip into one of five NFP-conforming values.
|
Tracking the feeling and the texture of your cervical mucus on a daily basis helps you identify changes of the quality of the cervical mucus. The values you enter for both feeling and texture of your cervical mucus are combined by drip. into one of five NFP-conforming values.
|
||||||
From lowest to best quality:
|
From lowest to best quality:
|
||||||
· t = (dry feeling + no texture),
|
· t = (dry feeling + no texture),
|
||||||
· ∅ = (no feeling + no texture),
|
· ∅ = (no feeling + no texture),
|
||||||
@@ -87,23 +87,23 @@ From lowest to best quality:
|
|||||||
|
|
||||||
On the chart, cervical mucus is colored in blue: the darker the shade of blue the better the quality of your cervical mucus.
|
On the chart, cervical mucus is colored in blue: the darker the shade of blue the better the quality of your cervical mucus.
|
||||||
|
|
||||||
Please note that drip does not yet support "parenthesis values": According to NFP rules, you can qualify a cervical mucus value by putting parentheses around it, to indicate that it doesn't fully meet the descriptors of one of the five categories, and instead is in between. This functionality will be supported in the future.
|
Please note that drip. does not yet support "parenthesis values": According to NFP rules, you can qualify a cervical mucus value by putting parentheses around it, to indicate that it doesn't fully meet the descriptors of one of the five categories, and instead is in between. This functionality will be supported in the future.
|
||||||
|
|
||||||
${generalInfo.chartNfp}
|
${generalInfo.chartNfp}
|
||||||
|
|
||||||
${generalInfo.excludeExplainer}
|
${generalInfo.excludeExplainer}
|
||||||
|
|
||||||
${generalInfo.nfpTfyReminder}`
|
${generalInfo.nfpTfyReminder}`,
|
||||||
},
|
},
|
||||||
note: {
|
note: {
|
||||||
title: 'Notes',
|
title: 'Notes',
|
||||||
text: `Note allows you to track any extra information you want to save. It is the only category that can store information for a date in the future. This can be helpful for reminding you of an appointment.
|
text: `Note allows you to track any extra information you want to save. It is the only category that can store information for a date in the future. This can be helpful for reminding you of an appointment.
|
||||||
|
|
||||||
${generalInfo.noNfpSymptom}
|
${generalInfo.noNfpSymptom}
|
||||||
|
|
||||||
${generalInfo.curiousNfp}`
|
${generalInfo.curiousNfp}`,
|
||||||
},
|
},
|
||||||
pain: {
|
pain: {
|
||||||
title: 'Tracking pain',
|
title: 'Tracking pain',
|
||||||
text: `The app allows you to keep track of different kinds of pain you experience.
|
text: `The app allows you to keep track of different kinds of pain you experience.
|
||||||
|
|
||||||
@@ -111,17 +111,17 @@ ${generalInfo.cycleRelation}
|
|||||||
|
|
||||||
${generalInfo.noNfpSymptom}
|
${generalInfo.noNfpSymptom}
|
||||||
|
|
||||||
${generalInfo.curiousNfp}`
|
${generalInfo.curiousNfp}`,
|
||||||
},
|
},
|
||||||
sex: {
|
sex: {
|
||||||
title: 'Tracking sex and contraceptives',
|
title: 'Tracking sex and contraceptives',
|
||||||
text: `The app allows you to track sex independently from sexual desire. You can differentiate between masturbation and sex with a partner/partners. Here you can also track your contraceptive method(s). Only sexual activity will be shown in the "chart" section, lighter purple indicating solo sex and darker purple partner sex. Did you know that having an orgasm can help release cramps?
|
text: `The app allows you to track sex independently from sexual desire. You can differentiate between masturbation and sex with a partner/partners. Here you can also track your contraceptive method(s). Only sexual activity will be shown in the "chart" section, lighter purple indicating solo sex and darker purple partner sex. Did you know that having an orgasm can help release cramps?
|
||||||
|
|
||||||
${generalInfo.noNfpSymptom}
|
${generalInfo.noNfpSymptom}
|
||||||
|
|
||||||
${generalInfo.curiousNfp}`
|
${generalInfo.curiousNfp}`,
|
||||||
},
|
},
|
||||||
temperature: {
|
temperature: {
|
||||||
title: 'Tracking body basal temperature',
|
title: 'Tracking body basal temperature',
|
||||||
text: `One of the body signs you need to track for knowing your fertility status is your body basal temperature. The body temperature changes over the course of a menstrual cycle, it rises after ovulation.
|
text: `One of the body signs you need to track for knowing your fertility status is your body basal temperature. The body temperature changes over the course of a menstrual cycle, it rises after ovulation.
|
||||||
|
|
||||||
@@ -140,6 +140,6 @@ ${generalInfo.chartNfp}
|
|||||||
|
|
||||||
${generalInfo.excludeExplainer}
|
${generalInfo.excludeExplainer}
|
||||||
|
|
||||||
${generalInfo.nfpTfyReminder}`
|
${generalInfo.nfpTfyReminder}`,
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|||||||
+1
-1
@@ -5,7 +5,7 @@
|
|||||||
<key>CFBundleDevelopmentRegion</key>
|
<key>CFBundleDevelopmentRegion</key>
|
||||||
<string>en</string>
|
<string>en</string>
|
||||||
<key>CFBundleDisplayName</key>
|
<key>CFBundleDisplayName</key>
|
||||||
<string>drip</string>
|
<string>drip.</string>
|
||||||
<key>CFBundleExecutable</key>
|
<key>CFBundleExecutable</key>
|
||||||
<string>$(EXECUTABLE_NAME)</string>
|
<string>$(EXECUTABLE_NAME)</string>
|
||||||
<key>CFBundleIdentifier</key>
|
<key>CFBundleIdentifier</key>
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
Menstrual cycle tracking can help you understand your body symptoms and gives you insights into your menstrual health. Use drip for tracking your menstrual cycle and for fertility awareness. Unlike other menstrual cycle tracking apps, drip is open-source and leaves your data on your phone, meaning you are in control.
|
Menstrual cycle tracking can help you understand your body symptoms and gives you insights into your menstrual health. Use drip. for tracking your menstrual cycle and for fertility awareness. Unlike other menstrual cycle tracking apps, drip. is open-source and leaves your data on your phone, meaning you are in control.
|
||||||
|
|
||||||
Key Features
|
Key Features
|
||||||
• Track your bleeding, fertility, sex, mood, pain, and more if you want
|
• Track your bleeding, fertility, sex, mood, pain, and more if you want
|
||||||
@@ -6,14 +6,14 @@ Key Features
|
|||||||
• Get notified about your next period and required temperature measurements
|
• Get notified about your next period and required temperature measurements
|
||||||
• Easily import, export and password protect your data
|
• Easily import, export and password protect your data
|
||||||
|
|
||||||
What makes drip special
|
What makes drip. special
|
||||||
• Your data, your choice. Everything stays on your device
|
• Your data, your choice. Everything stays on your device
|
||||||
• Not another cute, pink app. drip is designed with gender inclusivity in mind
|
• Not another cute, pink app. drip. is designed with gender inclusivity in mind
|
||||||
• Your body is not a black box. drip is transparent in its calculations and encourages you to think for yourself
|
• Your body is not a black box. drip. is transparent in its calculations and encourages you to think for yourself
|
||||||
• Based on science. drip detects your fertility using the sympto-thermal method
|
• Based on science. drip. detects your fertility using the sympto-thermal method
|
||||||
• Track what you like. Your period only or fertility symptoms, and more
|
• Track what you like. Your period only or fertility symptoms, and more
|
||||||
• Open source. Contribute to the code, the documentation, translations and get involved with the community
|
• Open source. Contribute to the code, the documentation, translations and get involved with the community
|
||||||
• Non-commercial. drip doesn’t sell your data, no ads
|
• Non-commercial. drip. doesn’t sell your data, no ads
|
||||||
|
|
||||||
SPECIAL THANKS TO:
|
SPECIAL THANKS TO:
|
||||||
• All the condriputors!
|
• All the condriputors!
|
||||||
|
|||||||
Generated
+1
-1
@@ -1,5 +1,5 @@
|
|||||||
{
|
{
|
||||||
"name": "drip",
|
"name": "drip.",
|
||||||
"version": "1.2102.28",
|
"version": "1.2102.28",
|
||||||
"lockfileVersion": 1,
|
"lockfileVersion": 1,
|
||||||
"requires": true,
|
"requires": true,
|
||||||
|
|||||||
+1
-1
@@ -1,5 +1,5 @@
|
|||||||
{
|
{
|
||||||
"name": "drip",
|
"name": "drip.",
|
||||||
"version": "1.2102.28",
|
"version": "1.2102.28",
|
||||||
"contributors": [
|
"contributors": [
|
||||||
"Julia Friesel <julia.friesel@gmail.com>",
|
"Julia Friesel <julia.friesel@gmail.com>",
|
||||||
|
|||||||
Reference in New Issue
Block a user