Skip to content

Commit cd04ffd

Browse files
authored
Merge pull request #1 from loopandlearn/initial_version
Initial version
2 parents e0323c5 + afc26dc commit cd04ffd

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

49 files changed

+28720
-16
lines changed

.gitignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
site
2+
.DS_Store
3+
/venv

docs/build/build-options.md

Lines changed: 84 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,84 @@
1+
## Building Options
2+
3+
*LoopFollow* can be built using either the Browser Build or the Mac-Xcode Build method. A paid Apple Developer account is required to use the Browser Build method. Regardless of how you build, you can customize your *LoopFollow* app’s name.
4+
5+
* Browser Build: See [LoopDocs: Browser Build for Other Apps]()
6+
* Mac-Xcode: [Build *LoopFollow* Script for Mac-Xcode](#build-loopfollow-script-for-mac-xcode)
7+
8+
9+
### Build LoopFollow Script for Mac-Xcode
10+
11+
Carefully read the information in the terminal before making any choices.
12+
13+
Step 1: Open Terminal
14+
15+
> Tip: Press Command-Space to open spotlight search. Start typing “term” (without the quotes) and you will see the Terminal application icon in the box. Hit enter to open.
16+
17+
Step 2: Copy the entire line starting with /bin/bash and then Paste the line into Terminal and enter
18+
19+
Click on the copy icon at right of the box below to copy it. You’ll see Copied to Clipboard briefly.
20+
21+
``` { .bash .copy title="Copy and Paste to start the Build LoopFollow Script" }
22+
/bin/bash -c "$(curl -fsSL \
23+
https://raw.githubusercontent.com/loopandlearn/lnl-scripts/main/BuildLoopFollow.sh)"
24+
```
25+
26+
Step 3: Choose from one of the options presented by the script
27+
28+
> If you are not following multiple Loopers, always choose 1 for the latest release.
29+
30+
You are prompted to enter a custom name if you want or you can continue using the LoopFollow default name
31+
32+
> If you are following up to 3 Loopers, choose option 1, 2 or 3.
33+
34+
* Each Looper can have a unique name displayed for the app
35+
* Each time you download using the script, the name you selected the first time is remembered, but editing instructions are provided
36+
37+
To test a specific feature that is only found in the dev branch, choose option 4. This is not typical, and only builds to the app associated with Looper #1
38+
39+
### Run LoopFollow on Mac using TestFlight
40+
41+
If you used the Browser Build method, follow these instructions to run LoopFollow on your Mac computer using TestFlight. (You can also use an iPad.)
42+
43+
* You need to install the TestFlight app on your computer
44+
* The TestFlight app on the Mac shows the same set of builds and uses the same installation procedure as shown in LoopDocs for installing apps on a phone from TestFlight
45+
* Install on computer from TestFlight
46+
* You need to enter the data source and configuration values into the app on your computer
47+
48+
From Mac system settings/notifications, scroll down to LoopFollow and enable notifications with the options you want.
49+
50+
### Run LoopFollow on your Mac with Mac-Xcode Build
51+
52+
1. Build LoopFollow to your Mac with Xcode (choose My Mac (Mac Catalyst) as the device)
53+
2. Click Stop to close the running app that is started by Xcode
54+
3. On the left side of Xcode, click on the Folder icon
55+
4. Click to open the LoopFollow folder list
56+
5. Click to open the LoopFollow/Products folder
57+
6. Right-click (or Control-click) on “LoopFollow.app” and select Show in Finder
58+
7. First time on the Mac:
59+
* Drag the LoopFollow.app icon to your Applications folder in Finder
60+
* From Mac system settings/notifications, scroll down to LoopFollow and enable notifications with the options you want
61+
8. When updating on your Mac
62+
* Make sure you close the LoopFollow app currently running on your computer
63+
* Drag the LoopFollow.app icon to your Applications folder in Finder
64+
* Most people choose to replace the application, but you can keep both if you prefer
65+
* All configurations and settings are maintained
66+
67+
### Selection of Branch to Build
68+
69+
`main` vs. `dev`
70+
71+
*LoopFollow* users should build *LoopFollow*-main. New features are tested in the dev branch. Once they are thoroughly tested, they are merged into main. Experienced users can test *LoopFollow*-dev, but there will be minimal support. Any issues found with *LoopFollow*-dev should be reported in GitHub.
72+
73+
### Updates
74+
75+
When modifications and versions are updated, you might see activity at GitHub. Please wait for the release message to be posted at [LoopFollow Releases](https://github.com/loopandlearn/LoopFollow/releases) before using the updated versions for the `main` branch of LoopFollow, LoopFollow_Second and LoopFollow_Third.
76+
77+
### Version Numbers
78+
79+
Updates to the `main` branch (releases) have a version number that ends in 0; for example, 3.1.0.
80+
81+
* Immediately following the release, the `dev` branch is at the same version as `main` indicating the code is identical
82+
* Each time a feature is merged into the `dev` branch, the final number increments; for example, 3.1.1, 3.1.2
83+
* When the next release is made, the second digit is incremented and the final digit is restore to 0 for both `main` and `dev`; for example, 3.2.0
84+

docs/faqs/glossary.md

Lines changed: 132 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,132 @@
1+
# Glossary
2+
3+
Each item in the glossary is also a Tooltip. The word or phrase is repeated in parentheses to assist those using Google Translate.
4+
5+
When Google Translate is selected:
6+
7+
* Tooltips, indicated by dashed underline, continue to be shown in English
8+
* On the Glossary page
9+
* The first instance (in bold) remains in English
10+
* The second instance (in parentheses) is translated to your selected language
11+
12+
**<span translate="no">API</span>**&nbsp; (API): Application Programming Interface
13+
14+
**<span translate="no">APN</span>**&nbsp; (APN): Apple Push Notification service
15+
16+
**<span translate="no">App Group</span>**&nbsp; (App Group): a unique identifier that Apple users for a given app, yours has your TEAMID embedded in it
17+
18+
**<span translate="no">BLE</span>**&nbsp; (BLE): Bluetooth low energy, used for communication by phones, CGM and some pumps
19+
20+
**<span translate="no">branch</span>**&nbsp; (branch): version of code within a single repository or workspace repository
21+
22+
**<span translate="no">CAGE</span>**&nbsp; (CAGE): cannula (or pump site) age on Nightscout site
23+
24+
**<span translate="no">Certificate</span>**&nbsp; (Certificate): Apple certificate is used to sign your iOS or Mac apps - tied to but different from your permanent Developer ID
25+
26+
**<span translate="no">CGM</span>**&nbsp; (CGM): continuous glucose monitor, wearable medical device that measures and reports glucose in interstitial fluid
27+
28+
**<span translate="no">clone</span>**&nbsp; (clone): create a copy of a repository on your computer including revision history and ability to update using git commands
29+
30+
**<span translate="no">COB</span>**&nbsp; (COB): Carbs on Board, affects automated insulin delivery
31+
32+
**<span translate="no">commit</span>**&nbsp; (commit): a formal change to files in a repository; each commit has an alphanumeric identifier (SHA-1)
33+
34+
**<span translate="no">Correction Factor</span>**&nbsp; (Correction Factor): how many points your blood sugar will drop for each unit of insulin
35+
36+
**<span translate="no">CR</span>**&nbsp; (CR): Carb Ratio; how many grams of carbs are covered by one unit of rapid-acting insulin
37+
38+
**<span translate="no">DIA</span>**&nbsp; (DIA): Duration of Insulin Action, the full time insulin is active including a long, low-level tail
39+
40+
**<span translate="no">DIY</span>**&nbsp; (DIY): Do it yourself, a common acronym for the open-source software community (and the maker community)
41+
42+
**<span translate="no">fork</span>**&nbsp; (fork): a copy of code in a github repository other than the original
43+
44+
**<span translate="no">GIF</span>**&nbsp; (GIF): Graphics Interchange Format (GIF) can be used for small animations and low-resolution video clips
45+
46+
**<span translate="no">git</span>**&nbsp; (git): a tool for version control
47+
48+
**<span translate="no">GitHub</span>**&nbsp; (GitHub): an online service for storing repositories, accessible from a browser
49+
50+
**<span translate="no">github.com</span>**&nbsp; (github.com): an online service for storing repositories, accessible from a browser
51+
52+
**<span translate="no">Glucose Chart</span>**&nbsp; (Glucose Chart): Display of measured and predicted glucose values
53+
54+
**<span translate="no">GMT</span>**&nbsp; (GMT): Greenwich Mean Time is mean (average) solar time at 0 degrees longitude, see UTC
55+
56+
**<span translate="no">Guardrails</span>**&nbsp; (Guardrails): limits in the code for user selected settings, recommended and absolute limits are provided
57+
58+
**<span translate="no">Hamburger Menu</span>**&nbsp; (Hamburger Menu): three parallel lines that, when tapped, open a new menu
59+
60+
**<span translate="no">Identifiers</span>**&nbsp; (Identifiers): names of modules found on your Apple Developer Identifiers page that are required for GitHub build method
61+
62+
**<span translate="no">IOB</span>**&nbsp; (IOB): Insulin on Board, affects automated insulin delivery: the current active insulin (above or below the basal rate)
63+
64+
**<span translate="no">iOS</span>**&nbsp; (iOS): operating system used by Apple Mobile devices (iPhone, iPod, iPad)
65+
66+
**<span translate="no">ISF</span>**&nbsp; (ISF): Insulin Sensitivity Factor; how many points your blood sugar will drop for each unit of insulin; sometimes called Correction Factor
67+
68+
**<span translate="no">Issue</span>**&nbsp; (Issue): On github - a formal method to report a problem, either code behavior or documentation
69+
70+
**<span translate="no">JSON</span>**&nbsp; (JSON): JavaScript Object Notation; a standard data interchange format that is text-based and human readable
71+
72+
**<span translate="no">macOS</span>**&nbsp; (macOS): operating system for Mac computer
73+
74+
**<span translate="no">Loop and Learn</span>**&nbsp; (Loop and Learn): A support group with mentors and developers who support the OS-AID community
75+
76+
**<span translate="no">Loop</span>**&nbsp; (Loop): With a capital L, Loop is one of several do-it-yourself artifical pancreas systems
77+
78+
**<span translate="no">LoopFollow</span>**&nbsp; (LoopFollow): LoopFollow combines custom alerts and display from many open-source apps such as Loop, Trio and Nigthscout
79+
80+
**<span translate="no">Match-Secrets</span>**&nbsp; (Match-Secrets): a private repository you must create in your github account, stores keys required to build with github Build Actions
81+
82+
**<span translate="no">MTB</span>**&nbsp; (MTB): Manual Temporary Basal: user initiated temporary basal, Omnipod Common feature
83+
84+
**<span translate="no">MDT</span>**&nbsp; (MDT): common abbreviation for Medtronic pumps
85+
86+
**<span translate="no">modal</span>**&nbsp; (modal): message or alert appearing in front of app that must be acknowledged to return to app
87+
88+
**<span translate="no">NFC</span>**&nbsp; (NFC): Near-Field Communication is used for scanning devices such as Libre sensors
89+
90+
**<span translate="no">Nightscout</span>**&nbsp; (Nightscout): a personal website used to view your glucose and diabetes management data.
91+
92+
**<span translate="no">Omnipod</span>**&nbsp; (Omnipod): Insulet tubeless insulin pump
93+
94+
**<span translate="no">OS-AID</span>**&nbsp; (OS-AID): Open Source Automated Insulin Delivery systems
95+
96+
**<span translate="no">PR</span>**&nbsp; (PR): Pull Request - a formal method to request changes to a repository
97+
98+
**<span translate="no">Provisioning Profile</span>**&nbsp; (Provisioning Profile): associates your app with your Developer ID and limits app lifetime to 1 year (paid) or 1 week (free)
99+
100+
**<span translate="no">Pull Request</span>**&nbsp; (Pull Request): formal method to request changes to a repository
101+
102+
**<span translate="no">QR</span>**&nbsp; (QR): a machine-readable code consisting of an array of black and white squares
103+
104+
**<span translate="no">repository</span>**&nbsp; (repository): contains project files and each file's revision history
105+
106+
**<span translate="no">TEAMID</span>**&nbsp; (TEAMID): One of 6 Secrets: Apple Developer account member number
107+
108+
**<span translate="no">FASTLANE_ISSUER_ID</span>**&nbsp; (FASTLANE_ISSUER_ID): One of 6 Secrets: the issuer ID is associated with your Apple Developer ID and never changes
109+
110+
**<span translate="no">FASTLANE_KEY_ID</span>**&nbsp; (FASTLANE_KEY_ID): One of 6 Secrets: Key ID provided when you create an API key in App Store Connect; it is associated with the FASTLANE_KEY
111+
112+
**<span translate="no">FASTLANE_KEY</span>**&nbsp; (FASTLANE_KEY): One of 6 Secrets: Really long key (several lines); it and FASTLANE_KEY_ID are generated together
113+
114+
**<span translate="no">GH_PAT</span>**&nbsp; (GH_PAT): One of 6 Secrets: Generated with your GitHub account; set it to never expire
115+
116+
**<span translate="no">MATCH_PASSWORD</span>**&nbsp; (MATCH_PASSWORD): One of 6 Secrets: Git repo encryption passphrase, used to encrypt the Match-Secrets repository when it is created. You must save and use the same MATCH_PASSWORD for every repository if you build multiple apps.
117+
118+
**<span translate="no">SHA-1</span>**&nbsp; (SHA-1): Secure Hash Algorithm 1; used to generate an alphanumeric code for commits in git (github)
119+
120+
**<span translate="no">Terminal</span>**&nbsp; (Terminal): interface for entering commands to the computer
121+
122+
**<span translate="no">TestFlight</span>**&nbsp; (TestFlight): a method to distribute apps without direct connection
123+
124+
**<span translate="no">Tooltip</span>**&nbsp; (Tooltip): brief definitions provided for important terms and abbreviations on the website
125+
126+
**<span translate="no">URL</span>**&nbsp; (URL): website address (Uniform Resource Locator)
127+
128+
**<span translate="no">watchOS</span>**&nbsp; (watchOS): Apple watch operating system; must be compatible with phone iOS
129+
130+
**<span translate="no">workflow</span>**&nbsp; (workflow): a set of instructions to GitHub to perform an action; the instruction files are found in the .github/workflows folder of the repository
131+
132+
**<span translate="no">Xcode</span>**&nbsp; (Xcode): program used to build an app

docs/faqs/lf-faqs.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
2+
🚧 Documentation Under Construction 🚧
3+
4+
<!--todo-->
5+
<!--Notes: be sure to add this info
6+
7+
-->
8+
9+
Pro Tip: If you are experiencing audible and visible glucose alerts every single minute, disable Persistent Notifications. Go to LoopFollow, Settings, General Settings to see the screen in the graphic below.

0 commit comments

Comments
 (0)