404 - Page not found
+Copy the URL and report it here.
+ + +diff --git a/.buildinfo b/.buildinfo new file mode 100644 index 00000000..2df3689b --- /dev/null +++ b/.buildinfo @@ -0,0 +1,4 @@ +# Sphinx build info version 1 +# This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done. +config: 509d127c5ef4496493be718a2d00a444 +tags: d77d1c0d9ca2f4c8421862c7c5a0d620 diff --git a/.doctrees/404.doctree b/.doctrees/404.doctree new file mode 100644 index 00000000..488846bc Binary files /dev/null and b/.doctrees/404.doctree differ diff --git a/.doctrees/clinicians/home.doctree b/.doctrees/clinicians/home.doctree new file mode 100644 index 00000000..fcc4c34f Binary files /dev/null and b/.doctrees/clinicians/home.doctree differ diff --git a/.doctrees/clinicians/reports.doctree b/.doctrees/clinicians/reports.doctree new file mode 100644 index 00000000..3cc524d8 Binary files /dev/null and b/.doctrees/clinicians/reports.doctree differ diff --git a/.doctrees/clinicians/setup.doctree b/.doctrees/clinicians/setup.doctree new file mode 100644 index 00000000..e2f13b1e Binary files /dev/null and b/.doctrees/clinicians/setup.doctree differ diff --git a/.doctrees/environment.pickle b/.doctrees/environment.pickle new file mode 100644 index 00000000..5ef68d23 Binary files /dev/null and b/.doctrees/environment.pickle differ diff --git a/.doctrees/index.doctree b/.doctrees/index.doctree new file mode 100644 index 00000000..0a0bb8e6 Binary files /dev/null and b/.doctrees/index.doctree differ diff --git a/.doctrees/nightscout/admin_tools.doctree b/.doctrees/nightscout/admin_tools.doctree new file mode 100644 index 00000000..0b1995e8 Binary files /dev/null and b/.doctrees/nightscout/admin_tools.doctree differ diff --git a/.doctrees/nightscout/advanced.doctree b/.doctrees/nightscout/advanced.doctree new file mode 100644 index 00000000..ca2646ba Binary files /dev/null and b/.doctrees/nightscout/advanced.doctree differ diff --git a/.doctrees/nightscout/close_loop.doctree b/.doctrees/nightscout/close_loop.doctree new file mode 100644 index 00000000..fa5c6434 Binary files /dev/null and b/.doctrees/nightscout/close_loop.doctree differ diff --git a/.doctrees/nightscout/database.doctree b/.doctrees/nightscout/database.doctree new file mode 100644 index 00000000..2dd21a4f Binary files /dev/null and b/.doctrees/nightscout/database.doctree differ diff --git a/.doctrees/nightscout/discover.doctree b/.doctrees/nightscout/discover.doctree new file mode 100644 index 00000000..cea48319 Binary files /dev/null and b/.doctrees/nightscout/discover.doctree differ diff --git a/.doctrees/nightscout/dns.doctree b/.doctrees/nightscout/dns.doctree new file mode 100644 index 00000000..d0cea823 Binary files /dev/null and b/.doctrees/nightscout/dns.doctree differ diff --git a/.doctrees/nightscout/docker.doctree b/.doctrees/nightscout/docker.doctree new file mode 100644 index 00000000..81f63bb5 Binary files /dev/null and b/.doctrees/nightscout/docker.doctree differ diff --git a/.doctrees/nightscout/downloaders.doctree b/.doctrees/nightscout/downloaders.doctree new file mode 100644 index 00000000..622c8f33 Binary files /dev/null and b/.doctrees/nightscout/downloaders.doctree differ diff --git a/.doctrees/nightscout/first_setup.doctree b/.doctrees/nightscout/first_setup.doctree new file mode 100644 index 00000000..b9e13128 Binary files /dev/null and b/.doctrees/nightscout/first_setup.doctree differ diff --git a/.doctrees/nightscout/github.doctree b/.doctrees/nightscout/github.doctree new file mode 100644 index 00000000..4af5bca1 Binary files /dev/null and b/.doctrees/nightscout/github.doctree differ diff --git a/.doctrees/nightscout/ifttt.doctree b/.doctrees/nightscout/ifttt.doctree new file mode 100644 index 00000000..2e6bb8ae Binary files /dev/null and b/.doctrees/nightscout/ifttt.doctree differ diff --git a/.doctrees/nightscout/multiadmin.doctree b/.doctrees/nightscout/multiadmin.doctree new file mode 100644 index 00000000..31d71eb5 Binary files /dev/null and b/.doctrees/nightscout/multiadmin.doctree differ diff --git a/.doctrees/nightscout/new_user.doctree b/.doctrees/nightscout/new_user.doctree new file mode 100644 index 00000000..7f4d6f9c Binary files /dev/null and b/.doctrees/nightscout/new_user.doctree differ diff --git a/.doctrees/nightscout/platform.doctree b/.doctrees/nightscout/platform.doctree new file mode 100644 index 00000000..fb92f6b5 Binary files /dev/null and b/.doctrees/nightscout/platform.doctree differ diff --git a/.doctrees/nightscout/plugins-old.doctree b/.doctrees/nightscout/plugins-old.doctree new file mode 100644 index 00000000..ce11047c Binary files /dev/null and b/.doctrees/nightscout/plugins-old.doctree differ diff --git a/.doctrees/nightscout/plugins-v15.doctree b/.doctrees/nightscout/plugins-v15.doctree new file mode 100644 index 00000000..402f80c1 Binary files /dev/null and b/.doctrees/nightscout/plugins-v15.doctree differ diff --git a/.doctrees/nightscout/profile_editor.doctree b/.doctrees/nightscout/profile_editor.doctree new file mode 100644 index 00000000..ac6c49d9 Binary files /dev/null and b/.doctrees/nightscout/profile_editor.doctree differ diff --git a/.doctrees/nightscout/pushover.doctree b/.doctrees/nightscout/pushover.doctree new file mode 100644 index 00000000..69bf0503 Binary files /dev/null and b/.doctrees/nightscout/pushover.doctree differ diff --git a/.doctrees/nightscout/reports.doctree b/.doctrees/nightscout/reports.doctree new file mode 100644 index 00000000..82073495 Binary files /dev/null and b/.doctrees/nightscout/reports.doctree differ diff --git a/.doctrees/nightscout/security.doctree b/.doctrees/nightscout/security.doctree new file mode 100644 index 00000000..09e2c905 Binary files /dev/null and b/.doctrees/nightscout/security.doctree differ diff --git a/.doctrees/nightscout/setup_variables.doctree b/.doctrees/nightscout/setup_variables.doctree new file mode 100644 index 00000000..f3dc90e5 Binary files /dev/null and b/.doctrees/nightscout/setup_variables.doctree differ diff --git a/.doctrees/nightscout/stringhelp.doctree b/.doctrees/nightscout/stringhelp.doctree new file mode 100644 index 00000000..6065c9d8 Binary files /dev/null and b/.doctrees/nightscout/stringhelp.doctree differ diff --git a/.doctrees/nightscout/tokens.doctree b/.doctrees/nightscout/tokens.doctree new file mode 100644 index 00000000..a81d09af Binary files /dev/null and b/.doctrees/nightscout/tokens.doctree differ diff --git a/.doctrees/nightscout/ubuntu.doctree b/.doctrees/nightscout/ubuntu.doctree new file mode 100644 index 00000000..440b0846 Binary files /dev/null and b/.doctrees/nightscout/ubuntu.doctree differ diff --git a/.doctrees/nightscout/wearable.doctree b/.doctrees/nightscout/wearable.doctree new file mode 100644 index 00000000..c9b0853d Binary files /dev/null and b/.doctrees/nightscout/wearable.doctree differ diff --git a/.doctrees/nightscout/xdripteam.doctree b/.doctrees/nightscout/xdripteam.doctree new file mode 100644 index 00000000..597dcb85 Binary files /dev/null and b/.doctrees/nightscout/xdripteam.doctree differ diff --git a/.doctrees/pages/configure/index.doctree b/.doctrees/pages/configure/index.doctree new file mode 100644 index 00000000..a793c6a8 Binary files /dev/null and b/.doctrees/pages/configure/index.doctree differ diff --git a/.doctrees/pages/mongostring/index.doctree b/.doctrees/pages/mongostring/index.doctree new file mode 100644 index 00000000..3a645675 Binary files /dev/null and b/.doctrees/pages/mongostring/index.doctree differ diff --git a/.doctrees/pages/update-fork/index.doctree b/.doctrees/pages/update-fork/index.doctree new file mode 100644 index 00000000..3644fe0a Binary files /dev/null and b/.doctrees/pages/update-fork/index.doctree differ diff --git a/.doctrees/translate.doctree b/.doctrees/translate.doctree new file mode 100644 index 00000000..7081a53a Binary files /dev/null and b/.doctrees/translate.doctree differ diff --git a/.doctrees/troubleshoot/atlas.doctree b/.doctrees/troubleshoot/atlas.doctree new file mode 100644 index 00000000..eaeea24c Binary files /dev/null and b/.doctrees/troubleshoot/atlas.doctree differ diff --git a/.doctrees/troubleshoot/azure.doctree b/.doctrees/troubleshoot/azure.doctree new file mode 100644 index 00000000..04da931a Binary files /dev/null and b/.doctrees/troubleshoot/azure.doctree differ diff --git a/.doctrees/troubleshoot/cleanup.doctree b/.doctrees/troubleshoot/cleanup.doctree new file mode 100644 index 00000000..735d4799 Binary files /dev/null and b/.doctrees/troubleshoot/cleanup.doctree differ diff --git a/.doctrees/troubleshoot/connection_string.doctree b/.doctrees/troubleshoot/connection_string.doctree new file mode 100644 index 00000000..c0d995eb Binary files /dev/null and b/.doctrees/troubleshoot/connection_string.doctree differ diff --git a/.doctrees/troubleshoot/dexcom_bridge.doctree b/.doctrees/troubleshoot/dexcom_bridge.doctree new file mode 100644 index 00000000..d1426695 Binary files /dev/null and b/.doctrees/troubleshoot/dexcom_bridge.doctree differ diff --git a/.doctrees/troubleshoot/fly.io.doctree b/.doctrees/troubleshoot/fly.io.doctree new file mode 100644 index 00000000..ea9dc719 Binary files /dev/null and b/.doctrees/troubleshoot/fly.io.doctree differ diff --git a/.doctrees/troubleshoot/github.doctree b/.doctrees/troubleshoot/github.doctree new file mode 100644 index 00000000..824c5643 Binary files /dev/null and b/.doctrees/troubleshoot/github.doctree differ diff --git a/.doctrees/troubleshoot/heroku.doctree b/.doctrees/troubleshoot/heroku.doctree new file mode 100644 index 00000000..e48cc24e Binary files /dev/null and b/.doctrees/troubleshoot/heroku.doctree differ diff --git a/.doctrees/troubleshoot/northflank.doctree b/.doctrees/troubleshoot/northflank.doctree new file mode 100644 index 00000000..41655ef6 Binary files /dev/null and b/.doctrees/troubleshoot/northflank.doctree differ diff --git a/.doctrees/troubleshoot/railway.doctree b/.doctrees/troubleshoot/railway.doctree new file mode 100644 index 00000000..ec8bcf2a Binary files /dev/null and b/.doctrees/troubleshoot/railway.doctree differ diff --git a/.doctrees/troubleshoot/render.doctree b/.doctrees/troubleshoot/render.doctree new file mode 100644 index 00000000..9f996f5f Binary files /dev/null and b/.doctrees/troubleshoot/render.doctree differ diff --git a/.doctrees/troubleshoot/troublehoot.doctree b/.doctrees/troubleshoot/troublehoot.doctree new file mode 100644 index 00000000..b7592318 Binary files /dev/null and b/.doctrees/troubleshoot/troublehoot.doctree differ diff --git a/.doctrees/troubleshoot/troubleshoot.doctree b/.doctrees/troubleshoot/troubleshoot.doctree new file mode 100644 index 00000000..fd6fa92c Binary files /dev/null and b/.doctrees/troubleshoot/troubleshoot.doctree differ diff --git a/.doctrees/update/dev_branch.doctree b/.doctrees/update/dev_branch.doctree new file mode 100644 index 00000000..750154a9 Binary files /dev/null and b/.doctrees/update/dev_branch.doctree differ diff --git a/.doctrees/update/downgrade.doctree b/.doctrees/update/downgrade.doctree new file mode 100644 index 00000000..af60800f Binary files /dev/null and b/.doctrees/update/downgrade.doctree differ diff --git a/.doctrees/update/redeploy.doctree b/.doctrees/update/redeploy.doctree new file mode 100644 index 00000000..417578b5 Binary files /dev/null and b/.doctrees/update/redeploy.doctree differ diff --git a/.doctrees/update/upd_stack.doctree b/.doctrees/update/upd_stack.doctree new file mode 100644 index 00000000..b1f079cd Binary files /dev/null and b/.doctrees/update/upd_stack.doctree differ diff --git a/.doctrees/update/update.doctree b/.doctrees/update/update.doctree new file mode 100644 index 00000000..1e900a05 Binary files /dev/null and b/.doctrees/update/update.doctree differ diff --git a/.doctrees/uploader/setup.doctree b/.doctrees/uploader/setup.doctree new file mode 100644 index 00000000..464054e6 Binary files /dev/null and b/.doctrees/uploader/setup.doctree differ diff --git a/.doctrees/uploader/uploaders.doctree b/.doctrees/uploader/uploaders.doctree new file mode 100644 index 00000000..a4089604 Binary files /dev/null and b/.doctrees/uploader/uploaders.doctree differ diff --git a/.doctrees/uploader/xdripcarelink.doctree b/.doctrees/uploader/xdripcarelink.doctree new file mode 100644 index 00000000..6c256428 Binary files /dev/null and b/.doctrees/uploader/xdripcarelink.doctree differ diff --git a/.doctrees/vendors/NAS/synology.doctree b/.doctrees/vendors/NAS/synology.doctree new file mode 100644 index 00000000..3adb6852 Binary files /dev/null and b/.doctrees/vendors/NAS/synology.doctree differ diff --git a/.doctrees/vendors/VPS/docker.doctree b/.doctrees/vendors/VPS/docker.doctree new file mode 100644 index 00000000..dfba5e73 Binary files /dev/null and b/.doctrees/vendors/VPS/docker.doctree differ diff --git a/.doctrees/vendors/VPS/ubuntu.doctree b/.doctrees/vendors/VPS/ubuntu.doctree new file mode 100644 index 00000000..7e477893 Binary files /dev/null and b/.doctrees/vendors/VPS/ubuntu.doctree differ diff --git a/.doctrees/vendors/azure/migrate.doctree b/.doctrees/vendors/azure/migrate.doctree new file mode 100644 index 00000000..44a27526 Binary files /dev/null and b/.doctrees/vendors/azure/migrate.doctree differ diff --git a/.doctrees/vendors/azure/new_user.doctree b/.doctrees/vendors/azure/new_user.doctree new file mode 100644 index 00000000..fa78df84 Binary files /dev/null and b/.doctrees/vendors/azure/new_user.doctree differ diff --git a/.doctrees/vendors/azure/new_user_a.doctree b/.doctrees/vendors/azure/new_user_a.doctree new file mode 100644 index 00000000..73977aad Binary files /dev/null and b/.doctrees/vendors/azure/new_user_a.doctree differ diff --git a/.doctrees/vendors/azure/new_user_b.doctree b/.doctrees/vendors/azure/new_user_b.doctree new file mode 100644 index 00000000..6fb06d15 Binary files /dev/null and b/.doctrees/vendors/azure/new_user_b.doctree differ diff --git a/.doctrees/vendors/digitalocean/new_user.doctree b/.doctrees/vendors/digitalocean/new_user.doctree new file mode 100644 index 00000000..6fe8b4d6 Binary files /dev/null and b/.doctrees/vendors/digitalocean/new_user.doctree differ diff --git a/.doctrees/vendors/fly.io/new_user.doctree b/.doctrees/vendors/fly.io/new_user.doctree new file mode 100644 index 00000000..ba0eddab Binary files /dev/null and b/.doctrees/vendors/fly.io/new_user.doctree differ diff --git a/.doctrees/vendors/github/create.doctree b/.doctrees/vendors/github/create.doctree new file mode 100644 index 00000000..8188fb73 Binary files /dev/null and b/.doctrees/vendors/github/create.doctree differ diff --git a/.doctrees/vendors/github/delete.doctree b/.doctrees/vendors/github/delete.doctree new file mode 100644 index 00000000..c4ee1f6a Binary files /dev/null and b/.doctrees/vendors/github/delete.doctree differ diff --git a/.doctrees/vendors/github/update.doctree b/.doctrees/vendors/github/update.doctree new file mode 100644 index 00000000..62d7fce3 Binary files /dev/null and b/.doctrees/vendors/github/update.doctree differ diff --git a/.doctrees/vendors/github/update_b.doctree b/.doctrees/vendors/github/update_b.doctree new file mode 100644 index 00000000..6e03ffb6 Binary files /dev/null and b/.doctrees/vendors/github/update_b.doctree differ diff --git a/.doctrees/vendors/google/new_user.doctree b/.doctrees/vendors/google/new_user.doctree new file mode 100644 index 00000000..a2c51d70 Binary files /dev/null and b/.doctrees/vendors/google/new_user.doctree differ diff --git a/.doctrees/vendors/heroku.doctree b/.doctrees/vendors/heroku.doctree new file mode 100644 index 00000000..6043694b Binary files /dev/null and b/.doctrees/vendors/heroku.doctree differ diff --git a/.doctrees/vendors/heroku/ecoplan.doctree b/.doctrees/vendors/heroku/ecoplan.doctree new file mode 100644 index 00000000..5a466ecd Binary files /dev/null and b/.doctrees/vendors/heroku/ecoplan.doctree differ diff --git a/.doctrees/vendors/heroku/hobbyplan.doctree b/.doctrees/vendors/heroku/hobbyplan.doctree new file mode 100644 index 00000000..475f625a Binary files /dev/null and b/.doctrees/vendors/heroku/hobbyplan.doctree differ diff --git a/.doctrees/vendors/heroku/mfa.doctree b/.doctrees/vendors/heroku/mfa.doctree new file mode 100644 index 00000000..61c1b8d6 Binary files /dev/null and b/.doctrees/vendors/heroku/mfa.doctree differ diff --git a/.doctrees/vendors/heroku/migrate.doctree b/.doctrees/vendors/heroku/migrate.doctree new file mode 100644 index 00000000..092be5b6 Binary files /dev/null and b/.doctrees/vendors/heroku/migrate.doctree differ diff --git a/.doctrees/vendors/heroku/new_user.doctree b/.doctrees/vendors/heroku/new_user.doctree new file mode 100644 index 00000000..12775781 Binary files /dev/null and b/.doctrees/vendors/heroku/new_user.doctree differ diff --git a/.doctrees/vendors/mongodb/atlas.doctree b/.doctrees/vendors/mongodb/atlas.doctree new file mode 100644 index 00000000..5c304942 Binary files /dev/null and b/.doctrees/vendors/mongodb/atlas.doctree differ diff --git a/.doctrees/vendors/northflank/database.doctree b/.doctrees/vendors/northflank/database.doctree new file mode 100644 index 00000000..4aac4749 Binary files /dev/null and b/.doctrees/vendors/northflank/database.doctree differ diff --git a/.doctrees/vendors/northflank/migrate.doctree b/.doctrees/vendors/northflank/migrate.doctree new file mode 100644 index 00000000..14f2b2e4 Binary files /dev/null and b/.doctrees/vendors/northflank/migrate.doctree differ diff --git a/.doctrees/vendors/northflank/migrate_a.doctree b/.doctrees/vendors/northflank/migrate_a.doctree new file mode 100644 index 00000000..2a3b33c7 Binary files /dev/null and b/.doctrees/vendors/northflank/migrate_a.doctree differ diff --git a/.doctrees/vendors/northflank/new_user.doctree b/.doctrees/vendors/northflank/new_user.doctree new file mode 100644 index 00000000..858ede61 Binary files /dev/null and b/.doctrees/vendors/northflank/new_user.doctree differ diff --git a/.doctrees/vendors/northflank/new_user_a.doctree b/.doctrees/vendors/northflank/new_user_a.doctree new file mode 100644 index 00000000..7d39957f Binary files /dev/null and b/.doctrees/vendors/northflank/new_user_a.doctree differ diff --git a/.doctrees/vendors/northflank/new_user_d.doctree b/.doctrees/vendors/northflank/new_user_d.doctree new file mode 100644 index 00000000..53ecfaa0 Binary files /dev/null and b/.doctrees/vendors/northflank/new_user_d.doctree differ diff --git a/.doctrees/vendors/oracle/new_user.doctree b/.doctrees/vendors/oracle/new_user.doctree new file mode 100644 index 00000000..22e021f4 Binary files /dev/null and b/.doctrees/vendors/oracle/new_user.doctree differ diff --git a/.doctrees/vendors/railway/NightscoutVariablesRailway.doctree b/.doctrees/vendors/railway/NightscoutVariablesRailway.doctree new file mode 100644 index 00000000..c2e1229d Binary files /dev/null and b/.doctrees/vendors/railway/NightscoutVariablesRailway.doctree differ diff --git a/.doctrees/vendors/railway/database.doctree b/.doctrees/vendors/railway/database.doctree new file mode 100644 index 00000000..b89ac3ed Binary files /dev/null and b/.doctrees/vendors/railway/database.doctree differ diff --git a/.doctrees/vendors/railway/migrate.doctree b/.doctrees/vendors/railway/migrate.doctree new file mode 100644 index 00000000..d4f011e2 Binary files /dev/null and b/.doctrees/vendors/railway/migrate.doctree differ diff --git a/.doctrees/vendors/railway/migration.doctree b/.doctrees/vendors/railway/migration.doctree new file mode 100644 index 00000000..3e0a3a09 Binary files /dev/null and b/.doctrees/vendors/railway/migration.doctree differ diff --git a/.doctrees/vendors/railway/new_user.doctree b/.doctrees/vendors/railway/new_user.doctree new file mode 100644 index 00000000..b49b1201 Binary files /dev/null and b/.doctrees/vendors/railway/new_user.doctree differ diff --git a/.doctrees/vendors/railway/new_user2.doctree b/.doctrees/vendors/railway/new_user2.doctree new file mode 100644 index 00000000..c44c1fdf Binary files /dev/null and b/.doctrees/vendors/railway/new_user2.doctree differ diff --git a/.doctrees/vendors/railway/new_user_a.doctree b/.doctrees/vendors/railway/new_user_a.doctree new file mode 100644 index 00000000..8975ef57 Binary files /dev/null and b/.doctrees/vendors/railway/new_user_a.doctree differ diff --git a/.doctrees/vendors/railway/new_user_b.doctree b/.doctrees/vendors/railway/new_user_b.doctree new file mode 100644 index 00000000..ec4b8313 Binary files /dev/null and b/.doctrees/vendors/railway/new_user_b.doctree differ diff --git a/.doctrees/vendors/railway/new_user_d.doctree b/.doctrees/vendors/railway/new_user_d.doctree new file mode 100644 index 00000000..6a3640bf Binary files /dev/null and b/.doctrees/vendors/railway/new_user_d.doctree differ diff --git a/.doctrees/vendors/raspberry-pi/new_user.doctree b/.doctrees/vendors/raspberry-pi/new_user.doctree new file mode 100644 index 00000000..6e815e33 Binary files /dev/null and b/.doctrees/vendors/raspberry-pi/new_user.doctree differ diff --git a/.doctrees/vendors/render/new_user.doctree b/.doctrees/vendors/render/new_user.doctree new file mode 100644 index 00000000..a806aa51 Binary files /dev/null and b/.doctrees/vendors/render/new_user.doctree differ diff --git a/.doctrees/vendors/render/new_user_a.doctree b/.doctrees/vendors/render/new_user_a.doctree new file mode 100644 index 00000000..e5bfe7c0 Binary files /dev/null and b/.doctrees/vendors/render/new_user_a.doctree differ diff --git a/.doctrees/vendors/render/new_user_d.doctree b/.doctrees/vendors/render/new_user_d.doctree new file mode 100644 index 00000000..28177ade Binary files /dev/null and b/.doctrees/vendors/render/new_user_d.doctree differ diff --git a/.doctrees/vendors/synology/new_user.doctree b/.doctrees/vendors/synology/new_user.doctree new file mode 100644 index 00000000..76a91ed7 Binary files /dev/null and b/.doctrees/vendors/synology/new_user.doctree differ diff --git a/.nojekyll b/.nojekyll new file mode 100644 index 00000000..e69de29b diff --git a/404/index.html b/404/index.html new file mode 100644 index 00000000..8fa9ecd4 --- /dev/null +++ b/404/index.html @@ -0,0 +1,194 @@ + + +
+ + + +BASE_URL | ++ |
+ | The BASE_URL consists of your Ubuntu computer/VPS IP and the Port 1337 on which the Nightscout app runs (replace 123.456.789.123 with your IP and leave :1337). | +
MONGO_CONNECTION | ++ |
+ | The MongoDB Connection String to connect to your MongoDB cluster. It will look like this: mongodb://MONGO_NS_USER:MONGO_NS_PASSWORD@127.0.0.1:27017/MONGO_NS_DB but you need to replace MONGO_NS_USER, MONGO_NS_PASSWORD and MONGO_NS_DB by your own database user and name. | +
API_SECRET | ++ |
+ | A passphrase that must be at least 12 characters long. Avoid 'special' characters, which can cause problems in some cases. | +
DISPLAY_UNITS | ++ | +
+ | Preferred BG units for the site: 'mg/dl' or 'mmol/l' (or just 'mmol'). | +
CUSTOM_TITLE | ++ |
+ | The display name for the Nightscout site. Appears in the upper left of the main view. Often set to the name of the CGM wearer. | +
THEME | ++ | +
+ | Default setting for new browser views for the color theme of the CGM graph. ('default' 'colors' or 'colorblindfriendly') | +
ENABLE | ++ |
+ | Plugins to enable for your site. Must be a space-delimited lower-case list. Include the word 'bridge' here if you are receiving data from the Dexcom Share service. | +
SHOW_PLUGINS | ++ |
+ | Default setting for whether or not these plugins are checked (active) by default not merely enabled. Include plugins here as in the ENABLE line; space-separated and lower-case. | +
TIME_FORMAT | ++ | +
+ | Default setting for new browser views for the time mode. ('12' or '24') | +
NIGHT_MODE | ++ |
+ | Default setting for new browser views for whether Night Mode should be enabled. ('on' or 'off') | +
BOLUS_RENDER_OVER | ++ |
+ | U value over which the bolus values are rendered on the chart if the 'x U and Over' option is selected. | +
BRIDGE_USER_NAME | ++ |
+ | Your Dexcom account username to receive CGM data from the Dexcom Share service. Also make sure to include 'bridge' in your ENABLE line. | +
BRIDGE_PASSWORD | ++ |
+ | Your Dexcom account password to receive CGM data from the Dexcom Share service. Also make sure to include 'bridge' in your ENABLE line. | +
BRIDGE_SERVER | ++ | +
+ | If you are bridging from the Dexcom Share service and are anywhere *outside* the US change this to EU. ('US' or 'EU') | +
ALARM_TYPES | + |
simple' and/or 'predict'. Simple alarms trigger when BG crosses the various thresholds set below. Predict alarms use a formula that forecasts where the BG is going based on its trend. You will *not* get warnings when crossing the BG thresholds set below when using the predict type. | |
ALARM_URGENT_HIGH | |
Default setting for new browser views for the Urgent High alarm (triggered when BG crosses BG_HIGH). ('on' or 'off') | |
BG_HIGH | |
Urgent High BG threshold triggers the ALARM_URGENT_HIGH alarm. Set in mg/dL or mmol/L as set in DISPLAY_UNITS variable. | |
ALARM_URGENT_LOW | |
Default setting for new browser views for the Urgent Low alarm (triggered when BG crosses BG_LOW). ('on' or 'off') | |
BG_LOW | |
Urgent Low BG threshold triggers the ALARM_URGENT_LOW alarm. Set in mg/dL or mmol/L as set in DISPLAY_UNITS variable. | |
ALARM_HIGH | |
Default setting for new browser views for the High alarm (triggered when BG crosses BG_TARGET_TOP). ('on' or 'off') | |
BG_TARGET_TOP | |
High BG threshold triggers the ALARM_HIGH alarm. Set in mg/dL or mmol/L as set in DISPLAY_UNITS variable. | |
ALARM_LOW | |
Default setting for new browser views for the Low alarm (triggered when BG crosses BG_TARGET_BOTTOM). ('on' or 'off') | |
BG_TARGET_BOTTOM | |
Low BG threshold triggers the ALARM_LOW alarm. Set in mg/dL or mmol/L as set in DISPLAY_UNITS variable. | |
ALARM_TIMEAGO_URGENT | |
Default setting for new browser views for an urgent alarm when CGM data hasn't been received in the number of minutes set in ALARM_TIMEAGO_URGENT_MINS. ('on' or 'off') | |
ALARM_TIMEAGO_URGENT_MINS | |
Default setting for new browser views for the number of minutes since the last CGM reading to trigger an ALARM_TIMEAGO_URGENT alarm. | |
ALARM_TIMEAGO_WARN | |
Default setting for new browser views for a warning alarm when CGM data hasn't been received in the number of minutes set in ALARM_TIMEAGO_WARN_MINS. ('on' or 'off') | |
ALARM_TIMEAGO_WARN_MINS | |
Default setting for new browser views for the number of minutes since the last CGM reading to trigger an ALARM_TIMEAGO_WARN alarm. |
Click the button above.
+ + + + + + + + + + diff --git a/_downloads/9dcf00d43de2dd4067ba56ae19a896e2/stringhelp.html b/_downloads/9dcf00d43de2dd4067ba56ae19a896e2/stringhelp.html new file mode 100644 index 00000000..0ed2c12d --- /dev/null +++ b/_downloads/9dcf00d43de2dd4067ba56ae19a896e2/stringhelp.html @@ -0,0 +1,54 @@ + + + +Step 3: Click Generate
+ + +Step 4: Copy the resulting connection string in your MONGODB_URI variable + + + + diff --git a/_downloads/e4cb5a358b76b05bbc69edc42c0a7577/docker-compose.yml b/_downloads/e4cb5a358b76b05bbc69edc42c0a7577/docker-compose.yml new file mode 100644 index 00000000..341f6712 --- /dev/null +++ b/_downloads/e4cb5a358b76b05bbc69edc42c0a7577/docker-compose.yml @@ -0,0 +1,127 @@ +version: '3.9' + +x-logging: + &default-logging + options: + max-size: '10m' + max-file: '5' + driver: json-file + +services: + nightscout: + image: nightscout/cgm-remote-monitor:latest + environment: +# ----------------------------------------------------------------------------------------------- +# Here are your Nightscout variables: +# Respect the format VARIABLE: value (with a space after :) +# +# Mandatory information + TZ: YOUR_TIMEZONE + API_SECRET: YOUR_API_SECRET + ENABLE: careportal sage iage cage iob cob basal upbat devicestatus dbsize cors + SHOW_PLUGINS: careportal sage iob cob dbsize cors ar2 + DISPLAY_UNITS: mg/dl + + #BRIDGE_USER_NAME: username + #BRIDGE_PASSWORD: password + #BRIDGE_SERVER: EU + + AUTH_DEFAULT_ROLES: readable + NIGHT_MODE: off + THEME: colors + TIME_FORMAT: 24 + SCALE_Y: linear + AR2_CONE_FACTOR: 0 + SHOW_RAWBG: always + DBSIZE_MAX: DISK_SIZE + #BASAL_RENDER: default + BOLUS_RENDER_FORMAT_SMALL: minimal + BOLUS_RENDER_OVER: 1 + + BG_LOW: 60 + BG_TARGET_BOTTOM: 70 + BG_TARGET_TOP: 180 + BG_HIGH: 200 + ALARM_TYPES: simple + ALARM_HIGH: on + ALARM_LOW: on + ALARM_URGENT_HIGH: on + ALARM_URGENT_LOW: on + ALARM_TIMEAGO_URGENT: on + ALARM_TIMEAGO_URGENT_MINS: 30 + ALARM_TIMEAGO_WARN: on + ALARM_TIMEAGO_WARN_MINS: 15 + + DEVICESTATUS_ADVANCED: true + SAGE_INFO: 336 + SAGE_URGENT: 348 + SAGE_WARN: 342 + #SHOW_FORECAST: + #PUMP_FIELDS: reservoir battery clock status + #PUMP_RETRO_FIELDS: battery reservoir clock status + #PUMP_URGENT_BATT: 26 + #PUMP_WARN_BATT: 51 + #IAGE_INFO: 68 + #IAGE_URGENT: 79 + #IAGE_WARN: 72 + #PUMP_ENABLE_ALERTS: true + #PUMP_URGENT_BATT_U: 30 + #PUMP_URGENT_BATT_V: 1.25 + #PUMP_URGENT_RES: 10 + #PUMP_URGENT_CLOCK: 30 + #LOOP_ENABLE_ALERTS: true + #LOOP_WARN: 20 + #LOOP_URGENT: 60 +# ----------------------------------------------------------------------------------------------- +# Do not change anything below unless you know what you are doing +# ----------------------------------------------------------------------------------------------- + INSECURE_USE_HTTP: 'true' + MONGO_CONNECTION: mongodb://mongo:27017/Nightscout + ports: + - "1337:1337" + depends_on: + - mongo + labels: + - 'traefik.enable=true' + # Change the below Host from `localhost` to be the web address where Nightscout is running. + # Also change the email address in the `traefik` service below. + - 'traefik.http.routers.nightscout.rule=Host(`YOUR_PUBLIC_HOST_URL`)' + - 'traefik.http.routers.nightscout.entrypoints=websecure' + - 'traefik.http.routers.nightscout.tls.certresolver=le' + volumes: + - /nightscout/docker:/var/opt/ssl/:ro + restart: unless-stopped + + mongo: +# Note you can also use mongo:5 + image: mongo:4.4 + container_name: mongo + volumes: + - ./data:/data/db +# Enable only of you want external access, but then you should modify mongo login and passord + #ports: + #- "27017:27017" + logging: *default-logging + restart: unless-stopped + + traefik: + image: traefik:latest + container_name: 'traefik' + command: + - '--providers.docker=true' + - '--providers.docker.exposedbydefault=false' + - '--entrypoints.web.address=:80' + - '--entrypoints.web.http.redirections.entrypoint.to=websecure' + - '--entrypoints.websecure.address=:443' + - "--certificatesresolvers.le.acme.httpchallenge=true" + - "--certificatesresolvers.le.acme.httpchallenge.entrypoint=web" + - '--certificatesresolvers.le.acme.storage=/letsencrypt/acme.json' + # Change the below to match your email address + - '--certificatesresolvers.le.acme.email=YOUR_EMAIL' + ports: + - '443:443' + - '80:80' + volumes: + - './letsencrypt:/letsencrypt' + - '/var/run/docker.sock:/var/run/docker.sock:ro' + restart: unless-stopped \ No newline at end of file diff --git a/_downloads/e8c47bec80e9e7174f9413e7b2ce64c3/render.txt b/_downloads/e8c47bec80e9e7174f9413e7b2ce64c3/render.txt new file mode 100644 index 00000000..0adb96ea --- /dev/null +++ b/_downloads/e8c47bec80e9e7174f9413e7b2ce64c3/render.txt @@ -0,0 +1,79 @@ +# Easily deploy NightScout CGM Remote Monitor (https://github.com/nightscout/cgm-remote-monitor) +# to Render (https://render.com) +# ------------------------------ +# 1. Fork https://github.com/nightscout/cgm-remote-monitor to your own GitHub account. +# 2. Add a render.yaml file to the root of your forked repo, copy/paste the contents below +# 3. Commit the new file (and push to GitHub) +# 4. In Render, click "New +" > "Blueprint" +# 5. Connect your own, forked cgm-remote-monitor repo +# 6. Fill in required environment variables +# 7. Click "Apply" and wait for the deploy to complete. + +services: + - type: web + name: nightscout + env: node + region: oregon # optional (defaults to oregon. Other regions: ohio, frankfurt, singapore) + plan: free # optional (defaults to free - this a FREE PLAN, maybe... https://render.com/pricing) + buildCommand: npm install + startCommand: npm start + healthCheckPath: / + envVars: + - key: INSECURE_USE_HTTP # TLS is terminated before reaching the app, so only needs to respond to HTTP. + value: true + - key: HOSTNAME # bind app to any internal IP + value: "0.0.0.0" + - key: MONGODB_URI # The MongoDB Connection String to connect to your MongoDB cluster. If you don't have this from MongoDB Atlas, please re-read installation instructions at http://nightscout.github.io/nightscout/new_user/ before continuing + sync: false # will be requested when Blueprint is created + - key: ALARM_HIGH # Default setting for new browser views, for the High alarm (triggered when BG crosses BG_TARGET_TOP). ('on' or 'off') + value: "on" + - key: ALARM_LOW # Default setting for new browser views, for the Low alarm (triggered when BG crosses BG_TARGET_BOTTOM). ('on' or 'off') + value: "on" + - key: ALARM_TIMEAGO_URGENT # Default setting for new browser views, for an urgent alarm when CGM data hasn't been received in the number of minutes set in ALARM_TIMEAGO_URGENT_MINS. ('on' or 'off') + value: "on" + - key: ALARM_TIMEAGO_URGENT_MINS # Default setting for new browser views, for the number of minutes since the last CGM reading to trigger an ALARM_TIMEAGO_URGENT alarm. + value: "30" + - key: ALARM_TIMEAGO_WARN # Default setting for new browser views, for a warning alarm when CGM data hasn't been received in the number of minutes set in ALARM_TIMEAGO_WARN_MINS. ('on' or 'off') + value: "on" + - key: ALARM_TIMEAGO_WARN_MINS # Default setting for new browser views, for the number of minutes since the last CGM reading to trigger an ALARM_TIMEAGO_WARN alarm. + value: "15" + - key: ALARM_TYPES # 'simple' and/or 'predict'. Simple alarms trigger when BG crosses the various thresholds set below. Predict alarms use a formula that forecasts where the BG is going based on its trend. You will *not* get warnings when crossing the BG thresholds set below when using the predict type. + value: "simple" + - key: ALARM_URGENT_HIGH # Default setting for new browser views, for the Urgent High alarm (triggered when BG crosses BG_HIGH). ('on' or 'off') + value: "on" + - key: ALARM_URGENT_LOW # Default setting for new browser views, for the Urgent Low alarm (triggered when BG crosses BG_LOW). ('on' or 'off') + value: "on" + - key: API_SECRET # A passphrase that must be at least 12 characters long. Avoid 'special' characters, which can cause problems in some cases. + sync: false # will be requested when Blueprint is created + - key: BG_HIGH # Urgent High BG threshold, triggers the ALARM_URGENT_HIGH alarm. Set in mg/dL or mmol/L, as set in DISPLAY_UNITS variable. + value: "260" + - key: BG_LOW # Urgent Low BG threshold, triggers the ALARM_URGENT_LOW alarm. Set in mg/dL or mmol/L, as set in DISPLAY_UNITS variable. + value: "55" + - key: BG_TARGET_BOTTOM # Low BG threshold, triggers the ALARM_LOW alarm. Set in mg/dL or mmol/L, as set in DISPLAY_UNITS variable. + value: "80" + - key: BG_TARGET_TOP # High BG threshold, triggers the ALARM_HIGH alarm. Set in mg/dL or mmol/L, as set in DISPLAY_UNITS variable. + value: "180" + - key: BOLUS_RENDER_OVER # U value over which the bolus values are rendered on the chart if the 'x U and Over' option is selected. + value: "1" + - key: BRIDGE_PASSWORD # Your Dexcom account password, to receive CGM data from the Dexcom Share service. Also make sure to include 'bridge' in your ENABLE line. + value: "password" + - key: BRIDGE_SERVER # If you are bridging from the Dexcom Share service, and are anywhere *outside* the US, change this to EU. ('US' or 'EU') + value: "EU" + - key: BRIDGE_USER_NAME # Your Dexcom account username, to receive CGM data from the Dexcom Share service. Also make sure to include 'bridge' in your ENABLE line. + value: "username" + - key: CUSTOM_TITLE # The display name for the Nightscout site. Appears in the upper left of the main view. Often set to the name of the CGM wearer. + value: "" + - key: DISPLAY_UNITS # Preferred BG units for the site: 'mg/dl' or 'mmol/L' (or just 'mmol'). + sync: false # will be requested when Blueprint is created + - key: ENABLE # Plugins to enable for your site. Must be a space-delimited, lower-case list. Include the word 'bridge' here if you are receiving data from the Dexcom Share service. Include 'mmconnect' if you are bridging from the MiniMed CareLink service. + value: "careportal basal dbsize rawbg iob maker cob bwp cage iage sage boluscalc pushover treatmentnotify loop pump profile food openaps bage alexa override speech cors" + - key: NIGHT_MODE # Default setting for new browser views, for whether Night Mode should be enabled. ('on' or 'off') + value: "off" + - key: SHOW_PLUGINS # Default setting for whether or not these plugins are checked (active) by default, not merely enabled. Include plugins here as in the ENABLE line; space-separated and lower-case. + value: "careportal dbize" + - key: SHOW_RAWBG # Default setting for new browser views, for the display of raw CGM data (if available). ('always', 'never', or 'noise') + value: "never" + - key: THEME # Default setting for new browser views, for the color theme of the CGM graph. ('default', 'colors', or 'colorblindfriendly') + value: "colors" + - key: TIME_FORMAT # Default setting for new browser views, for the time mode. ('12' or '24') + value: "12" \ No newline at end of file diff --git a/_images/APNKeys.png b/_images/APNKeys.png new file mode 100644 index 00000000..ee7d6792 Binary files /dev/null and b/_images/APNKeys.png differ diff --git a/_images/AddFile.png b/_images/AddFile.png new file mode 100644 index 00000000..f3fde6db Binary files /dev/null and b/_images/AddFile.png differ diff --git a/_images/Admin00.png b/_images/Admin00.png new file mode 100644 index 00000000..45a1938e Binary files /dev/null and b/_images/Admin00.png differ diff --git a/_images/Admin01.png b/_images/Admin01.png new file mode 100644 index 00000000..f4869539 Binary files /dev/null and b/_images/Admin01.png differ diff --git a/_images/Admin02.png b/_images/Admin02.png new file mode 100644 index 00000000..ca283cb4 Binary files /dev/null and b/_images/Admin02.png differ diff --git a/_images/Admin03.png b/_images/Admin03.png new file mode 100644 index 00000000..ed9338a3 Binary files /dev/null and b/_images/Admin03.png differ diff --git a/_images/Admin04.png b/_images/Admin04.png new file mode 100644 index 00000000..121d448f Binary files /dev/null and b/_images/Admin04.png differ diff --git a/_images/Admin05.png b/_images/Admin05.png new file mode 100644 index 00000000..aae15293 Binary files /dev/null and b/_images/Admin05.png differ diff --git a/_images/Admin05b.png b/_images/Admin05b.png new file mode 100644 index 00000000..75cedd58 Binary files /dev/null and b/_images/Admin05b.png differ diff --git a/_images/Admin06.png b/_images/Admin06.png new file mode 100644 index 00000000..d595096d Binary files /dev/null and b/_images/Admin06.png differ diff --git a/_images/Admin07.png b/_images/Admin07.png new file mode 100644 index 00000000..cbf7b410 Binary files /dev/null and b/_images/Admin07.png differ diff --git a/_images/Admin08.png b/_images/Admin08.png new file mode 100644 index 00000000..1bd7bbd1 Binary files /dev/null and b/_images/Admin08.png differ diff --git a/_images/Admin09.png b/_images/Admin09.png new file mode 100644 index 00000000..2591050f Binary files /dev/null and b/_images/Admin09.png differ diff --git a/_images/Admin10.png b/_images/Admin10.png new file mode 100644 index 00000000..5439f4aa Binary files /dev/null and b/_images/Admin10.png differ diff --git a/_images/Atlas.png b/_images/Atlas.png new file mode 100644 index 00000000..8ac8cd3d Binary files /dev/null and b/_images/Atlas.png differ diff --git a/_images/AtlasX01.png b/_images/AtlasX01.png new file mode 100644 index 00000000..b2c8ed33 Binary files /dev/null and b/_images/AtlasX01.png differ diff --git a/_images/AtlasX02.png b/_images/AtlasX02.png new file mode 100644 index 00000000..dbe53d56 Binary files /dev/null and b/_images/AtlasX02.png differ diff --git a/_images/AtlasX03.png b/_images/AtlasX03.png new file mode 100644 index 00000000..d471e534 Binary files /dev/null and b/_images/AtlasX03.png differ diff --git a/_images/AtlasX04.png b/_images/AtlasX04.png new file mode 100644 index 00000000..17edecb5 Binary files /dev/null and b/_images/AtlasX04.png differ diff --git a/_images/AtlasX07.png b/_images/AtlasX07.png new file mode 100644 index 00000000..f8ce7c50 Binary files /dev/null and b/_images/AtlasX07.png differ diff --git a/_images/Azure.png b/_images/Azure.png new file mode 100644 index 00000000..a7f93a5e Binary files /dev/null and b/_images/Azure.png differ diff --git a/_images/Azure01.png b/_images/Azure01.png new file mode 100644 index 00000000..48da50dc Binary files /dev/null and b/_images/Azure01.png differ diff --git a/_images/Azure02.png b/_images/Azure02.png new file mode 100644 index 00000000..0c04a9e4 Binary files /dev/null and b/_images/Azure02.png differ diff --git a/_images/Azure03.png b/_images/Azure03.png new file mode 100644 index 00000000..020a64f9 Binary files /dev/null and b/_images/Azure03.png differ diff --git a/_images/Azure05.png b/_images/Azure05.png new file mode 100644 index 00000000..c67619d0 Binary files /dev/null and b/_images/Azure05.png differ diff --git a/_images/Azure12.png b/_images/Azure12.png new file mode 100644 index 00000000..8123940a Binary files /dev/null and b/_images/Azure12.png differ diff --git a/_images/Azure15.png b/_images/Azure15.png new file mode 100644 index 00000000..ac1c99b0 Binary files /dev/null and b/_images/Azure15.png differ diff --git a/_images/Azure16.png b/_images/Azure16.png new file mode 100644 index 00000000..61f3004a Binary files /dev/null and b/_images/Azure16.png differ diff --git a/_images/Azure16r.png b/_images/Azure16r.png new file mode 100644 index 00000000..3a228bca Binary files /dev/null and b/_images/Azure16r.png differ diff --git a/_images/Azure22.png b/_images/Azure22.png new file mode 100644 index 00000000..a00b0c9c Binary files /dev/null and b/_images/Azure22.png differ diff --git a/_images/Azure23.png b/_images/Azure23.png new file mode 100644 index 00000000..4f17c518 Binary files /dev/null and b/_images/Azure23.png differ diff --git a/_images/Azure24.png b/_images/Azure24.png new file mode 100644 index 00000000..f4abbaa6 Binary files /dev/null and b/_images/Azure24.png differ diff --git a/_images/Azure25.png b/_images/Azure25.png new file mode 100644 index 00000000..41a55dba Binary files /dev/null and b/_images/Azure25.png differ diff --git a/_images/Azure26.png b/_images/Azure26.png new file mode 100644 index 00000000..62548342 Binary files /dev/null and b/_images/Azure26.png differ diff --git a/_images/Azure27.png b/_images/Azure27.png new file mode 100644 index 00000000..b88c12e3 Binary files /dev/null and b/_images/Azure27.png differ diff --git a/_images/Azure28.png b/_images/Azure28.png new file mode 100644 index 00000000..1553e31f Binary files /dev/null and b/_images/Azure28.png differ diff --git a/_images/Azure29.png b/_images/Azure29.png new file mode 100644 index 00000000..9c4e0d08 Binary files /dev/null and b/_images/Azure29.png differ diff --git a/_images/Azure30.png b/_images/Azure30.png new file mode 100644 index 00000000..82ab53d0 Binary files /dev/null and b/_images/Azure30.png differ diff --git a/_images/Azure31.png b/_images/Azure31.png new file mode 100644 index 00000000..053bbed5 Binary files /dev/null and b/_images/Azure31.png differ diff --git a/_images/Azure32.png b/_images/Azure32.png new file mode 100644 index 00000000..143ad753 Binary files /dev/null and b/_images/Azure32.png differ diff --git a/_images/Azure33.png b/_images/Azure33.png new file mode 100644 index 00000000..6cca9f2b Binary files /dev/null and b/_images/Azure33.png differ diff --git a/_images/Azure34.png b/_images/Azure34.png new file mode 100644 index 00000000..d6ea812d Binary files /dev/null and b/_images/Azure34.png differ diff --git a/_images/Azure35.png b/_images/Azure35.png new file mode 100644 index 00000000..488ae3d8 Binary files /dev/null and b/_images/Azure35.png differ diff --git a/_images/Azure36.png b/_images/Azure36.png new file mode 100644 index 00000000..38bced4b Binary files /dev/null and b/_images/Azure36.png differ diff --git a/_images/Azure37.png b/_images/Azure37.png new file mode 100644 index 00000000..95ef6dcb Binary files /dev/null and b/_images/Azure37.png differ diff --git a/_images/Azure38.png b/_images/Azure38.png new file mode 100644 index 00000000..cbeddadf Binary files /dev/null and b/_images/Azure38.png differ diff --git a/_images/Azure39.png b/_images/Azure39.png new file mode 100644 index 00000000..1d3cc17b Binary files /dev/null and b/_images/Azure39.png differ diff --git a/_images/Azure40.png b/_images/Azure40.png new file mode 100644 index 00000000..2eaa703f Binary files /dev/null and b/_images/Azure40.png differ diff --git a/_images/Azure42.png b/_images/Azure42.png new file mode 100644 index 00000000..3974bb52 Binary files /dev/null and b/_images/Azure42.png differ diff --git a/_images/Azure43.png b/_images/Azure43.png new file mode 100644 index 00000000..a43f2a13 Binary files /dev/null and b/_images/Azure43.png differ diff --git a/_images/Azure44.png b/_images/Azure44.png new file mode 100644 index 00000000..85f3f037 Binary files /dev/null and b/_images/Azure44.png differ diff --git a/_images/Azure45.png b/_images/Azure45.png new file mode 100644 index 00000000..81369c7b Binary files /dev/null and b/_images/Azure45.png differ diff --git a/_images/Azure46.png b/_images/Azure46.png new file mode 100644 index 00000000..6724b2b9 Binary files /dev/null and b/_images/Azure46.png differ diff --git a/_images/Azure47.png b/_images/Azure47.png new file mode 100644 index 00000000..e141223c Binary files /dev/null and b/_images/Azure47.png differ diff --git a/_images/Azure48.png b/_images/Azure48.png new file mode 100644 index 00000000..86637400 Binary files /dev/null and b/_images/Azure48.png differ diff --git a/_images/Azure49.png b/_images/Azure49.png new file mode 100644 index 00000000..bd0387cf Binary files /dev/null and b/_images/Azure49.png differ diff --git a/_images/Azure50.png b/_images/Azure50.png new file mode 100644 index 00000000..ee3139f2 Binary files /dev/null and b/_images/Azure50.png differ diff --git a/_images/AzureName.png b/_images/AzureName.png new file mode 100644 index 00000000..81864c93 Binary files /dev/null and b/_images/AzureName.png differ diff --git a/_images/AzureT01.png b/_images/AzureT01.png new file mode 100644 index 00000000..36948919 Binary files /dev/null and b/_images/AzureT01.png differ diff --git a/_images/AzureT02.png b/_images/AzureT02.png new file mode 100644 index 00000000..060ef090 Binary files /dev/null and b/_images/AzureT02.png differ diff --git a/_images/AzureT03.png b/_images/AzureT03.png new file mode 100644 index 00000000..1cf8a5f6 Binary files /dev/null and b/_images/AzureT03.png differ diff --git a/_images/AzureU02.png b/_images/AzureU02.png new file mode 100644 index 00000000..dce63bb0 Binary files /dev/null and b/_images/AzureU02.png differ diff --git a/_images/Cleanup00.png b/_images/Cleanup00.png new file mode 100644 index 00000000..a7c43b2c Binary files /dev/null and b/_images/Cleanup00.png differ diff --git a/_images/Cleanup00a.png b/_images/Cleanup00a.png new file mode 100644 index 00000000..ae69bf6f Binary files /dev/null and b/_images/Cleanup00a.png differ diff --git a/_images/Cleanup01.png b/_images/Cleanup01.png new file mode 100644 index 00000000..e6c5d1fd Binary files /dev/null and b/_images/Cleanup01.png differ diff --git a/_images/Cleanup02.png b/_images/Cleanup02.png new file mode 100644 index 00000000..40401cfa Binary files /dev/null and b/_images/Cleanup02.png differ diff --git a/_images/Cleanup03.png b/_images/Cleanup03.png new file mode 100644 index 00000000..1a57c0b0 Binary files /dev/null and b/_images/Cleanup03.png differ diff --git a/_images/Cleanup031.png b/_images/Cleanup031.png new file mode 100644 index 00000000..7ce714e0 Binary files /dev/null and b/_images/Cleanup031.png differ diff --git a/_images/Cleanup04.png b/_images/Cleanup04.png new file mode 100644 index 00000000..842e985f Binary files /dev/null and b/_images/Cleanup04.png differ diff --git a/_images/Cleanup05.png b/_images/Cleanup05.png new file mode 100644 index 00000000..8151ea9d Binary files /dev/null and b/_images/Cleanup05.png differ diff --git a/_images/Cleanup06.png b/_images/Cleanup06.png new file mode 100644 index 00000000..e52372c4 Binary files /dev/null and b/_images/Cleanup06.png differ diff --git a/_images/Cleanup07.png b/_images/Cleanup07.png new file mode 100644 index 00000000..feeec012 Binary files /dev/null and b/_images/Cleanup07.png differ diff --git a/_images/Cleanup08.png b/_images/Cleanup08.png new file mode 100644 index 00000000..886d443b Binary files /dev/null and b/_images/Cleanup08.png differ diff --git a/_images/Cleanup09.png b/_images/Cleanup09.png new file mode 100644 index 00000000..6dc4751c Binary files /dev/null and b/_images/Cleanup09.png differ diff --git a/_images/Cleanup10.png b/_images/Cleanup10.png new file mode 100644 index 00000000..00bdca44 Binary files /dev/null and b/_images/Cleanup10.png differ diff --git a/_images/Cleanup11.png b/_images/Cleanup11.png new file mode 100644 index 00000000..515549cc Binary files /dev/null and b/_images/Cleanup11.png differ diff --git a/_images/Cleanup12.png b/_images/Cleanup12.png new file mode 100644 index 00000000..fd46055c Binary files /dev/null and b/_images/Cleanup12.png differ diff --git a/_images/Cleanup13.png b/_images/Cleanup13.png new file mode 100644 index 00000000..bc5cde30 Binary files /dev/null and b/_images/Cleanup13.png differ diff --git a/_images/Cleanup14.png b/_images/Cleanup14.png new file mode 100644 index 00000000..be1fd476 Binary files /dev/null and b/_images/Cleanup14.png differ diff --git a/_images/Cleanup15.png b/_images/Cleanup15.png new file mode 100644 index 00000000..ffa4cf42 Binary files /dev/null and b/_images/Cleanup15.png differ diff --git a/_images/Cleanup16.png b/_images/Cleanup16.png new file mode 100644 index 00000000..4a95f397 Binary files /dev/null and b/_images/Cleanup16.png differ diff --git a/_images/Clinic01.png b/_images/Clinic01.png new file mode 100644 index 00000000..311e4afb Binary files /dev/null and b/_images/Clinic01.png differ diff --git a/_images/Clinic02.png b/_images/Clinic02.png new file mode 100644 index 00000000..b005a37b Binary files /dev/null and b/_images/Clinic02.png differ diff --git a/_images/Clinic03.png b/_images/Clinic03.png new file mode 100644 index 00000000..65e143fb Binary files /dev/null and b/_images/Clinic03.png differ diff --git a/_images/Clinic04.png b/_images/Clinic04.png new file mode 100644 index 00000000..f59d0f78 Binary files /dev/null and b/_images/Clinic04.png differ diff --git a/_images/Clinic05.png b/_images/Clinic05.png new file mode 100644 index 00000000..941e8244 Binary files /dev/null and b/_images/Clinic05.png differ diff --git a/_images/Clinic06.png b/_images/Clinic06.png new file mode 100644 index 00000000..a79d3f80 Binary files /dev/null and b/_images/Clinic06.png differ diff --git a/_images/Clinic07.png b/_images/Clinic07.png new file mode 100644 index 00000000..5d2590cf Binary files /dev/null and b/_images/Clinic07.png differ diff --git a/_images/Clinic08.png b/_images/Clinic08.png new file mode 100644 index 00000000..91cd89f1 Binary files /dev/null and b/_images/Clinic08.png differ diff --git a/_images/Clinic09.png b/_images/Clinic09.png new file mode 100644 index 00000000..1663b51f Binary files /dev/null and b/_images/Clinic09.png differ diff --git a/_images/Clinic10.png b/_images/Clinic10.png new file mode 100644 index 00000000..4d914fef Binary files /dev/null and b/_images/Clinic10.png differ diff --git a/_images/Clinic11.png b/_images/Clinic11.png new file mode 100644 index 00000000..1c9ee7dc Binary files /dev/null and b/_images/Clinic11.png differ diff --git a/_images/Clinic12.png b/_images/Clinic12.png new file mode 100644 index 00000000..033efce5 Binary files /dev/null and b/_images/Clinic12.png differ diff --git a/_images/Clinic13.png b/_images/Clinic13.png new file mode 100644 index 00000000..90daeac5 Binary files /dev/null and b/_images/Clinic13.png differ diff --git a/_images/Clinic14.png b/_images/Clinic14.png new file mode 100644 index 00000000..dfde1a39 Binary files /dev/null and b/_images/Clinic14.png differ diff --git a/_images/Clinic15.png b/_images/Clinic15.png new file mode 100644 index 00000000..fc6ad422 Binary files /dev/null and b/_images/Clinic15.png differ diff --git a/_images/Clinic16.png b/_images/Clinic16.png new file mode 100644 index 00000000..76a2faa3 Binary files /dev/null and b/_images/Clinic16.png differ diff --git a/_images/Clinic17.png b/_images/Clinic17.png new file mode 100644 index 00000000..062cbdc5 Binary files /dev/null and b/_images/Clinic17.png differ diff --git a/_images/Clinic18.png b/_images/Clinic18.png new file mode 100644 index 00000000..abc33e8f Binary files /dev/null and b/_images/Clinic18.png differ diff --git a/_images/Clinic19.png b/_images/Clinic19.png new file mode 100644 index 00000000..006fdbb0 Binary files /dev/null and b/_images/Clinic19.png differ diff --git a/_images/Clinic20.png b/_images/Clinic20.png new file mode 100644 index 00000000..b8f4bb8d Binary files /dev/null and b/_images/Clinic20.png differ diff --git a/_images/Clinic21.png b/_images/Clinic21.png new file mode 100644 index 00000000..dc341b10 Binary files /dev/null and b/_images/Clinic21.png differ diff --git a/_images/Clinic22.png b/_images/Clinic22.png new file mode 100644 index 00000000..0c56b36e Binary files /dev/null and b/_images/Clinic22.png differ diff --git a/_images/Clinic23.png b/_images/Clinic23.png new file mode 100644 index 00000000..8fa81e6e Binary files /dev/null and b/_images/Clinic23.png differ diff --git a/_images/Clinic24.png b/_images/Clinic24.png new file mode 100644 index 00000000..5b2d87d1 Binary files /dev/null and b/_images/Clinic24.png differ diff --git a/_images/Clinic25.png b/_images/Clinic25.png new file mode 100644 index 00000000..087eb779 Binary files /dev/null and b/_images/Clinic25.png differ diff --git a/_images/Clinic26.png b/_images/Clinic26.png new file mode 100644 index 00000000..aafe8c65 Binary files /dev/null and b/_images/Clinic26.png differ diff --git a/_images/Comparison2.png b/_images/Comparison2.png new file mode 100644 index 00000000..8e410707 Binary files /dev/null and b/_images/Comparison2.png differ diff --git a/_images/Comparison3.png b/_images/Comparison3.png new file mode 100644 index 00000000..e81513e1 Binary files /dev/null and b/_images/Comparison3.png differ diff --git a/_images/DNS01.png b/_images/DNS01.png new file mode 100644 index 00000000..83a8896a Binary files /dev/null and b/_images/DNS01.png differ diff --git a/_images/DNS02.png b/_images/DNS02.png new file mode 100644 index 00000000..c260d3c3 Binary files /dev/null and b/_images/DNS02.png differ diff --git a/_images/DNS03.png b/_images/DNS03.png new file mode 100644 index 00000000..fcb1d936 Binary files /dev/null and b/_images/DNS03.png differ diff --git a/_images/DNS04.png b/_images/DNS04.png new file mode 100644 index 00000000..3b25db1e Binary files /dev/null and b/_images/DNS04.png differ diff --git a/_images/DNS05.png b/_images/DNS05.png new file mode 100644 index 00000000..cbeb30c0 Binary files /dev/null and b/_images/DNS05.png differ diff --git a/_images/DNS06.png b/_images/DNS06.png new file mode 100644 index 00000000..fa9b5243 Binary files /dev/null and b/_images/DNS06.png differ diff --git a/_images/DNS07.png b/_images/DNS07.png new file mode 100644 index 00000000..f75d2f93 Binary files /dev/null and b/_images/DNS07.png differ diff --git a/_images/DNS08.png b/_images/DNS08.png new file mode 100644 index 00000000..779551fd Binary files /dev/null and b/_images/DNS08.png differ diff --git a/_images/DNS09.png b/_images/DNS09.png new file mode 100644 index 00000000..1982b766 Binary files /dev/null and b/_images/DNS09.png differ diff --git a/_images/DNS10.png b/_images/DNS10.png new file mode 100644 index 00000000..d99baed6 Binary files /dev/null and b/_images/DNS10.png differ diff --git a/_images/DNS11.png b/_images/DNS11.png new file mode 100644 index 00000000..8ce21bbd Binary files /dev/null and b/_images/DNS11.png differ diff --git a/_images/DNS12.png b/_images/DNS12.png new file mode 100644 index 00000000..005e7bd4 Binary files /dev/null and b/_images/DNS12.png differ diff --git a/_images/DNS13.png b/_images/DNS13.png new file mode 100644 index 00000000..3eaf7418 Binary files /dev/null and b/_images/DNS13.png differ diff --git a/_images/Dev00.png b/_images/Dev00.png new file mode 100644 index 00000000..be7e32a4 Binary files /dev/null and b/_images/Dev00.png differ diff --git a/_images/Dev01.png b/_images/Dev01.png new file mode 100644 index 00000000..17d40fa5 Binary files /dev/null and b/_images/Dev01.png differ diff --git a/_images/Dev03.png b/_images/Dev03.png new file mode 100644 index 00000000..1fb8f2e6 Binary files /dev/null and b/_images/Dev03.png differ diff --git a/_images/Dev04.png b/_images/Dev04.png new file mode 100644 index 00000000..ce8e0f51 Binary files /dev/null and b/_images/Dev04.png differ diff --git a/_images/Dev05.png b/_images/Dev05.png new file mode 100644 index 00000000..f05b401c Binary files /dev/null and b/_images/Dev05.png differ diff --git a/_images/Dev06.png b/_images/Dev06.png new file mode 100644 index 00000000..0d8ea2c8 Binary files /dev/null and b/_images/Dev06.png differ diff --git a/_images/Dev07.png b/_images/Dev07.png new file mode 100644 index 00000000..f62cc6c8 Binary files /dev/null and b/_images/Dev07.png differ diff --git a/_images/Dev12.png b/_images/Dev12.png new file mode 100644 index 00000000..522236c2 Binary files /dev/null and b/_images/Dev12.png differ diff --git a/_images/Dev13.png b/_images/Dev13.png new file mode 100644 index 00000000..ddd99440 Binary files /dev/null and b/_images/Dev13.png differ diff --git a/_images/Dev14.png b/_images/Dev14.png new file mode 100644 index 00000000..26eb8037 Binary files /dev/null and b/_images/Dev14.png differ diff --git a/_images/Dev15.png b/_images/Dev15.png new file mode 100644 index 00000000..65d8285f Binary files /dev/null and b/_images/Dev15.png differ diff --git a/_images/Dev16.png b/_images/Dev16.png new file mode 100644 index 00000000..98677b1e Binary files /dev/null and b/_images/Dev16.png differ diff --git a/_images/Dev17.png b/_images/Dev17.png new file mode 100644 index 00000000..3d8d30a3 Binary files /dev/null and b/_images/Dev17.png differ diff --git a/_images/Dev18.png b/_images/Dev18.png new file mode 100644 index 00000000..4b242485 Binary files /dev/null and b/_images/Dev18.png differ diff --git a/_images/Dev19.png b/_images/Dev19.png new file mode 100644 index 00000000..26f295bd Binary files /dev/null and b/_images/Dev19.png differ diff --git a/_images/DexShare00.png b/_images/DexShare00.png new file mode 100644 index 00000000..806befb2 Binary files /dev/null and b/_images/DexShare00.png differ diff --git a/_images/DexShare01.png b/_images/DexShare01.png new file mode 100644 index 00000000..38140c37 Binary files /dev/null and b/_images/DexShare01.png differ diff --git a/_images/DexShare01b.png b/_images/DexShare01b.png new file mode 100644 index 00000000..23501144 Binary files /dev/null and b/_images/DexShare01b.png differ diff --git a/_images/DexShare02.png b/_images/DexShare02.png new file mode 100644 index 00000000..123dc737 Binary files /dev/null and b/_images/DexShare02.png differ diff --git a/_images/DexShare05.png b/_images/DexShare05.png new file mode 100644 index 00000000..3ac463e0 Binary files /dev/null and b/_images/DexShare05.png differ diff --git a/_images/Downgrade00.png b/_images/Downgrade00.png new file mode 100644 index 00000000..24fe185d Binary files /dev/null and b/_images/Downgrade00.png differ diff --git a/_images/Downgrade01.png b/_images/Downgrade01.png new file mode 100644 index 00000000..be715a91 Binary files /dev/null and b/_images/Downgrade01.png differ diff --git a/_images/Downgrade02.png b/_images/Downgrade02.png new file mode 100644 index 00000000..9b83cf1e Binary files /dev/null and b/_images/Downgrade02.png differ diff --git a/_images/Downgrade03.png b/_images/Downgrade03.png new file mode 100644 index 00000000..c89ea765 Binary files /dev/null and b/_images/Downgrade03.png differ diff --git a/_images/Downgrade04.png b/_images/Downgrade04.png new file mode 100644 index 00000000..fdfaf4ea Binary files /dev/null and b/_images/Downgrade04.png differ diff --git a/_images/Fly.io.png b/_images/Fly.io.png new file mode 100644 index 00000000..0197c121 Binary files /dev/null and b/_images/Fly.io.png differ diff --git a/_images/FlyIO00.png b/_images/FlyIO00.png new file mode 100644 index 00000000..4174ea90 Binary files /dev/null and b/_images/FlyIO00.png differ diff --git a/_images/FlyIO05.png b/_images/FlyIO05.png new file mode 100644 index 00000000..544944d4 Binary files /dev/null and b/_images/FlyIO05.png differ diff --git a/_images/FlyIO06.png b/_images/FlyIO06.png new file mode 100644 index 00000000..a4a9237e Binary files /dev/null and b/_images/FlyIO06.png differ diff --git a/_images/FlyIO07.png b/_images/FlyIO07.png new file mode 100644 index 00000000..9164afbb Binary files /dev/null and b/_images/FlyIO07.png differ diff --git a/_images/FlyIO08.png b/_images/FlyIO08.png new file mode 100644 index 00000000..5fac1b98 Binary files /dev/null and b/_images/FlyIO08.png differ diff --git a/_images/FlyIO09.png b/_images/FlyIO09.png new file mode 100644 index 00000000..c3096047 Binary files /dev/null and b/_images/FlyIO09.png differ diff --git a/_images/FlyIO10.png b/_images/FlyIO10.png new file mode 100644 index 00000000..da5bfdde Binary files /dev/null and b/_images/FlyIO10.png differ diff --git a/_images/FlyIO11.png b/_images/FlyIO11.png new file mode 100644 index 00000000..30b2492a Binary files /dev/null and b/_images/FlyIO11.png differ diff --git a/_images/FlyIO12.png b/_images/FlyIO12.png new file mode 100644 index 00000000..6b6869a6 Binary files /dev/null and b/_images/FlyIO12.png differ diff --git a/_images/FlyIO13.png b/_images/FlyIO13.png new file mode 100644 index 00000000..0e92d7cf Binary files /dev/null and b/_images/FlyIO13.png differ diff --git a/_images/FlyIO14.png b/_images/FlyIO14.png new file mode 100644 index 00000000..fcfe655a Binary files /dev/null and b/_images/FlyIO14.png differ diff --git a/_images/FlyIO15.png b/_images/FlyIO15.png new file mode 100644 index 00000000..1b4ab584 Binary files /dev/null and b/_images/FlyIO15.png differ diff --git a/_images/FlyIO17.png b/_images/FlyIO17.png new file mode 100644 index 00000000..9026b1a8 Binary files /dev/null and b/_images/FlyIO17.png differ diff --git a/_images/FlyIO18.png b/_images/FlyIO18.png new file mode 100644 index 00000000..a08a4ccc Binary files /dev/null and b/_images/FlyIO18.png differ diff --git a/_images/FlyIO21.png b/_images/FlyIO21.png new file mode 100644 index 00000000..38ef849b Binary files /dev/null and b/_images/FlyIO21.png differ diff --git a/_images/FlyIO22.png b/_images/FlyIO22.png new file mode 100644 index 00000000..fd83399d Binary files /dev/null and b/_images/FlyIO22.png differ diff --git a/_images/FlyIOA1.png b/_images/FlyIOA1.png new file mode 100644 index 00000000..62f244b7 Binary files /dev/null and b/_images/FlyIOA1.png differ diff --git a/_images/FlyIOA2.png b/_images/FlyIOA2.png new file mode 100644 index 00000000..730ebb66 Binary files /dev/null and b/_images/FlyIOA2.png differ diff --git a/_images/FlyM10.png b/_images/FlyM10.png new file mode 100644 index 00000000..01f42770 Binary files /dev/null and b/_images/FlyM10.png differ diff --git a/_images/FlyT01.png b/_images/FlyT01.png new file mode 100644 index 00000000..1165dff0 Binary files /dev/null and b/_images/FlyT01.png differ diff --git a/_images/FlyT03.png b/_images/FlyT03.png new file mode 100644 index 00000000..d8f89e64 Binary files /dev/null and b/_images/FlyT03.png differ diff --git a/_images/FlyT04.png b/_images/FlyT04.png new file mode 100644 index 00000000..70448c04 Binary files /dev/null and b/_images/FlyT04.png differ diff --git a/_images/FlyT08.png b/_images/FlyT08.png new file mode 100644 index 00000000..18f30ded Binary files /dev/null and b/_images/FlyT08.png differ diff --git a/_images/FlyT09.png b/_images/FlyT09.png new file mode 100644 index 00000000..15f007fb Binary files /dev/null and b/_images/FlyT09.png differ diff --git a/_images/Follower00.png b/_images/Follower00.png new file mode 100644 index 00000000..4fdc43bc Binary files /dev/null and b/_images/Follower00.png differ diff --git a/_images/Follower01.png b/_images/Follower01.png new file mode 100644 index 00000000..02e45840 Binary files /dev/null and b/_images/Follower01.png differ diff --git a/_images/Follower02.png b/_images/Follower02.png new file mode 100644 index 00000000..9b7321fd Binary files /dev/null and b/_images/Follower02.png differ diff --git a/_images/Follower04.png b/_images/Follower04.png new file mode 100644 index 00000000..60d24b5a Binary files /dev/null and b/_images/Follower04.png differ diff --git a/_images/Follower05.png b/_images/Follower05.png new file mode 100644 index 00000000..b30d45ae Binary files /dev/null and b/_images/Follower05.png differ diff --git a/_images/Follower06.png b/_images/Follower06.png new file mode 100644 index 00000000..9d091f48 Binary files /dev/null and b/_images/Follower06.png differ diff --git a/_images/Follower07.png b/_images/Follower07.png new file mode 100644 index 00000000..17504348 Binary files /dev/null and b/_images/Follower07.png differ diff --git a/_images/Follower08.png b/_images/Follower08.png new file mode 100644 index 00000000..dbda3f37 Binary files /dev/null and b/_images/Follower08.png differ diff --git a/_images/Follower09.png b/_images/Follower09.png new file mode 100644 index 00000000..9451464d Binary files /dev/null and b/_images/Follower09.png differ diff --git a/_images/Follower10.png b/_images/Follower10.png new file mode 100644 index 00000000..098a7917 Binary files /dev/null and b/_images/Follower10.png differ diff --git a/_images/Follower11.png b/_images/Follower11.png new file mode 100644 index 00000000..2a19232d Binary files /dev/null and b/_images/Follower11.png differ diff --git a/_images/Follower12.png b/_images/Follower12.png new file mode 100644 index 00000000..46fc10a2 Binary files /dev/null and b/_images/Follower12.png differ diff --git a/_images/GCNS.png b/_images/GCNS.png new file mode 100644 index 00000000..f0b6c35b Binary files /dev/null and b/_images/GCNS.png differ diff --git a/_images/GoogleCloud.png b/_images/GoogleCloud.png new file mode 100644 index 00000000..30425501 Binary files /dev/null and b/_images/GoogleCloud.png differ diff --git a/_images/Heroku.png b/_images/Heroku.png new file mode 100644 index 00000000..02a92ce2 Binary files /dev/null and b/_images/Heroku.png differ diff --git a/_images/HerokuE02.png b/_images/HerokuE02.png new file mode 100644 index 00000000..0cf261c7 Binary files /dev/null and b/_images/HerokuE02.png differ diff --git a/_images/HerokuE03.png b/_images/HerokuE03.png new file mode 100644 index 00000000..a5948abf Binary files /dev/null and b/_images/HerokuE03.png differ diff --git a/_images/HerokuH01.png b/_images/HerokuH01.png new file mode 100644 index 00000000..ce2e0875 Binary files /dev/null and b/_images/HerokuH01.png differ diff --git a/_images/HerokuH02.png b/_images/HerokuH02.png new file mode 100644 index 00000000..d7721338 Binary files /dev/null and b/_images/HerokuH02.png differ diff --git a/_images/HerokuH03.png b/_images/HerokuH03.png new file mode 100644 index 00000000..00227212 Binary files /dev/null and b/_images/HerokuH03.png differ diff --git a/_images/HerokuH04.png b/_images/HerokuH04.png new file mode 100644 index 00000000..e74aa6bf Binary files /dev/null and b/_images/HerokuH04.png differ diff --git a/_images/HerokuM01.png b/_images/HerokuM01.png new file mode 100644 index 00000000..d1970e54 Binary files /dev/null and b/_images/HerokuM01.png differ diff --git a/_images/HerokuM02.png b/_images/HerokuM02.png new file mode 100644 index 00000000..efeb6151 Binary files /dev/null and b/_images/HerokuM02.png differ diff --git a/_images/HerokuM03.png b/_images/HerokuM03.png new file mode 100644 index 00000000..b5c65fd8 Binary files /dev/null and b/_images/HerokuM03.png differ diff --git a/_images/HerokuM04.png b/_images/HerokuM04.png new file mode 100644 index 00000000..1fabfa71 Binary files /dev/null and b/_images/HerokuM04.png differ diff --git a/_images/IFTTT_NSkey.png b/_images/IFTTT_NSkey.png new file mode 100644 index 00000000..8322a2cf Binary files /dev/null and b/_images/IFTTT_NSkey.png differ diff --git a/_images/IFTTT_button.png b/_images/IFTTT_button.png new file mode 100644 index 00000000..10720e54 Binary files /dev/null and b/_images/IFTTT_button.png differ diff --git a/_images/IFTTT_buttonpress.png b/_images/IFTTT_buttonpress.png new file mode 100644 index 00000000..10165523 Binary files /dev/null and b/_images/IFTTT_buttonpress.png differ diff --git a/_images/IFTTT_connect1.png b/_images/IFTTT_connect1.png new file mode 100644 index 00000000..b1dcedd4 Binary files /dev/null and b/_images/IFTTT_connect1.png differ diff --git a/_images/IFTTT_enable.png b/_images/IFTTT_enable.png new file mode 100644 index 00000000..a3963c40 Binary files /dev/null and b/_images/IFTTT_enable.png differ diff --git a/_images/IFTTT_newapplet.png b/_images/IFTTT_newapplet.png new file mode 100644 index 00000000..0ce3057c Binary files /dev/null and b/_images/IFTTT_newapplet.png differ diff --git a/_images/IFTTT_reorder.png b/_images/IFTTT_reorder.png new file mode 100644 index 00000000..740888a9 Binary files /dev/null and b/_images/IFTTT_reorder.png differ diff --git a/_images/IFTTT_signup.png b/_images/IFTTT_signup.png new file mode 100644 index 00000000..fbac6891 Binary files /dev/null and b/_images/IFTTT_signup.png differ diff --git a/_images/IFTTT_that.png b/_images/IFTTT_that.png new file mode 100644 index 00000000..de782d8f Binary files /dev/null and b/_images/IFTTT_that.png differ diff --git a/_images/IFTTT_that2.png b/_images/IFTTT_that2.png new file mode 100644 index 00000000..30ab60a0 Binary files /dev/null and b/_images/IFTTT_that2.png differ diff --git a/_images/IFTTT_this.png b/_images/IFTTT_this.png new file mode 100644 index 00000000..d51c4499 Binary files /dev/null and b/_images/IFTTT_this.png differ diff --git a/_images/IFTTT_today.PNG b/_images/IFTTT_today.PNG new file mode 100644 index 00000000..a418381b Binary files /dev/null and b/_images/IFTTT_today.PNG differ diff --git a/_images/IconAAuto.png b/_images/IconAAuto.png new file mode 100644 index 00000000..27981f23 Binary files /dev/null and b/_images/IconAAuto.png differ diff --git a/_images/IconPhone.png b/_images/IconPhone.png new file mode 100644 index 00000000..7be53716 Binary files /dev/null and b/_images/IconPhone.png differ diff --git a/_images/IconSW.png b/_images/IconSW.png new file mode 100644 index 00000000..c355501f Binary files /dev/null and b/_images/IconSW.png differ diff --git a/_images/IconTablet.png b/_images/IconTablet.png new file mode 100644 index 00000000..dcb07c1c Binary files /dev/null and b/_images/IconTablet.png differ diff --git a/_images/LockNO.png b/_images/LockNO.png new file mode 100644 index 00000000..9e74198a Binary files /dev/null and b/_images/LockNO.png differ diff --git a/_images/LockOK.png b/_images/LockOK.png new file mode 100644 index 00000000..ad871759 Binary files /dev/null and b/_images/LockOK.png differ diff --git a/_images/MFA00.png b/_images/MFA00.png new file mode 100644 index 00000000..88be4a88 Binary files /dev/null and b/_images/MFA00.png differ diff --git a/_images/MFA00a.png b/_images/MFA00a.png new file mode 100644 index 00000000..9d4484fa Binary files /dev/null and b/_images/MFA00a.png differ diff --git a/_images/MFA01.png b/_images/MFA01.png new file mode 100644 index 00000000..11c5efad Binary files /dev/null and b/_images/MFA01.png differ diff --git a/_images/MFA02.png b/_images/MFA02.png new file mode 100644 index 00000000..3a8421c1 Binary files /dev/null and b/_images/MFA02.png differ diff --git a/_images/MFA03.png b/_images/MFA03.png new file mode 100644 index 00000000..52075e3b Binary files /dev/null and b/_images/MFA03.png differ diff --git a/_images/MFA03b.png b/_images/MFA03b.png new file mode 100644 index 00000000..d38f78d7 Binary files /dev/null and b/_images/MFA03b.png differ diff --git a/_images/MFA03c.png b/_images/MFA03c.png new file mode 100644 index 00000000..a2f781fd Binary files /dev/null and b/_images/MFA03c.png differ diff --git a/_images/MFA03d.png b/_images/MFA03d.png new file mode 100644 index 00000000..7ce86d1e Binary files /dev/null and b/_images/MFA03d.png differ diff --git a/_images/MFA03e.png b/_images/MFA03e.png new file mode 100644 index 00000000..60ec7538 Binary files /dev/null and b/_images/MFA03e.png differ diff --git a/_images/MFA03f.png b/_images/MFA03f.png new file mode 100644 index 00000000..3dc7ba03 Binary files /dev/null and b/_images/MFA03f.png differ diff --git a/_images/MFA03g.png b/_images/MFA03g.png new file mode 100644 index 00000000..25ef54ab Binary files /dev/null and b/_images/MFA03g.png differ diff --git a/_images/MFA04.png b/_images/MFA04.png new file mode 100644 index 00000000..61e1d369 Binary files /dev/null and b/_images/MFA04.png differ diff --git a/_images/MFA04a.png b/_images/MFA04a.png new file mode 100644 index 00000000..8f6b4fd4 Binary files /dev/null and b/_images/MFA04a.png differ diff --git a/_images/MFA05.png b/_images/MFA05.png new file mode 100644 index 00000000..b5aaaf34 Binary files /dev/null and b/_images/MFA05.png differ diff --git a/_images/MFA06.png b/_images/MFA06.png new file mode 100644 index 00000000..576daa29 Binary files /dev/null and b/_images/MFA06.png differ diff --git a/_images/MFA07.png b/_images/MFA07.png new file mode 100644 index 00000000..7862111c Binary files /dev/null and b/_images/MFA07.png differ diff --git a/_images/MFA08.png b/_images/MFA08.png new file mode 100644 index 00000000..8eaeced2 Binary files /dev/null and b/_images/MFA08.png differ diff --git a/_images/MigrateNS57.png b/_images/MigrateNS57.png new file mode 100644 index 00000000..0ac0c03b Binary files /dev/null and b/_images/MigrateNS57.png differ diff --git a/_images/MongoDB.png b/_images/MongoDB.png new file mode 100644 index 00000000..d533ecbd Binary files /dev/null and b/_images/MongoDB.png differ diff --git a/_images/MultiNS00.png b/_images/MultiNS00.png new file mode 100644 index 00000000..dd74dacf Binary files /dev/null and b/_images/MultiNS00.png differ diff --git a/_images/MultiNS01.png b/_images/MultiNS01.png new file mode 100644 index 00000000..c92ffe58 Binary files /dev/null and b/_images/MultiNS01.png differ diff --git a/_images/MultiNS02.png b/_images/MultiNS02.png new file mode 100644 index 00000000..8fd7762f Binary files /dev/null and b/_images/MultiNS02.png differ diff --git a/_images/MultiNS03.png b/_images/MultiNS03.png new file mode 100644 index 00000000..47e77e3a Binary files /dev/null and b/_images/MultiNS03.png differ diff --git a/_images/MultiNS04.png b/_images/MultiNS04.png new file mode 100644 index 00000000..2a407614 Binary files /dev/null and b/_images/MultiNS04.png differ diff --git a/_images/MultiNS05.png b/_images/MultiNS05.png new file mode 100644 index 00000000..20516ee2 Binary files /dev/null and b/_images/MultiNS05.png differ diff --git a/_images/MultiNS06.png b/_images/MultiNS06.png new file mode 100644 index 00000000..b42156c5 Binary files /dev/null and b/_images/MultiNS06.png differ diff --git a/_images/MultiNS07.png b/_images/MultiNS07.png new file mode 100644 index 00000000..d45f4e8a Binary files /dev/null and b/_images/MultiNS07.png differ diff --git a/_images/MultiNS08.png b/_images/MultiNS08.png new file mode 100644 index 00000000..5805b2b6 Binary files /dev/null and b/_images/MultiNS08.png differ diff --git a/_images/MultiNS09.png b/_images/MultiNS09.png new file mode 100644 index 00000000..eb356bb9 Binary files /dev/null and b/_images/MultiNS09.png differ diff --git a/_images/MultiNS10.png b/_images/MultiNS10.png new file mode 100644 index 00000000..4bd9c7e5 Binary files /dev/null and b/_images/MultiNS10.png differ diff --git a/_images/MultiNS11.png b/_images/MultiNS11.png new file mode 100644 index 00000000..ff1b101b Binary files /dev/null and b/_images/MultiNS11.png differ diff --git a/_images/MultiNS12.png b/_images/MultiNS12.png new file mode 100644 index 00000000..b31c3b33 Binary files /dev/null and b/_images/MultiNS12.png differ diff --git a/_images/MultiNS13.png b/_images/MultiNS13.png new file mode 100644 index 00000000..807dc26d Binary files /dev/null and b/_images/MultiNS13.png differ diff --git a/_images/MultiNS14.png b/_images/MultiNS14.png new file mode 100644 index 00000000..e43c4953 Binary files /dev/null and b/_images/MultiNS14.png differ diff --git a/_images/MultiNS15.png b/_images/MultiNS15.png new file mode 100644 index 00000000..672cf92c Binary files /dev/null and b/_images/MultiNS15.png differ diff --git a/_images/NewBranch.png b/_images/NewBranch.png new file mode 100644 index 00000000..40e57ea4 Binary files /dev/null and b/_images/NewBranch.png differ diff --git a/_images/NewNS00.png b/_images/NewNS00.png new file mode 100644 index 00000000..201bc856 Binary files /dev/null and b/_images/NewNS00.png differ diff --git a/_images/NewNS00a.png b/_images/NewNS00a.png new file mode 100644 index 00000000..9fcc7fae Binary files /dev/null and b/_images/NewNS00a.png differ diff --git a/_images/NewNS01.png b/_images/NewNS01.png new file mode 100644 index 00000000..4d0d0fb3 Binary files /dev/null and b/_images/NewNS01.png differ diff --git a/_images/NewNS02.png b/_images/NewNS02.png new file mode 100644 index 00000000..768b8d65 Binary files /dev/null and b/_images/NewNS02.png differ diff --git a/_images/NewNS03.png b/_images/NewNS03.png new file mode 100644 index 00000000..7c9c6334 Binary files /dev/null and b/_images/NewNS03.png differ diff --git a/_images/NewNS04.png b/_images/NewNS04.png new file mode 100644 index 00000000..42ee3404 Binary files /dev/null and b/_images/NewNS04.png differ diff --git a/_images/NewNS07.png b/_images/NewNS07.png new file mode 100644 index 00000000..658cb63f Binary files /dev/null and b/_images/NewNS07.png differ diff --git a/_images/NewNS09.png b/_images/NewNS09.png new file mode 100644 index 00000000..101d7944 Binary files /dev/null and b/_images/NewNS09.png differ diff --git a/_images/NewNS10.png b/_images/NewNS10.png new file mode 100644 index 00000000..09fd22b2 Binary files /dev/null and b/_images/NewNS10.png differ diff --git a/_images/NewNS11.png b/_images/NewNS11.png new file mode 100644 index 00000000..9ecb3abc Binary files /dev/null and b/_images/NewNS11.png differ diff --git a/_images/NewNS12.png b/_images/NewNS12.png new file mode 100644 index 00000000..92250fdc Binary files /dev/null and b/_images/NewNS12.png differ diff --git a/_images/NewNS12a.png b/_images/NewNS12a.png new file mode 100644 index 00000000..9c0b987e Binary files /dev/null and b/_images/NewNS12a.png differ diff --git a/_images/NewNS13.png b/_images/NewNS13.png new file mode 100644 index 00000000..2796f37f Binary files /dev/null and b/_images/NewNS13.png differ diff --git a/_images/NewNS14.png b/_images/NewNS14.png new file mode 100644 index 00000000..3c285652 Binary files /dev/null and b/_images/NewNS14.png differ diff --git a/_images/NewNS15.png b/_images/NewNS15.png new file mode 100644 index 00000000..12fb2180 Binary files /dev/null and b/_images/NewNS15.png differ diff --git a/_images/NewNS16.png b/_images/NewNS16.png new file mode 100644 index 00000000..f89b7a26 Binary files /dev/null and b/_images/NewNS16.png differ diff --git a/_images/NewNS18.png b/_images/NewNS18.png new file mode 100644 index 00000000..09e00b76 Binary files /dev/null and b/_images/NewNS18.png differ diff --git a/_images/NewNS18b.png b/_images/NewNS18b.png new file mode 100644 index 00000000..723a172a Binary files /dev/null and b/_images/NewNS18b.png differ diff --git a/_images/NewNS18c.png b/_images/NewNS18c.png new file mode 100644 index 00000000..bbde4a3d Binary files /dev/null and b/_images/NewNS18c.png differ diff --git a/_images/NewNS18d.png b/_images/NewNS18d.png new file mode 100644 index 00000000..1a3c9435 Binary files /dev/null and b/_images/NewNS18d.png differ diff --git a/_images/NewNS18e.png b/_images/NewNS18e.png new file mode 100644 index 00000000..23a7c835 Binary files /dev/null and b/_images/NewNS18e.png differ diff --git a/_images/NewNS19.png b/_images/NewNS19.png new file mode 100644 index 00000000..0e0a3f5f Binary files /dev/null and b/_images/NewNS19.png differ diff --git a/_images/NewNS19b.png b/_images/NewNS19b.png new file mode 100644 index 00000000..fe64c45d Binary files /dev/null and b/_images/NewNS19b.png differ diff --git a/_images/NewNS20.png b/_images/NewNS20.png new file mode 100644 index 00000000..2822af2e Binary files /dev/null and b/_images/NewNS20.png differ diff --git a/_images/NewNS21.png b/_images/NewNS21.png new file mode 100644 index 00000000..5adffbcd Binary files /dev/null and b/_images/NewNS21.png differ diff --git a/_images/NewNS22.png b/_images/NewNS22.png new file mode 100644 index 00000000..747e2753 Binary files /dev/null and b/_images/NewNS22.png differ diff --git a/_images/NewNS23.png b/_images/NewNS23.png new file mode 100644 index 00000000..5130a75f Binary files /dev/null and b/_images/NewNS23.png differ diff --git a/_images/NewNS24.png b/_images/NewNS24.png new file mode 100644 index 00000000..f07e0c24 Binary files /dev/null and b/_images/NewNS24.png differ diff --git a/_images/NewNS24b.png b/_images/NewNS24b.png new file mode 100644 index 00000000..d0915a8a Binary files /dev/null and b/_images/NewNS24b.png differ diff --git a/_images/NewNS25.png b/_images/NewNS25.png new file mode 100644 index 00000000..229a0531 Binary files /dev/null and b/_images/NewNS25.png differ diff --git a/_images/NewNS26.png b/_images/NewNS26.png new file mode 100644 index 00000000..aba72891 Binary files /dev/null and b/_images/NewNS26.png differ diff --git a/_images/NewNS27.png b/_images/NewNS27.png new file mode 100644 index 00000000..62be24da Binary files /dev/null and b/_images/NewNS27.png differ diff --git a/_images/NewNS28.png b/_images/NewNS28.png new file mode 100644 index 00000000..d99bc2c3 Binary files /dev/null and b/_images/NewNS28.png differ diff --git a/_images/NewNS29.png b/_images/NewNS29.png new file mode 100644 index 00000000..b42412cf Binary files /dev/null and b/_images/NewNS29.png differ diff --git a/_images/NewNS30.png b/_images/NewNS30.png new file mode 100644 index 00000000..86c752c3 Binary files /dev/null and b/_images/NewNS30.png differ diff --git a/_images/NewNS33.png b/_images/NewNS33.png new file mode 100644 index 00000000..bb3e523f Binary files /dev/null and b/_images/NewNS33.png differ diff --git a/_images/NewNS34.png b/_images/NewNS34.png new file mode 100644 index 00000000..c8113c01 Binary files /dev/null and b/_images/NewNS34.png differ diff --git a/_images/NewNS35.png b/_images/NewNS35.png new file mode 100644 index 00000000..72075dea Binary files /dev/null and b/_images/NewNS35.png differ diff --git a/_images/NewNS36.png b/_images/NewNS36.png new file mode 100644 index 00000000..6afed074 Binary files /dev/null and b/_images/NewNS36.png differ diff --git a/_images/NewNS37.png b/_images/NewNS37.png new file mode 100644 index 00000000..9376facc Binary files /dev/null and b/_images/NewNS37.png differ diff --git a/_images/NewNS38.png b/_images/NewNS38.png new file mode 100644 index 00000000..9edbb8a8 Binary files /dev/null and b/_images/NewNS38.png differ diff --git a/_images/NewNS39.png b/_images/NewNS39.png new file mode 100644 index 00000000..4d6fe59c Binary files /dev/null and b/_images/NewNS39.png differ diff --git a/_images/NewNS40.png b/_images/NewNS40.png new file mode 100644 index 00000000..b3ce6670 Binary files /dev/null and b/_images/NewNS40.png differ diff --git a/_images/NewNS41.png b/_images/NewNS41.png new file mode 100644 index 00000000..3b868303 Binary files /dev/null and b/_images/NewNS41.png differ diff --git a/_images/NewNS42.png b/_images/NewNS42.png new file mode 100644 index 00000000..fe9c79f6 Binary files /dev/null and b/_images/NewNS42.png differ diff --git a/_images/NewNS43.png b/_images/NewNS43.png new file mode 100644 index 00000000..82057cc3 Binary files /dev/null and b/_images/NewNS43.png differ diff --git a/_images/NewNS44.png b/_images/NewNS44.png new file mode 100644 index 00000000..e6aeff3e Binary files /dev/null and b/_images/NewNS44.png differ diff --git a/_images/NewNS45.png b/_images/NewNS45.png new file mode 100644 index 00000000..18fb3b63 Binary files /dev/null and b/_images/NewNS45.png differ diff --git a/_images/NewNS46.png b/_images/NewNS46.png new file mode 100644 index 00000000..068fd9c5 Binary files /dev/null and b/_images/NewNS46.png differ diff --git a/_images/NewNS47.png b/_images/NewNS47.png new file mode 100644 index 00000000..4c3349fc Binary files /dev/null and b/_images/NewNS47.png differ diff --git a/_images/NewNS48.png b/_images/NewNS48.png new file mode 100644 index 00000000..67337f09 Binary files /dev/null and b/_images/NewNS48.png differ diff --git a/_images/NewNS49.png b/_images/NewNS49.png new file mode 100644 index 00000000..e4f27699 Binary files /dev/null and b/_images/NewNS49.png differ diff --git a/_images/NewNS50.png b/_images/NewNS50.png new file mode 100644 index 00000000..42a5194a Binary files /dev/null and b/_images/NewNS50.png differ diff --git a/_images/NewNS51.png b/_images/NewNS51.png new file mode 100644 index 00000000..4c8409a1 Binary files /dev/null and b/_images/NewNS51.png differ diff --git a/_images/Northflank.png b/_images/Northflank.png new file mode 100644 index 00000000..584d4aa3 Binary files /dev/null and b/_images/Northflank.png differ diff --git a/_images/Northflank00.png b/_images/Northflank00.png new file mode 100644 index 00000000..a3b39580 Binary files /dev/null and b/_images/Northflank00.png differ diff --git a/_images/Northflank00a.png b/_images/Northflank00a.png new file mode 100644 index 00000000..0109d221 Binary files /dev/null and b/_images/Northflank00a.png differ diff --git a/_images/Northflank00b.png b/_images/Northflank00b.png new file mode 100644 index 00000000..200a2caf Binary files /dev/null and b/_images/Northflank00b.png differ diff --git a/_images/Northflank00c.png b/_images/Northflank00c.png new file mode 100644 index 00000000..fa76f1ec Binary files /dev/null and b/_images/Northflank00c.png differ diff --git a/_images/Northflank01.png b/_images/Northflank01.png new file mode 100644 index 00000000..06f14989 Binary files /dev/null and b/_images/Northflank01.png differ diff --git a/_images/Northflank02.png b/_images/Northflank02.png new file mode 100644 index 00000000..7d19d412 Binary files /dev/null and b/_images/Northflank02.png differ diff --git a/_images/Northflank03.png b/_images/Northflank03.png new file mode 100644 index 00000000..b88d9285 Binary files /dev/null and b/_images/Northflank03.png differ diff --git a/_images/Northflank04.png b/_images/Northflank04.png new file mode 100644 index 00000000..841f8c10 Binary files /dev/null and b/_images/Northflank04.png differ diff --git a/_images/Northflank05.png b/_images/Northflank05.png new file mode 100644 index 00000000..e19a942e Binary files /dev/null and b/_images/Northflank05.png differ diff --git a/_images/Northflank06.png b/_images/Northflank06.png new file mode 100644 index 00000000..5451dc63 Binary files /dev/null and b/_images/Northflank06.png differ diff --git a/_images/Northflank07.png b/_images/Northflank07.png new file mode 100644 index 00000000..47af362d Binary files /dev/null and b/_images/Northflank07.png differ diff --git a/_images/Northflank08.png b/_images/Northflank08.png new file mode 100644 index 00000000..95103c1f Binary files /dev/null and b/_images/Northflank08.png differ diff --git a/_images/Northflank09.png b/_images/Northflank09.png new file mode 100644 index 00000000..75d160c6 Binary files /dev/null and b/_images/Northflank09.png differ diff --git a/_images/Northflank10.png b/_images/Northflank10.png new file mode 100644 index 00000000..7fa90132 Binary files /dev/null and b/_images/Northflank10.png differ diff --git a/_images/Northflank11.png b/_images/Northflank11.png new file mode 100644 index 00000000..cee472c2 Binary files /dev/null and b/_images/Northflank11.png differ diff --git a/_images/Northflank11b.png b/_images/Northflank11b.png new file mode 100644 index 00000000..a78223dc Binary files /dev/null and b/_images/Northflank11b.png differ diff --git a/_images/Northflank12.png b/_images/Northflank12.png new file mode 100644 index 00000000..9c479c22 Binary files /dev/null and b/_images/Northflank12.png differ diff --git a/_images/Northflank13.png b/_images/Northflank13.png new file mode 100644 index 00000000..f9e564a9 Binary files /dev/null and b/_images/Northflank13.png differ diff --git a/_images/Northflank14.png b/_images/Northflank14.png new file mode 100644 index 00000000..3c6b46b7 Binary files /dev/null and b/_images/Northflank14.png differ diff --git a/_images/Northflank15.png b/_images/Northflank15.png new file mode 100644 index 00000000..58b19d9f Binary files /dev/null and b/_images/Northflank15.png differ diff --git a/_images/Northflank16.png b/_images/Northflank16.png new file mode 100644 index 00000000..066b8745 Binary files /dev/null and b/_images/Northflank16.png differ diff --git a/_images/Northflank17.png b/_images/Northflank17.png new file mode 100644 index 00000000..f7a847a6 Binary files /dev/null and b/_images/Northflank17.png differ diff --git a/_images/Northflank18.png b/_images/Northflank18.png new file mode 100644 index 00000000..d1d03c22 Binary files /dev/null and b/_images/Northflank18.png differ diff --git a/_images/Northflank19.png b/_images/Northflank19.png new file mode 100644 index 00000000..3a305c27 Binary files /dev/null and b/_images/Northflank19.png differ diff --git a/_images/Northflank20.png b/_images/Northflank20.png new file mode 100644 index 00000000..f9329050 Binary files /dev/null and b/_images/Northflank20.png differ diff --git a/_images/Northflank21.png b/_images/Northflank21.png new file mode 100644 index 00000000..4b61be3d Binary files /dev/null and b/_images/Northflank21.png differ diff --git a/_images/Northflank22.png b/_images/Northflank22.png new file mode 100644 index 00000000..777dabd1 Binary files /dev/null and b/_images/Northflank22.png differ diff --git a/_images/Northflank22a.png b/_images/Northflank22a.png new file mode 100644 index 00000000..278017ff Binary files /dev/null and b/_images/Northflank22a.png differ diff --git a/_images/Northflank23.png b/_images/Northflank23.png new file mode 100644 index 00000000..5d0b12af Binary files /dev/null and b/_images/Northflank23.png differ diff --git a/_images/Northflank24.png b/_images/Northflank24.png new file mode 100644 index 00000000..375f3b02 Binary files /dev/null and b/_images/Northflank24.png differ diff --git a/_images/Northflank25.png b/_images/Northflank25.png new file mode 100644 index 00000000..fbd647e8 Binary files /dev/null and b/_images/Northflank25.png differ diff --git a/_images/Northflank26.png b/_images/Northflank26.png new file mode 100644 index 00000000..551f32ac Binary files /dev/null and b/_images/Northflank26.png differ diff --git a/_images/Northflank27.png b/_images/Northflank27.png new file mode 100644 index 00000000..a2be8126 Binary files /dev/null and b/_images/Northflank27.png differ diff --git a/_images/Northflank28.png b/_images/Northflank28.png new file mode 100644 index 00000000..2ae75698 Binary files /dev/null and b/_images/Northflank28.png differ diff --git a/_images/Northflank29.png b/_images/Northflank29.png new file mode 100644 index 00000000..90928085 Binary files /dev/null and b/_images/Northflank29.png differ diff --git a/_images/Northflank30.png b/_images/Northflank30.png new file mode 100644 index 00000000..1a9c1d95 Binary files /dev/null and b/_images/Northflank30.png differ diff --git a/_images/Northflank31.png b/_images/Northflank31.png new file mode 100644 index 00000000..0d62112a Binary files /dev/null and b/_images/Northflank31.png differ diff --git a/_images/Northflank32.png b/_images/Northflank32.png new file mode 100644 index 00000000..75de8d91 Binary files /dev/null and b/_images/Northflank32.png differ diff --git a/_images/Northflank33.png b/_images/Northflank33.png new file mode 100644 index 00000000..179cd025 Binary files /dev/null and b/_images/Northflank33.png differ diff --git a/_images/Northflank34.png b/_images/Northflank34.png new file mode 100644 index 00000000..bcf36b5c Binary files /dev/null and b/_images/Northflank34.png differ diff --git a/_images/Northflank36.png b/_images/Northflank36.png new file mode 100644 index 00000000..594e01c0 Binary files /dev/null and b/_images/Northflank36.png differ diff --git a/_images/Northflank37.png b/_images/Northflank37.png new file mode 100644 index 00000000..381eb32d Binary files /dev/null and b/_images/Northflank37.png differ diff --git a/_images/Northflank38.png b/_images/Northflank38.png new file mode 100644 index 00000000..54d2f561 Binary files /dev/null and b/_images/Northflank38.png differ diff --git a/_images/Northflank39.png b/_images/Northflank39.png new file mode 100644 index 00000000..6ee05fff Binary files /dev/null and b/_images/Northflank39.png differ diff --git a/_images/Northflank40.png b/_images/Northflank40.png new file mode 100644 index 00000000..17fcafd4 Binary files /dev/null and b/_images/Northflank40.png differ diff --git a/_images/Northflank41.png b/_images/Northflank41.png new file mode 100644 index 00000000..3ea1e64b Binary files /dev/null and b/_images/Northflank41.png differ diff --git a/_images/NorthflankDB01.png b/_images/NorthflankDB01.png new file mode 100644 index 00000000..a817022d Binary files /dev/null and b/_images/NorthflankDB01.png differ diff --git a/_images/NorthflankDB02.png b/_images/NorthflankDB02.png new file mode 100644 index 00000000..2ad6cbc1 Binary files /dev/null and b/_images/NorthflankDB02.png differ diff --git a/_images/NorthflankDB02a.png b/_images/NorthflankDB02a.png new file mode 100644 index 00000000..a9d29d81 Binary files /dev/null and b/_images/NorthflankDB02a.png differ diff --git a/_images/NorthflankDB03.png b/_images/NorthflankDB03.png new file mode 100644 index 00000000..cf6830d2 Binary files /dev/null and b/_images/NorthflankDB03.png differ diff --git a/_images/NorthflankDB04.png b/_images/NorthflankDB04.png new file mode 100644 index 00000000..5f8bcec3 Binary files /dev/null and b/_images/NorthflankDB04.png differ diff --git a/_images/NorthflankDB05.png b/_images/NorthflankDB05.png new file mode 100644 index 00000000..ba69cc16 Binary files /dev/null and b/_images/NorthflankDB05.png differ diff --git a/_images/NorthflankDB06.png b/_images/NorthflankDB06.png new file mode 100644 index 00000000..ab38154d Binary files /dev/null and b/_images/NorthflankDB06.png differ diff --git a/_images/NorthflankDB07.png b/_images/NorthflankDB07.png new file mode 100644 index 00000000..5c333670 Binary files /dev/null and b/_images/NorthflankDB07.png differ diff --git a/_images/NorthflankDB08.png b/_images/NorthflankDB08.png new file mode 100644 index 00000000..b60aef9c Binary files /dev/null and b/_images/NorthflankDB08.png differ diff --git a/_images/NorthflankDB09.png b/_images/NorthflankDB09.png new file mode 100644 index 00000000..a9e95935 Binary files /dev/null and b/_images/NorthflankDB09.png differ diff --git a/_images/NorthflankDB10.png b/_images/NorthflankDB10.png new file mode 100644 index 00000000..cfd202c2 Binary files /dev/null and b/_images/NorthflankDB10.png differ diff --git a/_images/NorthflankM01.png b/_images/NorthflankM01.png new file mode 100644 index 00000000..dc45b35e Binary files /dev/null and b/_images/NorthflankM01.png differ diff --git a/_images/NorthflankM02.png b/_images/NorthflankM02.png new file mode 100644 index 00000000..622e3a53 Binary files /dev/null and b/_images/NorthflankM02.png differ diff --git a/_images/NorthflankM03.png b/_images/NorthflankM03.png new file mode 100644 index 00000000..9ce7ad8a Binary files /dev/null and b/_images/NorthflankM03.png differ diff --git a/_images/NorthflankM04.png b/_images/NorthflankM04.png new file mode 100644 index 00000000..92025ef5 Binary files /dev/null and b/_images/NorthflankM04.png differ diff --git a/_images/NorthflankM05.png b/_images/NorthflankM05.png new file mode 100644 index 00000000..32b6ba39 Binary files /dev/null and b/_images/NorthflankM05.png differ diff --git a/_images/NorthflankM06.png b/_images/NorthflankM06.png new file mode 100644 index 00000000..cb95a932 Binary files /dev/null and b/_images/NorthflankM06.png differ diff --git a/_images/NorthflankM07.png b/_images/NorthflankM07.png new file mode 100644 index 00000000..ae988b20 Binary files /dev/null and b/_images/NorthflankM07.png differ diff --git a/_images/NorthflankM08.png b/_images/NorthflankM08.png new file mode 100644 index 00000000..810b4781 Binary files /dev/null and b/_images/NorthflankM08.png differ diff --git a/_images/NorthflankM09.png b/_images/NorthflankM09.png new file mode 100644 index 00000000..3bc1fc21 Binary files /dev/null and b/_images/NorthflankM09.png differ diff --git a/_images/NorthflankM10.png b/_images/NorthflankM10.png new file mode 100644 index 00000000..abf18d33 Binary files /dev/null and b/_images/NorthflankM10.png differ diff --git a/_images/NorthflankS1.png b/_images/NorthflankS1.png new file mode 100644 index 00000000..6b3c2f5e Binary files /dev/null and b/_images/NorthflankS1.png differ diff --git a/_images/NorthflankS2.png b/_images/NorthflankS2.png new file mode 100644 index 00000000..07a5a580 Binary files /dev/null and b/_images/NorthflankS2.png differ diff --git a/_images/NorthflankSP.png b/_images/NorthflankSP.png new file mode 100644 index 00000000..1aab5290 Binary files /dev/null and b/_images/NorthflankSP.png differ diff --git a/_images/NorthflankT01.png b/_images/NorthflankT01.png new file mode 100644 index 00000000..c4a225e1 Binary files /dev/null and b/_images/NorthflankT01.png differ diff --git a/_images/NorthflankT02.png b/_images/NorthflankT02.png new file mode 100644 index 00000000..308816d1 Binary files /dev/null and b/_images/NorthflankT02.png differ diff --git a/_images/PebbleNSFoundation.jpeg b/_images/PebbleNSFoundation.jpeg new file mode 100644 index 00000000..8768a775 Binary files /dev/null and b/_images/PebbleNSFoundation.jpeg differ diff --git a/_images/Profile00.png b/_images/Profile00.png new file mode 100644 index 00000000..846e8ad4 Binary files /dev/null and b/_images/Profile00.png differ diff --git a/_images/Profile01.png b/_images/Profile01.png new file mode 100644 index 00000000..30a66453 Binary files /dev/null and b/_images/Profile01.png differ diff --git a/_images/Profile02.png b/_images/Profile02.png new file mode 100644 index 00000000..341211e3 Binary files /dev/null and b/_images/Profile02.png differ diff --git a/_images/Profile03.png b/_images/Profile03.png new file mode 100644 index 00000000..ac4867ae Binary files /dev/null and b/_images/Profile03.png differ diff --git a/_images/Profile04.png b/_images/Profile04.png new file mode 100644 index 00000000..0debdaae Binary files /dev/null and b/_images/Profile04.png differ diff --git a/_images/Profile05.png b/_images/Profile05.png new file mode 100644 index 00000000..8ce1865a Binary files /dev/null and b/_images/Profile05.png differ diff --git a/_images/Profile06.png b/_images/Profile06.png new file mode 100644 index 00000000..ecb5d253 Binary files /dev/null and b/_images/Profile06.png differ diff --git a/_images/Profile07.png b/_images/Profile07.png new file mode 100644 index 00000000..556bc363 Binary files /dev/null and b/_images/Profile07.png differ diff --git a/_images/Railway.png b/_images/Railway.png new file mode 100644 index 00000000..18332c11 Binary files /dev/null and b/_images/Railway.png differ diff --git a/_images/Railway00.png b/_images/Railway00.png new file mode 100644 index 00000000..53714052 Binary files /dev/null and b/_images/Railway00.png differ diff --git a/_images/Railway01.png b/_images/Railway01.png new file mode 100644 index 00000000..fbbde892 Binary files /dev/null and b/_images/Railway01.png differ diff --git a/_images/Railway01a.png b/_images/Railway01a.png new file mode 100644 index 00000000..0c6c3eed Binary files /dev/null and b/_images/Railway01a.png differ diff --git a/_images/Railway01b.png b/_images/Railway01b.png new file mode 100644 index 00000000..cfd8ecee Binary files /dev/null and b/_images/Railway01b.png differ diff --git a/_images/Railway01c.png b/_images/Railway01c.png new file mode 100644 index 00000000..97b944fe Binary files /dev/null and b/_images/Railway01c.png differ diff --git a/_images/Railway01d.png b/_images/Railway01d.png new file mode 100644 index 00000000..6a6e8067 Binary files /dev/null and b/_images/Railway01d.png differ diff --git a/_images/Railway01e.png b/_images/Railway01e.png new file mode 100644 index 00000000..1dcded51 Binary files /dev/null and b/_images/Railway01e.png differ diff --git a/_images/Railway02.png b/_images/Railway02.png new file mode 100644 index 00000000..9b912727 Binary files /dev/null and b/_images/Railway02.png differ diff --git a/_images/Railway03.png b/_images/Railway03.png new file mode 100644 index 00000000..b509a527 Binary files /dev/null and b/_images/Railway03.png differ diff --git a/_images/Railway04.png b/_images/Railway04.png new file mode 100644 index 00000000..ba7c55d5 Binary files /dev/null and b/_images/Railway04.png differ diff --git a/_images/Railway05.png b/_images/Railway05.png new file mode 100644 index 00000000..b7e0d9fa Binary files /dev/null and b/_images/Railway05.png differ diff --git a/_images/Railway06.png b/_images/Railway06.png new file mode 100644 index 00000000..1f7dafb9 Binary files /dev/null and b/_images/Railway06.png differ diff --git a/_images/Railway06a.png b/_images/Railway06a.png new file mode 100644 index 00000000..1b7292c6 Binary files /dev/null and b/_images/Railway06a.png differ diff --git a/_images/Railway06a2.png b/_images/Railway06a2.png new file mode 100644 index 00000000..812a1f23 Binary files /dev/null and b/_images/Railway06a2.png differ diff --git a/_images/Railway06b.png b/_images/Railway06b.png new file mode 100644 index 00000000..a715e8c8 Binary files /dev/null and b/_images/Railway06b.png differ diff --git a/_images/Railway06b2.png b/_images/Railway06b2.png new file mode 100644 index 00000000..77582b01 Binary files /dev/null and b/_images/Railway06b2.png differ diff --git a/_images/Railway06c.png b/_images/Railway06c.png new file mode 100644 index 00000000..08e4727e Binary files /dev/null and b/_images/Railway06c.png differ diff --git a/_images/Railway07.png b/_images/Railway07.png new file mode 100644 index 00000000..d6a38d22 Binary files /dev/null and b/_images/Railway07.png differ diff --git a/_images/Railway07a.png b/_images/Railway07a.png new file mode 100644 index 00000000..8b72041c Binary files /dev/null and b/_images/Railway07a.png differ diff --git a/_images/Railway08.png b/_images/Railway08.png new file mode 100644 index 00000000..260e29ab Binary files /dev/null and b/_images/Railway08.png differ diff --git a/_images/Railway08a.png b/_images/Railway08a.png new file mode 100644 index 00000000..6e3b6e54 Binary files /dev/null and b/_images/Railway08a.png differ diff --git a/_images/Railway09.png b/_images/Railway09.png new file mode 100644 index 00000000..2d10429e Binary files /dev/null and b/_images/Railway09.png differ diff --git a/_images/Railway10.png b/_images/Railway10.png new file mode 100644 index 00000000..2fe06347 Binary files /dev/null and b/_images/Railway10.png differ diff --git a/_images/Railway11.png b/_images/Railway11.png new file mode 100644 index 00000000..16dfc57f Binary files /dev/null and b/_images/Railway11.png differ diff --git a/_images/Railway13.png b/_images/Railway13.png new file mode 100644 index 00000000..f2bc9216 Binary files /dev/null and b/_images/Railway13.png differ diff --git a/_images/Railway14.png b/_images/Railway14.png new file mode 100644 index 00000000..18df1df4 Binary files /dev/null and b/_images/Railway14.png differ diff --git a/_images/Railway15.png b/_images/Railway15.png new file mode 100644 index 00000000..4e99a787 Binary files /dev/null and b/_images/Railway15.png differ diff --git a/_images/Railway16.png b/_images/Railway16.png new file mode 100644 index 00000000..1fc9b43a Binary files /dev/null and b/_images/Railway16.png differ diff --git a/_images/Railway17.png b/_images/Railway17.png new file mode 100644 index 00000000..ec57e2a6 Binary files /dev/null and b/_images/Railway17.png differ diff --git a/_images/Railway21.png b/_images/Railway21.png new file mode 100644 index 00000000..4ac76c0c Binary files /dev/null and b/_images/Railway21.png differ diff --git a/_images/Railway33.png b/_images/Railway33.png new file mode 100644 index 00000000..93c6515c Binary files /dev/null and b/_images/Railway33.png differ diff --git a/_images/Railway34.png b/_images/Railway34.png new file mode 100644 index 00000000..3231dbd7 Binary files /dev/null and b/_images/Railway34.png differ diff --git a/_images/Railway36.png b/_images/Railway36.png new file mode 100644 index 00000000..48302532 Binary files /dev/null and b/_images/Railway36.png differ diff --git a/_images/Railway37.png b/_images/Railway37.png new file mode 100644 index 00000000..a507cbee Binary files /dev/null and b/_images/Railway37.png differ diff --git a/_images/Railway38.png b/_images/Railway38.png new file mode 100644 index 00000000..6ddf536c Binary files /dev/null and b/_images/Railway38.png differ diff --git a/_images/Railway39.png b/_images/Railway39.png new file mode 100644 index 00000000..86ed3965 Binary files /dev/null and b/_images/Railway39.png differ diff --git a/_images/Railway40.png b/_images/Railway40.png new file mode 100644 index 00000000..de9b645b Binary files /dev/null and b/_images/Railway40.png differ diff --git a/_images/Railway41.png b/_images/Railway41.png new file mode 100644 index 00000000..7d0ecb4d Binary files /dev/null and b/_images/Railway41.png differ diff --git a/_images/Railway42.png b/_images/Railway42.png new file mode 100644 index 00000000..0cf67680 Binary files /dev/null and b/_images/Railway42.png differ diff --git a/_images/Railway43.png b/_images/Railway43.png new file mode 100644 index 00000000..ad6b5e90 Binary files /dev/null and b/_images/Railway43.png differ diff --git a/_images/RailwayD01.png b/_images/RailwayD01.png new file mode 100644 index 00000000..52597ebc Binary files /dev/null and b/_images/RailwayD01.png differ diff --git a/_images/RailwayD02.png b/_images/RailwayD02.png new file mode 100644 index 00000000..c8fc839f Binary files /dev/null and b/_images/RailwayD02.png differ diff --git a/_images/RailwayD03.png b/_images/RailwayD03.png new file mode 100644 index 00000000..a79be881 Binary files /dev/null and b/_images/RailwayD03.png differ diff --git a/_images/RailwayD04.png b/_images/RailwayD04.png new file mode 100644 index 00000000..22e20d3e Binary files /dev/null and b/_images/RailwayD04.png differ diff --git a/_images/RailwayD05.png b/_images/RailwayD05.png new file mode 100644 index 00000000..6b9c209d Binary files /dev/null and b/_images/RailwayD05.png differ diff --git a/_images/RailwayD06.png b/_images/RailwayD06.png new file mode 100644 index 00000000..7d4e2f72 Binary files /dev/null and b/_images/RailwayD06.png differ diff --git a/_images/RailwayD07.png b/_images/RailwayD07.png new file mode 100644 index 00000000..6066f0d3 Binary files /dev/null and b/_images/RailwayD07.png differ diff --git a/_images/RailwayD08.png b/_images/RailwayD08.png new file mode 100644 index 00000000..216607b1 Binary files /dev/null and b/_images/RailwayD08.png differ diff --git a/_images/RailwayD09.png b/_images/RailwayD09.png new file mode 100644 index 00000000..97eaeb88 Binary files /dev/null and b/_images/RailwayD09.png differ diff --git a/_images/RailwayD10.png b/_images/RailwayD10.png new file mode 100644 index 00000000..9b7c647f Binary files /dev/null and b/_images/RailwayD10.png differ diff --git a/_images/RailwayD11.png b/_images/RailwayD11.png new file mode 100644 index 00000000..0f191376 Binary files /dev/null and b/_images/RailwayD11.png differ diff --git a/_images/RailwayDB01.png b/_images/RailwayDB01.png new file mode 100644 index 00000000..99adfcc8 Binary files /dev/null and b/_images/RailwayDB01.png differ diff --git a/_images/RailwayDB02.png b/_images/RailwayDB02.png new file mode 100644 index 00000000..62d9220c Binary files /dev/null and b/_images/RailwayDB02.png differ diff --git a/_images/RailwayDB03.png b/_images/RailwayDB03.png new file mode 100644 index 00000000..d3d20e25 Binary files /dev/null and b/_images/RailwayDB03.png differ diff --git a/_images/RailwayDB04.png b/_images/RailwayDB04.png new file mode 100644 index 00000000..8161a0f8 Binary files /dev/null and b/_images/RailwayDB04.png differ diff --git a/_images/RailwayDB05.png b/_images/RailwayDB05.png new file mode 100644 index 00000000..976ca947 Binary files /dev/null and b/_images/RailwayDB05.png differ diff --git a/_images/RailwayGitHub.png b/_images/RailwayGitHub.png new file mode 100644 index 00000000..12fe3415 Binary files /dev/null and b/_images/RailwayGitHub.png differ diff --git a/_images/RailwayM02.png b/_images/RailwayM02.png new file mode 100644 index 00000000..d952c695 Binary files /dev/null and b/_images/RailwayM02.png differ diff --git a/_images/RailwayM03.png b/_images/RailwayM03.png new file mode 100644 index 00000000..e4211e29 Binary files /dev/null and b/_images/RailwayM03.png differ diff --git a/_images/RailwayM14.png b/_images/RailwayM14.png new file mode 100644 index 00000000..f1ccf4b6 Binary files /dev/null and b/_images/RailwayM14.png differ diff --git a/_images/RailwayM15.png b/_images/RailwayM15.png new file mode 100644 index 00000000..96fefba1 Binary files /dev/null and b/_images/RailwayM15.png differ diff --git a/_images/RailwayM16.png b/_images/RailwayM16.png new file mode 100644 index 00000000..84535638 Binary files /dev/null and b/_images/RailwayM16.png differ diff --git a/_images/RailwayM17.png b/_images/RailwayM17.png new file mode 100644 index 00000000..eabda072 Binary files /dev/null and b/_images/RailwayM17.png differ diff --git a/_images/RailwayM18.png b/_images/RailwayM18.png new file mode 100644 index 00000000..f24ce711 Binary files /dev/null and b/_images/RailwayM18.png differ diff --git a/_images/RailwayM19.png b/_images/RailwayM19.png new file mode 100644 index 00000000..e685b28f Binary files /dev/null and b/_images/RailwayM19.png differ diff --git a/_images/RailwayM20.png b/_images/RailwayM20.png new file mode 100644 index 00000000..0d68b9a5 Binary files /dev/null and b/_images/RailwayM20.png differ diff --git a/_images/RailwayM21.png b/_images/RailwayM21.png new file mode 100644 index 00000000..4536cb83 Binary files /dev/null and b/_images/RailwayM21.png differ diff --git a/_images/RailwayM21b.png b/_images/RailwayM21b.png new file mode 100644 index 00000000..db2afd76 Binary files /dev/null and b/_images/RailwayM21b.png differ diff --git a/_images/RailwayM21c.png b/_images/RailwayM21c.png new file mode 100644 index 00000000..15021d4c Binary files /dev/null and b/_images/RailwayM21c.png differ diff --git a/_images/RailwayM22.png b/_images/RailwayM22.png new file mode 100644 index 00000000..41338d29 Binary files /dev/null and b/_images/RailwayM22.png differ diff --git a/_images/RailwayM23.png b/_images/RailwayM23.png new file mode 100644 index 00000000..fbdd3d7c Binary files /dev/null and b/_images/RailwayM23.png differ diff --git a/_images/RailwayM24.png b/_images/RailwayM24.png new file mode 100644 index 00000000..7fbe2eea Binary files /dev/null and b/_images/RailwayM24.png differ diff --git a/_images/RailwayM25.png b/_images/RailwayM25.png new file mode 100644 index 00000000..cccea027 Binary files /dev/null and b/_images/RailwayM25.png differ diff --git a/_images/RailwayS1.png b/_images/RailwayS1.png new file mode 100644 index 00000000..991993a9 Binary files /dev/null and b/_images/RailwayS1.png differ diff --git a/_images/RailwayS2.png b/_images/RailwayS2.png new file mode 100644 index 00000000..fe258c02 Binary files /dev/null and b/_images/RailwayS2.png differ diff --git a/_images/RailwayT01.png b/_images/RailwayT01.png new file mode 100644 index 00000000..21433cfd Binary files /dev/null and b/_images/RailwayT01.png differ diff --git a/_images/RailwayT02.png b/_images/RailwayT02.png new file mode 100644 index 00000000..187d32aa Binary files /dev/null and b/_images/RailwayT02.png differ diff --git a/_images/RailwayT03.png b/_images/RailwayT03.png new file mode 100644 index 00000000..f3bb33b4 Binary files /dev/null and b/_images/RailwayT03.png differ diff --git a/_images/RailwayT04.png b/_images/RailwayT04.png new file mode 100644 index 00000000..da10cc40 Binary files /dev/null and b/_images/RailwayT04.png differ diff --git a/_images/RailwayT05.png b/_images/RailwayT05.png new file mode 100644 index 00000000..e7f9dfb5 Binary files /dev/null and b/_images/RailwayT05.png differ diff --git a/_images/RailwayT06.png b/_images/RailwayT06.png new file mode 100644 index 00000000..04854dbf Binary files /dev/null and b/_images/RailwayT06.png differ diff --git a/_images/RailwayT07.png b/_images/RailwayT07.png new file mode 100644 index 00000000..86f39afb Binary files /dev/null and b/_images/RailwayT07.png differ diff --git a/_images/RailwayT08.png b/_images/RailwayT08.png new file mode 100644 index 00000000..048826f2 Binary files /dev/null and b/_images/RailwayT08.png differ diff --git a/_images/RailwayT09.png b/_images/RailwayT09.png new file mode 100644 index 00000000..aafd4dab Binary files /dev/null and b/_images/RailwayT09.png differ diff --git a/_images/RailwayT10.png b/_images/RailwayT10.png new file mode 100644 index 00000000..cc92376f Binary files /dev/null and b/_images/RailwayT10.png differ diff --git a/_images/RailwayT11.png b/_images/RailwayT11.png new file mode 100644 index 00000000..02cdb7f9 Binary files /dev/null and b/_images/RailwayT11.png differ diff --git a/_images/RailwayT12.png b/_images/RailwayT12.png new file mode 100644 index 00000000..57c75004 Binary files /dev/null and b/_images/RailwayT12.png differ diff --git a/_images/RailwayT13.png b/_images/RailwayT13.png new file mode 100644 index 00000000..cffb5ab2 Binary files /dev/null and b/_images/RailwayT13.png differ diff --git a/_images/RailwayT14.png b/_images/RailwayT14.png new file mode 100644 index 00000000..d8ec969f Binary files /dev/null and b/_images/RailwayT14.png differ diff --git a/_images/RailwayT15.png b/_images/RailwayT15.png new file mode 100644 index 00000000..2cc86e6d Binary files /dev/null and b/_images/RailwayT15.png differ diff --git a/_images/Render.png b/_images/Render.png new file mode 100644 index 00000000..f8068835 Binary files /dev/null and b/_images/Render.png differ diff --git a/_images/Render01.png b/_images/Render01.png new file mode 100644 index 00000000..f682df70 Binary files /dev/null and b/_images/Render01.png differ diff --git a/_images/Render02.png b/_images/Render02.png new file mode 100644 index 00000000..803846c1 Binary files /dev/null and b/_images/Render02.png differ diff --git a/_images/Render03.png b/_images/Render03.png new file mode 100644 index 00000000..f6e50d4b Binary files /dev/null and b/_images/Render03.png differ diff --git a/_images/Render04.png b/_images/Render04.png new file mode 100644 index 00000000..9e537ace Binary files /dev/null and b/_images/Render04.png differ diff --git a/_images/Render05.png b/_images/Render05.png new file mode 100644 index 00000000..9dd3e0f2 Binary files /dev/null and b/_images/Render05.png differ diff --git a/_images/Render06.png b/_images/Render06.png new file mode 100644 index 00000000..5ad42226 Binary files /dev/null and b/_images/Render06.png differ diff --git a/_images/Render07.png b/_images/Render07.png new file mode 100644 index 00000000..8aede996 Binary files /dev/null and b/_images/Render07.png differ diff --git a/_images/Render08.png b/_images/Render08.png new file mode 100644 index 00000000..22159053 Binary files /dev/null and b/_images/Render08.png differ diff --git a/_images/Render09.png b/_images/Render09.png new file mode 100644 index 00000000..42e40c32 Binary files /dev/null and b/_images/Render09.png differ diff --git a/_images/Render10.png b/_images/Render10.png new file mode 100644 index 00000000..3c9453ce Binary files /dev/null and b/_images/Render10.png differ diff --git a/_images/Render11.png b/_images/Render11.png new file mode 100644 index 00000000..f1d9dded Binary files /dev/null and b/_images/Render11.png differ diff --git a/_images/Render12.png b/_images/Render12.png new file mode 100644 index 00000000..418f8e16 Binary files /dev/null and b/_images/Render12.png differ diff --git a/_images/Render13.png b/_images/Render13.png new file mode 100644 index 00000000..2b266764 Binary files /dev/null and b/_images/Render13.png differ diff --git a/_images/Render14.png b/_images/Render14.png new file mode 100644 index 00000000..568d649e Binary files /dev/null and b/_images/Render14.png differ diff --git a/_images/Render15.png b/_images/Render15.png new file mode 100644 index 00000000..abf5a79b Binary files /dev/null and b/_images/Render15.png differ diff --git a/_images/Render16.png b/_images/Render16.png new file mode 100644 index 00000000..d28682e7 Binary files /dev/null and b/_images/Render16.png differ diff --git a/_images/Render17.png b/_images/Render17.png new file mode 100644 index 00000000..7e4f8ba1 Binary files /dev/null and b/_images/Render17.png differ diff --git a/_images/Render18.png b/_images/Render18.png new file mode 100644 index 00000000..504dcb99 Binary files /dev/null and b/_images/Render18.png differ diff --git a/_images/Render19.png b/_images/Render19.png new file mode 100644 index 00000000..742db840 Binary files /dev/null and b/_images/Render19.png differ diff --git a/_images/Render20.png b/_images/Render20.png new file mode 100644 index 00000000..c09f092c Binary files /dev/null and b/_images/Render20.png differ diff --git a/_images/Render21.png b/_images/Render21.png new file mode 100644 index 00000000..9ed80d03 Binary files /dev/null and b/_images/Render21.png differ diff --git a/_images/Render23.png b/_images/Render23.png new file mode 100644 index 00000000..f997d76a Binary files /dev/null and b/_images/Render23.png differ diff --git a/_images/Render24.png b/_images/Render24.png new file mode 100644 index 00000000..6755791a Binary files /dev/null and b/_images/Render24.png differ diff --git a/_images/Render25.png b/_images/Render25.png new file mode 100644 index 00000000..0c751ab6 Binary files /dev/null and b/_images/Render25.png differ diff --git a/_images/Render26.png b/_images/Render26.png new file mode 100644 index 00000000..697ead90 Binary files /dev/null and b/_images/Render26.png differ diff --git a/_images/Render27.png b/_images/Render27.png new file mode 100644 index 00000000..993704ca Binary files /dev/null and b/_images/Render27.png differ diff --git a/_images/Render28.png b/_images/Render28.png new file mode 100644 index 00000000..a30ef087 Binary files /dev/null and b/_images/Render28.png differ diff --git a/_images/RenderD01.png b/_images/RenderD01.png new file mode 100644 index 00000000..8976c45e Binary files /dev/null and b/_images/RenderD01.png differ diff --git a/_images/RenderD02.png b/_images/RenderD02.png new file mode 100644 index 00000000..1231d1ec Binary files /dev/null and b/_images/RenderD02.png differ diff --git a/_images/RenderD03.png b/_images/RenderD03.png new file mode 100644 index 00000000..5e8fd19f Binary files /dev/null and b/_images/RenderD03.png differ diff --git a/_images/RenderD04.png b/_images/RenderD04.png new file mode 100644 index 00000000..06d3f4a8 Binary files /dev/null and b/_images/RenderD04.png differ diff --git a/_images/RenderD05.png b/_images/RenderD05.png new file mode 100644 index 00000000..4116a179 Binary files /dev/null and b/_images/RenderD05.png differ diff --git a/_images/RenderD06.png b/_images/RenderD06.png new file mode 100644 index 00000000..5481f470 Binary files /dev/null and b/_images/RenderD06.png differ diff --git a/_images/RenderD07.png b/_images/RenderD07.png new file mode 100644 index 00000000..3928e176 Binary files /dev/null and b/_images/RenderD07.png differ diff --git a/_images/RenderD08.png b/_images/RenderD08.png new file mode 100644 index 00000000..6c763716 Binary files /dev/null and b/_images/RenderD08.png differ diff --git a/_images/RenderD10.png b/_images/RenderD10.png new file mode 100644 index 00000000..eca7a482 Binary files /dev/null and b/_images/RenderD10.png differ diff --git a/_images/RenderD11.png b/_images/RenderD11.png new file mode 100644 index 00000000..60c46185 Binary files /dev/null and b/_images/RenderD11.png differ diff --git a/_images/RenderD12.png b/_images/RenderD12.png new file mode 100644 index 00000000..1f06dc17 Binary files /dev/null and b/_images/RenderD12.png differ diff --git a/_images/RenderT01.png b/_images/RenderT01.png new file mode 100644 index 00000000..a0521766 Binary files /dev/null and b/_images/RenderT01.png differ diff --git a/_images/Reports00.png b/_images/Reports00.png new file mode 100644 index 00000000..577affd6 Binary files /dev/null and b/_images/Reports00.png differ diff --git a/_images/Reports01.png b/_images/Reports01.png new file mode 100644 index 00000000..96cb8822 Binary files /dev/null and b/_images/Reports01.png differ diff --git a/_images/Reports02.png b/_images/Reports02.png new file mode 100644 index 00000000..69b5d23e Binary files /dev/null and b/_images/Reports02.png differ diff --git a/_images/Reports03.png b/_images/Reports03.png new file mode 100644 index 00000000..968d39c9 Binary files /dev/null and b/_images/Reports03.png differ diff --git a/_images/Reports04.png b/_images/Reports04.png new file mode 100644 index 00000000..6f63f0f3 Binary files /dev/null and b/_images/Reports04.png differ diff --git a/_images/Reports05.png b/_images/Reports05.png new file mode 100644 index 00000000..cfbe27b3 Binary files /dev/null and b/_images/Reports05.png differ diff --git a/_images/Reports06.png b/_images/Reports06.png new file mode 100644 index 00000000..a90bcaba Binary files /dev/null and b/_images/Reports06.png differ diff --git a/_images/Reports07.png b/_images/Reports07.png new file mode 100644 index 00000000..8563b8fb Binary files /dev/null and b/_images/Reports07.png differ diff --git a/_images/Reports08.png b/_images/Reports08.png new file mode 100644 index 00000000..284879d3 Binary files /dev/null and b/_images/Reports08.png differ diff --git a/_images/Reports09.png b/_images/Reports09.png new file mode 100644 index 00000000..d96ace43 Binary files /dev/null and b/_images/Reports09.png differ diff --git a/_images/Reports10.png b/_images/Reports10.png new file mode 100644 index 00000000..25cf2edd Binary files /dev/null and b/_images/Reports10.png differ diff --git a/_images/Reports11.png b/_images/Reports11.png new file mode 100644 index 00000000..341933b0 Binary files /dev/null and b/_images/Reports11.png differ diff --git a/_images/Reports12.png b/_images/Reports12.png new file mode 100644 index 00000000..37a8c64b Binary files /dev/null and b/_images/Reports12.png differ diff --git a/_images/Reports13.png b/_images/Reports13.png new file mode 100644 index 00000000..37f54313 Binary files /dev/null and b/_images/Reports13.png differ diff --git a/_images/Reports14.png b/_images/Reports14.png new file mode 100644 index 00000000..4dd46963 Binary files /dev/null and b/_images/Reports14.png differ diff --git a/_images/Reports15.png b/_images/Reports15.png new file mode 100644 index 00000000..f6c4fb63 Binary files /dev/null and b/_images/Reports15.png differ diff --git a/_images/Reports16.png b/_images/Reports16.png new file mode 100644 index 00000000..49ae70fa Binary files /dev/null and b/_images/Reports16.png differ diff --git a/_images/Reports17.png b/_images/Reports17.png new file mode 100644 index 00000000..842b2db0 Binary files /dev/null and b/_images/Reports17.png differ diff --git a/_images/Reports18.png b/_images/Reports18.png new file mode 100644 index 00000000..8934f8fb Binary files /dev/null and b/_images/Reports18.png differ diff --git a/_images/Reports19.png b/_images/Reports19.png new file mode 100644 index 00000000..898010e3 Binary files /dev/null and b/_images/Reports19.png differ diff --git a/_images/Reports20.png b/_images/Reports20.png new file mode 100644 index 00000000..a4bac0f9 Binary files /dev/null and b/_images/Reports20.png differ diff --git a/_images/Reports21.png b/_images/Reports21.png new file mode 100644 index 00000000..5708266b Binary files /dev/null and b/_images/Reports21.png differ diff --git a/_images/Reports22.png b/_images/Reports22.png new file mode 100644 index 00000000..00c5a1c6 Binary files /dev/null and b/_images/Reports22.png differ diff --git a/_images/Security01.png b/_images/Security01.png new file mode 100644 index 00000000..d9551b96 Binary files /dev/null and b/_images/Security01.png differ diff --git a/_images/Security02.png b/_images/Security02.png new file mode 100644 index 00000000..ab7501fe Binary files /dev/null and b/_images/Security02.png differ diff --git a/_images/Security03.png b/_images/Security03.png new file mode 100644 index 00000000..5b6c5906 Binary files /dev/null and b/_images/Security03.png differ diff --git a/_images/Security04.png b/_images/Security04.png new file mode 100644 index 00000000..cf7c339e Binary files /dev/null and b/_images/Security04.png differ diff --git a/_images/Security05.png b/_images/Security05.png new file mode 100644 index 00000000..ab35d2d7 Binary files /dev/null and b/_images/Security05.png differ diff --git a/_images/Security06.png b/_images/Security06.png new file mode 100644 index 00000000..36518db0 Binary files /dev/null and b/_images/Security06.png differ diff --git a/_images/SetupNS00.png b/_images/SetupNS00.png new file mode 100644 index 00000000..8ffdfe3d Binary files /dev/null and b/_images/SetupNS00.png differ diff --git a/_images/SetupNS01.png b/_images/SetupNS01.png new file mode 100644 index 00000000..7a7310c7 Binary files /dev/null and b/_images/SetupNS01.png differ diff --git a/_images/SetupNS02.png b/_images/SetupNS02.png new file mode 100644 index 00000000..c03d4093 Binary files /dev/null and b/_images/SetupNS02.png differ diff --git a/_images/SetupNS03.png b/_images/SetupNS03.png new file mode 100644 index 00000000..23fcea98 Binary files /dev/null and b/_images/SetupNS03.png differ diff --git a/_images/SetupNS04.png b/_images/SetupNS04.png new file mode 100644 index 00000000..6c297955 Binary files /dev/null and b/_images/SetupNS04.png differ diff --git a/_images/SetupNS05.png b/_images/SetupNS05.png new file mode 100644 index 00000000..9c23cc06 Binary files /dev/null and b/_images/SetupNS05.png differ diff --git a/_images/SetupNS06.png b/_images/SetupNS06.png new file mode 100644 index 00000000..b629adc9 Binary files /dev/null and b/_images/SetupNS06.png differ diff --git a/_images/SetupNS07.png b/_images/SetupNS07.png new file mode 100644 index 00000000..ba5ae942 Binary files /dev/null and b/_images/SetupNS07.png differ diff --git a/_images/SetupNS08.png b/_images/SetupNS08.png new file mode 100644 index 00000000..8b24f6e0 Binary files /dev/null and b/_images/SetupNS08.png differ diff --git a/_images/SetupNS09.png b/_images/SetupNS09.png new file mode 100644 index 00000000..c1f86620 Binary files /dev/null and b/_images/SetupNS09.png differ diff --git a/_images/SetupNS10.png b/_images/SetupNS10.png new file mode 100644 index 00000000..91d48588 Binary files /dev/null and b/_images/SetupNS10.png differ diff --git a/_images/SetupNS11.png b/_images/SetupNS11.png new file mode 100644 index 00000000..cbbd3823 Binary files /dev/null and b/_images/SetupNS11.png differ diff --git a/_images/SetupNS12.png b/_images/SetupNS12.png new file mode 100644 index 00000000..9a451b16 Binary files /dev/null and b/_images/SetupNS12.png differ diff --git a/_images/SetupNS13.png b/_images/SetupNS13.png new file mode 100644 index 00000000..0f63a23c Binary files /dev/null and b/_images/SetupNS13.png differ diff --git a/_images/SetupNS13a.png b/_images/SetupNS13a.png new file mode 100644 index 00000000..b3b37e21 Binary files /dev/null and b/_images/SetupNS13a.png differ diff --git a/_images/SetupNS14.png b/_images/SetupNS14.png new file mode 100644 index 00000000..39aec0f8 Binary files /dev/null and b/_images/SetupNS14.png differ diff --git a/_images/SetupNS15.png b/_images/SetupNS15.png new file mode 100644 index 00000000..4cbd9d63 Binary files /dev/null and b/_images/SetupNS15.png differ diff --git a/_images/SetupNS16.png b/_images/SetupNS16.png new file mode 100644 index 00000000..a702445b Binary files /dev/null and b/_images/SetupNS16.png differ diff --git a/_images/SetupNS17.png b/_images/SetupNS17.png new file mode 100644 index 00000000..7f568abd Binary files /dev/null and b/_images/SetupNS17.png differ diff --git a/_images/SetupNS18.png b/_images/SetupNS18.png new file mode 100644 index 00000000..4dc0e234 Binary files /dev/null and b/_images/SetupNS18.png differ diff --git a/_images/SetupNS19.png b/_images/SetupNS19.png new file mode 100644 index 00000000..bf17ca09 Binary files /dev/null and b/_images/SetupNS19.png differ diff --git a/_images/SetupNS20.png b/_images/SetupNS20.png new file mode 100644 index 00000000..0aa9ae6a Binary files /dev/null and b/_images/SetupNS20.png differ diff --git a/_images/SetupNS21.png b/_images/SetupNS21.png new file mode 100644 index 00000000..eef801be Binary files /dev/null and b/_images/SetupNS21.png differ diff --git a/_images/SetupNS23.png b/_images/SetupNS23.png new file mode 100644 index 00000000..63f49cec Binary files /dev/null and b/_images/SetupNS23.png differ diff --git a/_images/SetupNS24.png b/_images/SetupNS24.png new file mode 100644 index 00000000..e29904ed Binary files /dev/null and b/_images/SetupNS24.png differ diff --git a/_images/SetupNS25.png b/_images/SetupNS25.png new file mode 100644 index 00000000..fccd5612 Binary files /dev/null and b/_images/SetupNS25.png differ diff --git a/_images/SetupNS26.png b/_images/SetupNS26.png new file mode 100644 index 00000000..6233adf0 Binary files /dev/null and b/_images/SetupNS26.png differ diff --git a/_images/SetupNS28.png b/_images/SetupNS28.png new file mode 100644 index 00000000..9b3c79b3 Binary files /dev/null and b/_images/SetupNS28.png differ diff --git a/_images/SetupNS29.png b/_images/SetupNS29.png new file mode 100644 index 00000000..d9207b95 Binary files /dev/null and b/_images/SetupNS29.png differ diff --git a/_images/SetupNS30.png b/_images/SetupNS30.png new file mode 100644 index 00000000..2ba181a2 Binary files /dev/null and b/_images/SetupNS30.png differ diff --git a/_images/SetupNS32.png b/_images/SetupNS32.png new file mode 100644 index 00000000..76ebfc42 Binary files /dev/null and b/_images/SetupNS32.png differ diff --git a/_images/SetupNS33.png b/_images/SetupNS33.png new file mode 100644 index 00000000..8de52638 Binary files /dev/null and b/_images/SetupNS33.png differ diff --git a/_images/SetupNS34.png b/_images/SetupNS34.png new file mode 100644 index 00000000..dadcc39d Binary files /dev/null and b/_images/SetupNS34.png differ diff --git a/_images/SetupNS35.png b/_images/SetupNS35.png new file mode 100644 index 00000000..3cb0b63e Binary files /dev/null and b/_images/SetupNS35.png differ diff --git a/_images/SetupNS36.png b/_images/SetupNS36.png new file mode 100644 index 00000000..f076619d Binary files /dev/null and b/_images/SetupNS36.png differ diff --git a/_images/SetupNS39.png b/_images/SetupNS39.png new file mode 100644 index 00000000..06e03144 Binary files /dev/null and b/_images/SetupNS39.png differ diff --git a/_images/SetupNS40.png b/_images/SetupNS40.png new file mode 100644 index 00000000..2071585f Binary files /dev/null and b/_images/SetupNS40.png differ diff --git a/_images/SetupNS41.png b/_images/SetupNS41.png new file mode 100644 index 00000000..106b954d Binary files /dev/null and b/_images/SetupNS41.png differ diff --git a/_images/SetupNS42.png b/_images/SetupNS42.png new file mode 100644 index 00000000..55f374ae Binary files /dev/null and b/_images/SetupNS42.png differ diff --git a/_images/SetupNS43.png b/_images/SetupNS43.png new file mode 100644 index 00000000..61ba4a4d Binary files /dev/null and b/_images/SetupNS43.png differ diff --git a/_images/SetupNS44.png b/_images/SetupNS44.png new file mode 100644 index 00000000..c10da8fa Binary files /dev/null and b/_images/SetupNS44.png differ diff --git a/_images/TShoot00.png b/_images/TShoot00.png new file mode 100644 index 00000000..a57f6714 Binary files /dev/null and b/_images/TShoot00.png differ diff --git a/_images/TShoot01.png b/_images/TShoot01.png new file mode 100644 index 00000000..5ca461f5 Binary files /dev/null and b/_images/TShoot01.png differ diff --git a/_images/TShoot02.png b/_images/TShoot02.png new file mode 100644 index 00000000..edbd862e Binary files /dev/null and b/_images/TShoot02.png differ diff --git a/_images/TShoot03.png b/_images/TShoot03.png new file mode 100644 index 00000000..d4540497 Binary files /dev/null and b/_images/TShoot03.png differ diff --git a/_images/TShoot04.png b/_images/TShoot04.png new file mode 100644 index 00000000..4da581e1 Binary files /dev/null and b/_images/TShoot04.png differ diff --git a/_images/TShoot05.png b/_images/TShoot05.png new file mode 100644 index 00000000..12947df7 Binary files /dev/null and b/_images/TShoot05.png differ diff --git a/_images/TShoot06.png b/_images/TShoot06.png new file mode 100644 index 00000000..fe2ca137 Binary files /dev/null and b/_images/TShoot06.png differ diff --git a/_images/TShoot07.png b/_images/TShoot07.png new file mode 100644 index 00000000..d21af39a Binary files /dev/null and b/_images/TShoot07.png differ diff --git a/_images/TShoot08.png b/_images/TShoot08.png new file mode 100644 index 00000000..a25d3fd9 Binary files /dev/null and b/_images/TShoot08.png differ diff --git a/_images/TShoot09.png b/_images/TShoot09.png new file mode 100644 index 00000000..007e0ca1 Binary files /dev/null and b/_images/TShoot09.png differ diff --git a/_images/TShoot10.png b/_images/TShoot10.png new file mode 100644 index 00000000..a892d445 Binary files /dev/null and b/_images/TShoot10.png differ diff --git a/_images/TShoot11.png b/_images/TShoot11.png new file mode 100644 index 00000000..d8ba899a Binary files /dev/null and b/_images/TShoot11.png differ diff --git a/_images/TShoot12.png b/_images/TShoot12.png new file mode 100644 index 00000000..31684060 Binary files /dev/null and b/_images/TShoot12.png differ diff --git a/_images/TShoot13.png b/_images/TShoot13.png new file mode 100644 index 00000000..16994650 Binary files /dev/null and b/_images/TShoot13.png differ diff --git a/_images/TShoot14.png b/_images/TShoot14.png new file mode 100644 index 00000000..e782ea5e Binary files /dev/null and b/_images/TShoot14.png differ diff --git a/_images/TShoot15.png b/_images/TShoot15.png new file mode 100644 index 00000000..0e1d639a Binary files /dev/null and b/_images/TShoot15.png differ diff --git a/_images/TShoot16.png b/_images/TShoot16.png new file mode 100644 index 00000000..db73a511 Binary files /dev/null and b/_images/TShoot16.png differ diff --git a/_images/TShoot17.png b/_images/TShoot17.png new file mode 100644 index 00000000..3bfdbec7 Binary files /dev/null and b/_images/TShoot17.png differ diff --git a/_images/TShoot18.png b/_images/TShoot18.png new file mode 100644 index 00000000..ad1a8cc0 Binary files /dev/null and b/_images/TShoot18.png differ diff --git a/_images/TShoot19.png b/_images/TShoot19.png new file mode 100644 index 00000000..3f2ce21b Binary files /dev/null and b/_images/TShoot19.png differ diff --git a/_images/TShoot20.png b/_images/TShoot20.png new file mode 100644 index 00000000..6829b34a Binary files /dev/null and b/_images/TShoot20.png differ diff --git a/_images/TShoot21.png b/_images/TShoot21.png new file mode 100644 index 00000000..abd0808a Binary files /dev/null and b/_images/TShoot21.png differ diff --git a/_images/TShoot22.png b/_images/TShoot22.png new file mode 100644 index 00000000..ff5ccc37 Binary files /dev/null and b/_images/TShoot22.png differ diff --git a/_images/TShoot23.png b/_images/TShoot23.png new file mode 100644 index 00000000..eb0bdc53 Binary files /dev/null and b/_images/TShoot23.png differ diff --git a/_images/TShoot24.png b/_images/TShoot24.png new file mode 100644 index 00000000..a5e6206d Binary files /dev/null and b/_images/TShoot24.png differ diff --git a/_images/TShoot25.png b/_images/TShoot25.png new file mode 100644 index 00000000..22a8c744 Binary files /dev/null and b/_images/TShoot25.png differ diff --git a/_images/TShoot30.png b/_images/TShoot30.png new file mode 100644 index 00000000..ed11592e Binary files /dev/null and b/_images/TShoot30.png differ diff --git a/_images/TShoot31.png b/_images/TShoot31.png new file mode 100644 index 00000000..d67ee8c9 Binary files /dev/null and b/_images/TShoot31.png differ diff --git a/_images/TShoot32.png b/_images/TShoot32.png new file mode 100644 index 00000000..0625b6b4 Binary files /dev/null and b/_images/TShoot32.png differ diff --git a/_images/TShoot33.png b/_images/TShoot33.png new file mode 100644 index 00000000..1c2ba56f Binary files /dev/null and b/_images/TShoot33.png differ diff --git a/_images/TShoot34.png b/_images/TShoot34.png new file mode 100644 index 00000000..0b1ae819 Binary files /dev/null and b/_images/TShoot34.png differ diff --git a/_images/TShoot35.png b/_images/TShoot35.png new file mode 100644 index 00000000..270f1678 Binary files /dev/null and b/_images/TShoot35.png differ diff --git a/_images/TShoot36.png b/_images/TShoot36.png new file mode 100644 index 00000000..e9b24494 Binary files /dev/null and b/_images/TShoot36.png differ diff --git a/_images/TShoot37.png b/_images/TShoot37.png new file mode 100644 index 00000000..dabb12f9 Binary files /dev/null and b/_images/TShoot37.png differ diff --git a/_images/TShoot38.png b/_images/TShoot38.png new file mode 100644 index 00000000..1e32dc97 Binary files /dev/null and b/_images/TShoot38.png differ diff --git a/_images/TShoot39.png b/_images/TShoot39.png new file mode 100644 index 00000000..98cfdc32 Binary files /dev/null and b/_images/TShoot39.png differ diff --git a/_images/TShoot41.png b/_images/TShoot41.png new file mode 100644 index 00000000..e5b662d9 Binary files /dev/null and b/_images/TShoot41.png differ diff --git a/_images/TShoot44.png b/_images/TShoot44.png new file mode 100644 index 00000000..0dacc8b3 Binary files /dev/null and b/_images/TShoot44.png differ diff --git a/_images/TShoot45.png b/_images/TShoot45.png new file mode 100644 index 00000000..26c9ade2 Binary files /dev/null and b/_images/TShoot45.png differ diff --git a/_images/TShoot46.png b/_images/TShoot46.png new file mode 100644 index 00000000..ee17da81 Binary files /dev/null and b/_images/TShoot46.png differ diff --git a/_images/TShoot47.png b/_images/TShoot47.png new file mode 100644 index 00000000..4c6d1bac Binary files /dev/null and b/_images/TShoot47.png differ diff --git a/_images/TShoot48.png b/_images/TShoot48.png new file mode 100644 index 00000000..3150d94b Binary files /dev/null and b/_images/TShoot48.png differ diff --git a/_images/TShoot49.png b/_images/TShoot49.png new file mode 100644 index 00000000..34e69d23 Binary files /dev/null and b/_images/TShoot49.png differ diff --git a/_images/TShoot50.png b/_images/TShoot50.png new file mode 100644 index 00000000..8d2b047f Binary files /dev/null and b/_images/TShoot50.png differ diff --git a/_images/TShoot51.png b/_images/TShoot51.png new file mode 100644 index 00000000..0f53dfc9 Binary files /dev/null and b/_images/TShoot51.png differ diff --git a/_images/TShoot52.png b/_images/TShoot52.png new file mode 100644 index 00000000..b1665f22 Binary files /dev/null and b/_images/TShoot52.png differ diff --git a/_images/TShoot53.png b/_images/TShoot53.png new file mode 100644 index 00000000..4fa17b66 Binary files /dev/null and b/_images/TShoot53.png differ diff --git a/_images/TShoot54.png b/_images/TShoot54.png new file mode 100644 index 00000000..fa0e2a45 Binary files /dev/null and b/_images/TShoot54.png differ diff --git a/_images/TShoot55.png b/_images/TShoot55.png new file mode 100644 index 00000000..89f876f7 Binary files /dev/null and b/_images/TShoot55.png differ diff --git a/_images/TShoot56.png b/_images/TShoot56.png new file mode 100644 index 00000000..ac17dbd0 Binary files /dev/null and b/_images/TShoot56.png differ diff --git a/_images/TShoot57.png b/_images/TShoot57.png new file mode 100644 index 00000000..d45d1555 Binary files /dev/null and b/_images/TShoot57.png differ diff --git a/_images/TShoot58.png b/_images/TShoot58.png new file mode 100644 index 00000000..48f71354 Binary files /dev/null and b/_images/TShoot58.png differ diff --git a/_images/TShoot59.png b/_images/TShoot59.png new file mode 100644 index 00000000..f1feadb8 Binary files /dev/null and b/_images/TShoot59.png differ diff --git a/_images/TinyURL.png b/_images/TinyURL.png new file mode 100644 index 00000000..b0737b55 Binary files /dev/null and b/_images/TinyURL.png differ diff --git a/_images/UpdateHK01.png b/_images/UpdateHK01.png new file mode 100644 index 00000000..3ef37709 Binary files /dev/null and b/_images/UpdateHK01.png differ diff --git a/_images/UpdateHK02.png b/_images/UpdateHK02.png new file mode 100644 index 00000000..f590d2bf Binary files /dev/null and b/_images/UpdateHK02.png differ diff --git a/_images/UpdateHK03.png b/_images/UpdateHK03.png new file mode 100644 index 00000000..9a0cda7d Binary files /dev/null and b/_images/UpdateHK03.png differ diff --git a/_images/UpdateNS00.png b/_images/UpdateNS00.png new file mode 100644 index 00000000..26c023b2 Binary files /dev/null and b/_images/UpdateNS00.png differ diff --git a/_images/UpdateNS01.png b/_images/UpdateNS01.png new file mode 100644 index 00000000..2eeac6b5 Binary files /dev/null and b/_images/UpdateNS01.png differ diff --git a/_images/UpdateNS01a.png b/_images/UpdateNS01a.png new file mode 100644 index 00000000..587c031b Binary files /dev/null and b/_images/UpdateNS01a.png differ diff --git a/_images/UpdateNS01b.png b/_images/UpdateNS01b.png new file mode 100644 index 00000000..d0f05136 Binary files /dev/null and b/_images/UpdateNS01b.png differ diff --git a/_images/UpdateNS01c.png b/_images/UpdateNS01c.png new file mode 100644 index 00000000..81422c2b Binary files /dev/null and b/_images/UpdateNS01c.png differ diff --git a/_images/UpdateNS15.png b/_images/UpdateNS15.png new file mode 100644 index 00000000..7554ced3 Binary files /dev/null and b/_images/UpdateNS15.png differ diff --git a/_images/UpdateNS16.png b/_images/UpdateNS16.png new file mode 100644 index 00000000..94d657d7 Binary files /dev/null and b/_images/UpdateNS16.png differ diff --git a/_images/UpdateNS17.png b/_images/UpdateNS17.png new file mode 100644 index 00000000..487e0f80 Binary files /dev/null and b/_images/UpdateNS17.png differ diff --git a/_images/UpdateNS18.png b/_images/UpdateNS18.png new file mode 100644 index 00000000..ae2d8158 Binary files /dev/null and b/_images/UpdateNS18.png differ diff --git a/_images/UpdateNS19.png b/_images/UpdateNS19.png new file mode 100644 index 00000000..2762d6a3 Binary files /dev/null and b/_images/UpdateNS19.png differ diff --git a/_images/UpdateNS20.png b/_images/UpdateNS20.png new file mode 100644 index 00000000..a7d47fcd Binary files /dev/null and b/_images/UpdateNS20.png differ diff --git a/_images/UpdateNS21.png b/_images/UpdateNS21.png new file mode 100644 index 00000000..652732bc Binary files /dev/null and b/_images/UpdateNS21.png differ diff --git a/_images/UpdateNS22.png b/_images/UpdateNS22.png new file mode 100644 index 00000000..91b1305c Binary files /dev/null and b/_images/UpdateNS22.png differ diff --git a/_images/UpdateNS23.png b/_images/UpdateNS23.png new file mode 100644 index 00000000..58fc285a Binary files /dev/null and b/_images/UpdateNS23.png differ diff --git a/_images/UpdateNS24.png b/_images/UpdateNS24.png new file mode 100644 index 00000000..aaa6b02b Binary files /dev/null and b/_images/UpdateNS24.png differ diff --git a/_images/UpdateNS25.png b/_images/UpdateNS25.png new file mode 100644 index 00000000..b3b348f1 Binary files /dev/null and b/_images/UpdateNS25.png differ diff --git a/_images/UpdateNS26.png b/_images/UpdateNS26.png new file mode 100644 index 00000000..444a7a40 Binary files /dev/null and b/_images/UpdateNS26.png differ diff --git a/_images/UpdateNS27.png b/_images/UpdateNS27.png new file mode 100644 index 00000000..bc87a8bc Binary files /dev/null and b/_images/UpdateNS27.png differ diff --git a/_images/UpdateNS28.png b/_images/UpdateNS28.png new file mode 100644 index 00000000..f09f8d66 Binary files /dev/null and b/_images/UpdateNS28.png differ diff --git a/_images/UpdateNS30.png b/_images/UpdateNS30.png new file mode 100644 index 00000000..479ee68e Binary files /dev/null and b/_images/UpdateNS30.png differ diff --git a/_images/Upload02.png b/_images/Upload02.png new file mode 100644 index 00000000..e738a094 Binary files /dev/null and b/_images/Upload02.png differ diff --git a/_images/Upload03.png b/_images/Upload03.png new file mode 100644 index 00000000..bc14543a Binary files /dev/null and b/_images/Upload03.png differ diff --git a/_images/Upload04.png b/_images/Upload04.png new file mode 100644 index 00000000..791f96a7 Binary files /dev/null and b/_images/Upload04.png differ diff --git a/_images/Upload05.png b/_images/Upload05.png new file mode 100644 index 00000000..d043c548 Binary files /dev/null and b/_images/Upload05.png differ diff --git a/_images/Upload06.png b/_images/Upload06.png new file mode 100644 index 00000000..7b962389 Binary files /dev/null and b/_images/Upload06.png differ diff --git a/_images/UploadCFG00.png b/_images/UploadCFG00.png new file mode 100644 index 00000000..29a91c7c Binary files /dev/null and b/_images/UploadCFG00.png differ diff --git a/_images/UploadCFG02.png b/_images/UploadCFG02.png new file mode 100644 index 00000000..55bbf292 Binary files /dev/null and b/_images/UploadCFG02.png differ diff --git a/_images/UploadCFG03.png b/_images/UploadCFG03.png new file mode 100644 index 00000000..025e806c Binary files /dev/null and b/_images/UploadCFG03.png differ diff --git a/_images/UploadCFG04.png b/_images/UploadCFG04.png new file mode 100644 index 00000000..773e6be2 Binary files /dev/null and b/_images/UploadCFG04.png differ diff --git a/_images/UploadCFG05.png b/_images/UploadCFG05.png new file mode 100644 index 00000000..100ff167 Binary files /dev/null and b/_images/UploadCFG05.png differ diff --git a/_images/UploadCFG06.png b/_images/UploadCFG06.png new file mode 100644 index 00000000..80318ead Binary files /dev/null and b/_images/UploadCFG06.png differ diff --git a/_images/UploadCFG08.png b/_images/UploadCFG08.png new file mode 100644 index 00000000..836b89a8 Binary files /dev/null and b/_images/UploadCFG08.png differ diff --git a/_images/UploadCFG09.png b/_images/UploadCFG09.png new file mode 100644 index 00000000..b7f2239b Binary files /dev/null and b/_images/UploadCFG09.png differ diff --git a/_images/UploadCFG10.png b/_images/UploadCFG10.png new file mode 100644 index 00000000..a16ed84e Binary files /dev/null and b/_images/UploadCFG10.png differ diff --git a/_images/UploadCFG11.png b/_images/UploadCFG11.png new file mode 100644 index 00000000..bdabbe45 Binary files /dev/null and b/_images/UploadCFG11.png differ diff --git a/_images/UseNS00.png b/_images/UseNS00.png new file mode 100644 index 00000000..aa702305 Binary files /dev/null and b/_images/UseNS00.png differ diff --git a/_images/UseNS01.png b/_images/UseNS01.png new file mode 100644 index 00000000..7a18181b Binary files /dev/null and b/_images/UseNS01.png differ diff --git a/_images/UseNS03.png b/_images/UseNS03.png new file mode 100644 index 00000000..b9f2a57c Binary files /dev/null and b/_images/UseNS03.png differ diff --git a/_images/UseNS04.png b/_images/UseNS04.png new file mode 100644 index 00000000..ff3c0d54 Binary files /dev/null and b/_images/UseNS04.png differ diff --git a/_images/UseNS05.png b/_images/UseNS05.png new file mode 100644 index 00000000..66937676 Binary files /dev/null and b/_images/UseNS05.png differ diff --git a/_images/UseNS06.png b/_images/UseNS06.png new file mode 100644 index 00000000..4657de8f Binary files /dev/null and b/_images/UseNS06.png differ diff --git a/_images/UseNS07.png b/_images/UseNS07.png new file mode 100644 index 00000000..1a082701 Binary files /dev/null and b/_images/UseNS07.png differ diff --git a/_images/UseNS08.png b/_images/UseNS08.png new file mode 100644 index 00000000..086c6c8f Binary files /dev/null and b/_images/UseNS08.png differ diff --git a/_images/UseNS09.png b/_images/UseNS09.png new file mode 100644 index 00000000..261f815d Binary files /dev/null and b/_images/UseNS09.png differ diff --git a/_images/UseNS10.png b/_images/UseNS10.png new file mode 100644 index 00000000..2f077f92 Binary files /dev/null and b/_images/UseNS10.png differ diff --git a/_images/UseNS11.png b/_images/UseNS11.png new file mode 100644 index 00000000..ceb12216 Binary files /dev/null and b/_images/UseNS11.png differ diff --git a/_images/UseNS12.png b/_images/UseNS12.png new file mode 100644 index 00000000..3e3e4911 Binary files /dev/null and b/_images/UseNS12.png differ diff --git a/_images/UseNS13.png b/_images/UseNS13.png new file mode 100644 index 00000000..f983d319 Binary files /dev/null and b/_images/UseNS13.png differ diff --git a/_images/UseNS14.png b/_images/UseNS14.png new file mode 100644 index 00000000..d1f7e6fc Binary files /dev/null and b/_images/UseNS14.png differ diff --git a/_images/UseNS15.png b/_images/UseNS15.png new file mode 100644 index 00000000..6e0c4822 Binary files /dev/null and b/_images/UseNS15.png differ diff --git a/_images/UseNS16.png b/_images/UseNS16.png new file mode 100644 index 00000000..d501ddd6 Binary files /dev/null and b/_images/UseNS16.png differ diff --git a/_images/UseNS17.png b/_images/UseNS17.png new file mode 100644 index 00000000..07f9e5f9 Binary files /dev/null and b/_images/UseNS17.png differ diff --git a/_images/UseNS18.png b/_images/UseNS18.png new file mode 100644 index 00000000..55b6719b Binary files /dev/null and b/_images/UseNS18.png differ diff --git a/_images/UseNS19.png b/_images/UseNS19.png new file mode 100644 index 00000000..77d93015 Binary files /dev/null and b/_images/UseNS19.png differ diff --git a/_images/UseNS20.png b/_images/UseNS20.png new file mode 100644 index 00000000..5e6ed6ea Binary files /dev/null and b/_images/UseNS20.png differ diff --git a/_images/UseNS21.png b/_images/UseNS21.png new file mode 100644 index 00000000..5355aaf4 Binary files /dev/null and b/_images/UseNS21.png differ diff --git a/_images/UseNS22.png b/_images/UseNS22.png new file mode 100644 index 00000000..b3dffae3 Binary files /dev/null and b/_images/UseNS22.png differ diff --git a/_images/UseNS23.png b/_images/UseNS23.png new file mode 100644 index 00000000..ac3395da Binary files /dev/null and b/_images/UseNS23.png differ diff --git a/_images/UseNS24.png b/_images/UseNS24.png new file mode 100644 index 00000000..2c4454e3 Binary files /dev/null and b/_images/UseNS24.png differ diff --git a/_images/UseNS25.png b/_images/UseNS25.png new file mode 100644 index 00000000..62a0816a Binary files /dev/null and b/_images/UseNS25.png differ diff --git a/_images/Watch00.png b/_images/Watch00.png new file mode 100644 index 00000000..a444ec6f Binary files /dev/null and b/_images/Watch00.png differ diff --git a/_images/Watch01.png b/_images/Watch01.png new file mode 100644 index 00000000..529e49b5 Binary files /dev/null and b/_images/Watch01.png differ diff --git a/_images/Watch02.png b/_images/Watch02.png new file mode 100644 index 00000000..d5c9905c Binary files /dev/null and b/_images/Watch02.png differ diff --git a/_images/Watch03.png b/_images/Watch03.png new file mode 100644 index 00000000..1f4244ba Binary files /dev/null and b/_images/Watch03.png differ diff --git a/_images/Watch04.png b/_images/Watch04.png new file mode 100644 index 00000000..955cf541 Binary files /dev/null and b/_images/Watch04.png differ diff --git a/_images/Yaml00.png b/_images/Yaml00.png new file mode 100644 index 00000000..7f6d1bb2 Binary files /dev/null and b/_images/Yaml00.png differ diff --git a/_images/Yaml01.png b/_images/Yaml01.png new file mode 100644 index 00000000..ddea7027 Binary files /dev/null and b/_images/Yaml01.png differ diff --git a/_images/Yaml02.png b/_images/Yaml02.png new file mode 100644 index 00000000..d7561325 Binary files /dev/null and b/_images/Yaml02.png differ diff --git a/_images/Yaml03.png b/_images/Yaml03.png new file mode 100644 index 00000000..9ac65b5e Binary files /dev/null and b/_images/Yaml03.png differ diff --git a/_images/alexa_maker.png b/_images/alexa_maker.png new file mode 100644 index 00000000..93d34e64 Binary files /dev/null and b/_images/alexa_maker.png differ diff --git a/_images/google1.png b/_images/google1.png new file mode 100644 index 00000000..5ae90115 Binary files /dev/null and b/_images/google1.png differ diff --git a/_images/google2.png b/_images/google2.png new file mode 100644 index 00000000..49355588 Binary files /dev/null and b/_images/google2.png differ diff --git a/_images/google3.png b/_images/google3.png new file mode 100644 index 00000000..e25df23e Binary files /dev/null and b/_images/google3.png differ diff --git a/_images/google4.png b/_images/google4.png new file mode 100644 index 00000000..b7a28442 Binary files /dev/null and b/_images/google4.png differ diff --git a/_images/hashed_API.png b/_images/hashed_API.png new file mode 100644 index 00000000..3ea1d2b1 Binary files /dev/null and b/_images/hashed_API.png differ diff --git a/_images/hashed_API2.png b/_images/hashed_API2.png new file mode 100644 index 00000000..6fb7b23d Binary files /dev/null and b/_images/hashed_API2.png differ diff --git a/_images/heroku-logs.png b/_images/heroku-logs.png new file mode 100644 index 00000000..f01a1763 Binary files /dev/null and b/_images/heroku-logs.png differ diff --git a/_images/nightscout_screenshot_600.png b/_images/nightscout_screenshot_600.png new file mode 100644 index 00000000..799261e1 Binary files /dev/null and b/_images/nightscout_screenshot_600.png differ diff --git a/_images/ns-core-events.png b/_images/ns-core-events.png new file mode 100644 index 00000000..6132d123 Binary files /dev/null and b/_images/ns-core-events.png differ diff --git a/_images/nscloud.png b/_images/nscloud.png new file mode 100644 index 00000000..14c0c18c Binary files /dev/null and b/_images/nscloud.png differ diff --git a/_images/nselements.png b/_images/nselements.png new file mode 100644 index 00000000..cf855329 Binary files /dev/null and b/_images/nselements.png differ diff --git a/_images/railway-logs.png b/_images/railway-logs.png new file mode 100644 index 00000000..dadf79a6 Binary files /dev/null and b/_images/railway-logs.png differ diff --git a/_images/sharing.jpg b/_images/sharing.jpg new file mode 100644 index 00000000..658ad4bb Binary files /dev/null and b/_images/sharing.jpg differ diff --git a/_images/webhooks1.png b/_images/webhooks1.png new file mode 100644 index 00000000..a86bafe2 Binary files /dev/null and b/_images/webhooks1.png differ diff --git a/_images/webhooks10.png b/_images/webhooks10.png new file mode 100644 index 00000000..95131334 Binary files /dev/null and b/_images/webhooks10.png differ diff --git a/_images/webhooks11.png b/_images/webhooks11.png new file mode 100644 index 00000000..972c3694 Binary files /dev/null and b/_images/webhooks11.png differ diff --git a/_images/webhooks12.png b/_images/webhooks12.png new file mode 100644 index 00000000..fc9bc638 Binary files /dev/null and b/_images/webhooks12.png differ diff --git a/_images/webhooks13.png b/_images/webhooks13.png new file mode 100644 index 00000000..00d2d69e Binary files /dev/null and b/_images/webhooks13.png differ diff --git a/_images/webhooks14.png b/_images/webhooks14.png new file mode 100644 index 00000000..4e240096 Binary files /dev/null and b/_images/webhooks14.png differ diff --git a/_images/webhooks15.png b/_images/webhooks15.png new file mode 100644 index 00000000..012ae093 Binary files /dev/null and b/_images/webhooks15.png differ diff --git a/_images/webhooks16.png b/_images/webhooks16.png new file mode 100644 index 00000000..0b3046bf Binary files /dev/null and b/_images/webhooks16.png differ diff --git a/_images/webhooks17.png b/_images/webhooks17.png new file mode 100644 index 00000000..e555121d Binary files /dev/null and b/_images/webhooks17.png differ diff --git a/_images/webhooks18.png b/_images/webhooks18.png new file mode 100644 index 00000000..bf60ca1e Binary files /dev/null and b/_images/webhooks18.png differ diff --git a/_images/webhooks19.png b/_images/webhooks19.png new file mode 100644 index 00000000..9b1f1197 Binary files /dev/null and b/_images/webhooks19.png differ diff --git a/_images/webhooks2.png b/_images/webhooks2.png new file mode 100644 index 00000000..db96463f Binary files /dev/null and b/_images/webhooks2.png differ diff --git a/_images/webhooks20.png b/_images/webhooks20.png new file mode 100644 index 00000000..a58cdd7f Binary files /dev/null and b/_images/webhooks20.png differ diff --git a/_images/webhooks21.png b/_images/webhooks21.png new file mode 100644 index 00000000..9c774240 Binary files /dev/null and b/_images/webhooks21.png differ diff --git a/_images/webhooks22.png b/_images/webhooks22.png new file mode 100644 index 00000000..5759eee7 Binary files /dev/null and b/_images/webhooks22.png differ diff --git a/_images/webhooks23.png b/_images/webhooks23.png new file mode 100644 index 00000000..e9395fa2 Binary files /dev/null and b/_images/webhooks23.png differ diff --git a/_images/webhooks24.png b/_images/webhooks24.png new file mode 100644 index 00000000..9c2a33bb Binary files /dev/null and b/_images/webhooks24.png differ diff --git a/_images/webhooks25.png b/_images/webhooks25.png new file mode 100644 index 00000000..276eb269 Binary files /dev/null and b/_images/webhooks25.png differ diff --git a/_images/webhooks26.png b/_images/webhooks26.png new file mode 100644 index 00000000..67aad602 Binary files /dev/null and b/_images/webhooks26.png differ diff --git a/_images/webhooks27.png b/_images/webhooks27.png new file mode 100644 index 00000000..c1b97b55 Binary files /dev/null and b/_images/webhooks27.png differ diff --git a/_images/webhooks3.png b/_images/webhooks3.png new file mode 100644 index 00000000..8268221e Binary files /dev/null and b/_images/webhooks3.png differ diff --git a/_images/webhooks4.png b/_images/webhooks4.png new file mode 100644 index 00000000..96c6cf32 Binary files /dev/null and b/_images/webhooks4.png differ diff --git a/_images/webhooks5.png b/_images/webhooks5.png new file mode 100644 index 00000000..5f67f2c5 Binary files /dev/null and b/_images/webhooks5.png differ diff --git a/_images/webhooks6.png b/_images/webhooks6.png new file mode 100644 index 00000000..5d69c6ac Binary files /dev/null and b/_images/webhooks6.png differ diff --git a/_images/webhooks7.png b/_images/webhooks7.png new file mode 100644 index 00000000..107a22e4 Binary files /dev/null and b/_images/webhooks7.png differ diff --git a/_images/webhooks8.png b/_images/webhooks8.png new file mode 100644 index 00000000..a9541010 Binary files /dev/null and b/_images/webhooks8.png differ diff --git a/_images/webhooks9.png b/_images/webhooks9.png new file mode 100644 index 00000000..6d45ccc8 Binary files /dev/null and b/_images/webhooks9.png differ diff --git a/_sources/404.md.txt b/_sources/404.md.txt new file mode 100644 index 00000000..5bb3318a --- /dev/null +++ b/_sources/404.md.txt @@ -0,0 +1,12 @@ +--- +orphan: true +--- + +# 404 - Page not found + +Copy the URL and report it [here](https://github.com/nightscout/nightscout.github.io/issues/new). + + + + + diff --git a/_sources/clinicians/home.md.txt b/_sources/clinicians/home.md.txt new file mode 100644 index 00000000..d539eea1 --- /dev/null +++ b/_sources/clinicians/home.md.txt @@ -0,0 +1,61 @@ +# Nightscout for clinicians + + + +```{tip} +Unless specified, links within the text are for advanced explanation of the underlying mechanisms but don't necessarily add value for clinicians use of Nightscout. +``` + +## What is Nightscout? + +Nightscout is an open-source cloud application used to visualize, store and share in real-time: + +- data from continuous glucose monitoring sensors +- manually or automatically logged treatments +- basal rates from pumps (optional) + + + +## How can I access patient data? + +Your patient should share a unique web URL with you, it will look like `https://name.domain.ext`. + +Since the URL is open for viewing to anybody having internet access to it, patients or caregivers can decide to make the access [secure](/nightscout/security.md#how-to-turn-off-unauthorized-access) and will share a [tokened](/nightscout/security.md#create-authentication-tokens-for-users) read-only access URL looking like `https://name.domain.ext?token=clinic-48aed625abb0ec86`. +You need to use the full URL provided to access your patient Nightscout site. + +Any device connected to the internet can be used to visualize patient data. + +```{admonition} Cannot access patient URL +:class: tip +Should you experience issues to access the Nightscout site, check with your IT team if the domain used by your patient is not blocked by a local internet safety rule. Many patients or caregivers who build their own Nightscout site rely on platforms as a service or free DNS providers that can get classified as unsafe by cybersecurity systems. +Ask your IT and cybersecurity teams to perform all necessary verifications to allow access to your patient site: Nightscout itself is safe for infrastructures, it doesn't contain any sort of cyberthread or malware. +``` + +Since Nightscout can be hosted in a large variety of [platforms](/nightscout/new_user.md#building-nightscout-diy-in-a-cloud-platform), you can expect the site domain to be (but not only) in the following list: + +`heroku.com`, `azurewebsites.net`, `railway.app`, `fly.dev`, `onrender.com`, `t1pal.com`, `ns10be.de`, `nightscout.pro`, `mooo.com`, `chickenkiller.com`, `crabdance.com`, `strangled.net`, `code.run`, `nightscout4u.com` ... + +```{admonition} Read only access +Writing data into Nightscout is protected with a password called API_SECRET that should not be shared with you by the patient. +``` + + + +## What should I see when I open a Nightscout site? + +What will display should be similar to this: + +![Nightscout](/images/nightscout_screenshot_600.png) + +If you see this, it means your patient forgot to send you the link with a read-only token: + + + + + +## Next steps: + +Follow the links below. + +- [Setup the main view](setup) to add or view all available information. +- [Generate reports](reports). diff --git a/_sources/clinicians/reports.md.txt b/_sources/clinicians/reports.md.txt new file mode 100644 index 00000000..446d46ec --- /dev/null +++ b/_sources/clinicians/reports.md.txt @@ -0,0 +1,173 @@ +# Nightscout reports + +Access reports from the drawer menu, + + + + + +## View profiles + +Profiles view gives important information on the patient therapy parameters. + +Select profiles then SHOW (no additional setup is necessary). + + + +Patients profile(s) will display. + + + +DIA is the duration of the [insulin action](https://www.ncbi.nlm.nih.gov/pmc/articles/PMC4454113/). + +Carbs absorption rate is [complex](https://diyps.org/2014/05/29/determining-your-carbohydrate-absorption-rate-diyps-lessons-learned/) to calculate for patients and can be undefined (or zero) if the DIY system doesn't update the value (when existing). + +Insulin to Carbs ratio (IC) and Insulin Sensitivity Factor (ISF) can be defined by time periods. Only one visible value means whole day. + +Basal rates should match the pump settings. + + + +## Select a report + +Select the report type: + + + +- `Day to day` +- `Week to week` +- `Daily Stats` +- `Distribution` +- `Hourly stats` +- `Percentile Chart` +- `Weekly Distribution` + + + +## Setup the report + +Select the period used to analyze data. + +Enable the check box and either select `From:` and `To: `dates to define the interval + + + +or: + + + +- `Today` +- `Last 2 days` +- `Last 3 days`, +- `Last week` +- `Last 2 weeks` +- `Last Month` +- `Last 3 months` + + Avoid selecting too long periods of time for daily reports. + + + +Unless looking for specific `Notes` or `Event type` leave the checkboxes disabled. + + + + + +You can select which week days to use. + + + + + +Confirm `Target BT range` `bottom` and `top` for TIR (or TITR) and graph range lines. + +You can sort the report from older to newer or newer first. + + + + + +Click `SHOW` and wait for data to load and rendering to complete. This might take some time if the period is long (this will also depend on the Nightscout host engine). + + + + + +## Day To day + +This report will show BG, day by day, including selected treatments. + + + + + +Enable insulin, carbs and basal rate to have consistent insulin distribution information. + + + + + +When changing selections, click again `SHOW` to update the view. + + + +## Week to Week + +This report will give a week by week spaghetti view, with color code for week days selected. + + + + + +## Daily stats + +This report will give a daily distribution view. + + + + + +## Distribution + +This report will give a complete distribution view. + +You also can filter by hours (scroll to the bottom of the page). + + + + + +You can quickly find %TIR, %TUR, %TAR and the rough estimated HbA1c values. + + + +Range must be modified to see %TITR. + + + +## Percentile Chart + +This report will give a percentile distribution view. + + + + + + + +## Hourly stats + +This report will give an hourly distribution view with a box plot showing 25% and 75% percentile plus mean and standard deviation, then additional hour by hour statistics in a table. + + + + + +## Weekly Distribution + +This report will give a weekly view. + + + + \ No newline at end of file diff --git a/_sources/clinicians/setup.md.txt b/_sources/clinicians/setup.md.txt new file mode 100644 index 00000000..43ca4861 --- /dev/null +++ b/_sources/clinicians/setup.md.txt @@ -0,0 +1,87 @@ +# Setup the main view + +Before checking reports, you should verify your patient has setup correctly data upload. +The steps below might not be necessary but will probably give you more insights on the patient system. + +If you're only looking for reports, skip this step and continue to [reports](/clinicians/reports). + + + +## Customize your view + +Open the main menu, located at the top right of the window, select the drawer icon: + + + +Select the units for blood glucose values. + + + +Select the language used for Nightscout display. + + + +If the patient uses a pump that can send its basal rates, or has setup programmed basal rates, enable basal default display. + + + +Enable all available plugins and save. +This will only modify the way you visualize Nightscout on the device you're using. It will not interfere with the patient settings. + + + + + +## Identify displayed items + +A typical DIY closed loop user display will look like this. + + + +Last 48 hours are visible, you can select the upper graph time scale clicking on the corresponding length (2 to 24 hours). You can slide the lower graph selection to visualize the corresponding time period on the top graph. + +The rounded rectangle indicators are called "pills" and contain immediately visible indications, or more insights if you hover on them with the mouse. + +They can be automatically or manually updated by the patient or its closed loop/uploader device, else they will be empty or meaningless. As setting warning and urgent limit values for these pills is not always adjusted by the user in Nightscout variables, they might appear in yellow or red for values that are within normal usage. + + + +Current blood glucose is displayed top left, the arrow only indicates the difference between the current measurement and the previous one (you'll see the measurement age on the left of the view). + + + +- IOB: Insulin on board, is calculated using the insulin duration parameter in the current profile if no external closed loop system is used, or by this external algorithm if any (OpenAPS/Loop). + +- COB: Carbs on board are calculated by the absorption rate set in the profile. +- CAGE, SAGE, BAGE, IAGE are timers counting the time since last Cannula (infusion site), Sensor, Battery and Insulin cartridge change. +- BASAL displays the current basal rate. + +Uploading device battery level and Nightscout storage used space are not of clinical interest. + + + +Connected pumps will show available insulin units, battery status and last registered activity. + + + +DIY closed loop systems can be identified with the [Loop](https://loopkit.github.io/loopdocs/faqs/algorithm-faqs/) (Loop) or [OpenAPS](https://openaps.readthedocs.io/en/latest/docs/While%20You%20Wait%20For%20Gear/Understand-determine-basal.html#understanding-the-determine-basal-logic) (OpenAPS, AndoidAPS, Trio, FreeAPS X, iAPS) pill. Only one will be enabled, if the other one appears it will normally show an exclamation mark. If a DIY closed loop system Nightscout doesn't show any active pill, configuration needs to be fixed so that Nightscout receives all necessary data (patient responsibility). + + + +Basal display shows the programmed basal in dotted lines and the actual basal modulation. This is an example for the default basal display. + + + +Loop adds rich details to Nightscout real time display, like food types and visual information. + +Hovering on the DIY closed loop system pill (Loop/OpenAPS) will show insights of the algorithm decisions. + + + + + +## Next step: + +Follow the link below. + +- [Generate reports](reports). diff --git a/_sources/index.md.txt b/_sources/index.md.txt new file mode 100644 index 00000000..b1c8382b --- /dev/null +++ b/_sources/index.md.txt @@ -0,0 +1,313 @@ +# Welcome to Nightscout + + + +![Nightscout](/images/nightscout_screenshot_600.png) + + + +Health professional? You might not want to build a Nightscout site and just need to find out how to get data from it, [jump to the dedicated pages here](/clinicians/home/). + + + +## Introduction + +Nightscout (also known as CGM in the Cloud) is an open-source cloud application used by people with diabetes and parents of kids with diabetes to visualize, store and share the data from their Continuous Glucose Monitoring sensors in real-time. Once setup, Nightscout acts as a central repository of blood glucose and insulin dosing/treatment data for a single person, allowing you to view the CGM graph and treatment data anywhere using just a web browser connected to the internet. + +There are several parts to this system. You need somewhere online to store, process and visualize this data (a Nightscout Site), something to upload CGM data to your Nightscout (an Uploader), and then optionally you can use other devices to access or view this data (one - or more - Follower). + +### Nightscout Site + +- The Nightscout cloud application can be installed by yourself (Do It Yourself, in short: DIY) using hosting services from various cloud service providers. +- You can also pay to use a fully-managed Nightscout hosting service and avoid having to personally build and maintain your site. + +### Uploader + +The CGM data is usually sent to Nightscout by an uploader device such as a mobile cellphone running an app like xDrip+, Spike, xDrip4iOS, Medtronic Uploader and others. Alternatively, the CGM data can be pulled directly from your online Dexcom account. The application you'll need for uploading the data depends on which CGM device you're using and what type of mobile device you have. + +### Followers + +In addition to viewing the data using a web browser, there are also applications available for mobile devices, smartwatches, electronic devices and other cloud-based services which allow you alternative ways to view and interact with the information stored within your Nightscout site (often known as "Followers"). + +![Nightscout Environment](/images/nscloud.png) + +## Development History + +Nightscout was developed by people with Type 1 Diabetes and parents of kids with T1D and has continued to be developed, maintained, and supported by volunteers, clinical use, and commercial sponsorship. The web portal known as Nightscout is made by the [CGM Remote Monitor Contributors](https://github.com/nightscout/cgm-remote-monitor/graphs/contributors) and the Nightscout community over years. + +When first implemented, Nightscout was a solution specifically for remote monitoring of [Dexcom G4 CGM data](https://github.com/hackingtype1/original-android-cgm). Today, there are Nightscout solutions available for nearly all commercial CGM sensors. The goal of the project is to allow the remote monitoring, sharing and analysis of any T1D's glucose levels using existing monitoring devices. + +## What are the values of Nightscout + +We are compelled in the pursuit of **humane** and **equitable** application of technology to **liberating people from the burden of diabetes**. We are not waiting to deliver the benefits we've found in **sharing _all_ diabetes experiences**. Nightscout is free to contribute, free to access, free to criticize, free to try, free to depend on, free to modify, and free to distribute. The Nightscout community demands **respect** and **dignity** for all community members. The reputation of the Nightscout community is affected by the **quality** of the source code, the quality of our relationships, the quality of our discussions, what we are known for doing: the way we treat each other. +Users of Nightscout are impacted by **reliability**, **security** and **confidentiality** of Nightscout. Therefore, the developers and contributors of Nightscout strive to improve the quality of Nightscout while making these opportunities **accessible** to all. + +Nightscout's **longevity**, the application, the ecosystem, and the culture demand we use all tools at our disposable to achieve the values in a **sustainable** way. We are not waiting to do whatever it takes to meet the needs of people affected by the inhumane demands of diabetes. Our active **collaboration** against the burden of diabetes creates the results we desire. + +## What Do I Need? + +You will need: + +- A CGM sensor + +- A way to [upload](uploader/uploaders) your data, to be stored in Nightscout (this is generally an internet-connected mobile phone with a matching uploader app) + +- Internet access + +- **For Nightscout DIY:** Basic computer skills and the ability to **_carefully_** follow the installation guides shown on this site + + **\*"Carefully"** means that you will thoroughly read, follow and complete each step without skipping any and without giving up thinking that it is too difficult - it isn't, you just need to be patient.\* + +```{admonition} IMPORTANT +:class: danger + +Before using Nightscout, it is important to understand that this project: + +- is an open-source, community-based project and is not supported by any company +- is not officially approved or regulated for diabetes therapy and/or treatment in any way + +**If you will be using DIY: You must understand that you take full responsibility for building and running this system and you agree to do so at your own risk.** +``` + +```{admonition} SAFETY +:class: danger + +- This project requires a working internet connection and availability of third-party cloud services +- Do not rely only on Nightscout as the only way you have of knowing your blood glucose values and trends +- Make sure you're ready to cope with an unexpected failure and always have alternative ways to check your blood glucose levels +``` + +## How Much Does It Cost? + +There's no simple answer to this. You basically have two options: + +1. **[DIY](#build-your-own-nightscout-site)**: Use instructions on this website to create your own installation. You will need to maintain this installation yourself. There are cloud providers that offer the needed hosting services for free, so your monthly hosting cost can be free - $0 with this option. Of note, with this option you are the person responsible for ensuring the service is up when you need it. The community aims to support people who choose this option, but this is entirely driven by a voluteer effort and support might not be available when you need it. +2. **[Use a service](#nightscout-as-a-service)**: You can use a hosting provider that does all of this work for you in exchange for a monthly fee. There are many options available for this. If you're a non-technical person, this is a **great choice**. + +## Build your own Nightscout site + +```{tip} +Interested in building a Nightscout DIY site? You'll find instructions ⇒ [**HERE**](/nightscout/new_user/) ⇐. +``` + +**Note:** DIY users of Nightscout have been historically using platforms like [Digital Ocean](https://github.com/jasoncalabrese/project-glu/blob/master/README.md), [Microsoft Azure](https://docs.google.com/document/d/1RP-0KAX0Z46iGmShBdygY7_vQN1d-xEgtK_dSsjCA20/edit) and then Salesforce Heroku to host their sites. With time, more platforms were added, but most now charge for usage. + +If you have the time to author instructions for this purpose, new documentation [pull requests](https://github.com/nightscout/nightscout.github.io/pulls?q=is%3Apr) are extremely welcome as well as [comments](https://github.com/nightscout/nightscout.github.io/issues). + +## Who can help me with my DIY Nightscout? + +You will find many willing and open-hearted people in the Facebook groups. + +The main group for all Nightscout support is the "[CGM in the Cloud](https://www.facebook.com/groups/cgminthecloud/)" Facebook group. + +There are also many local Nightscout communities and you'll probably be able to find one in your own country and language if this helps. + +```{admonition} Technical Support +:class: warning + +Unless you're paying for a hosted Nightscout including support, this project is "**Do It Yourself**" (DIY) and supported by volunteers. Whilst you will almost certainly always will find someone ready to help you for free, building your own Nightscout site **doesn't entitle you to any form of support** from anybody. + +The open-source diabetes movement is founded on the idea of **paying it forward** and helping others to learn things that others took their time to help teach you about. + +*Ask nicely, and nice people will always do nice things and help you.* + +Nightscout developers are busy people and we'd like them to concentrate on maintaining and improving Nightscout, not only supporting users. (This means **do not** send them private messages or friend requests just to help fix something that is already clearly documented or for help that can be easily requested in the CGM in the Cloud group) +``` + +```{admonition} Facebook Privacy +:class: tip + +You'll find a lot of useful and friendly diabetes-oriented groups on Facebook and it's probably the best place to find online support. Some people express concerns about using Facebook: if you're worried about your privacy just remember Facebook will only share the information that you **allow** it to share. +``` + + + +## Nightscout as a Service + +If you want to save time and avoid the need to maintain a DIY solution, you have many providers. + +### [T1Pal](https://www.t1pal.com) + +[Pricing information.](https://t1pal.com/) + +The T1Pal hosting service has been developed by **Ben West**, a member of the original CGM in the Cloud team and an original lead core developer for the Nightscout Project. Database and server administration is automated and managed automatically as part of the service. Contact T1Pal support to request specific features or versions. + +If you need help with T1Pal, please file a support ticket by emailing ***support*** at ***t1pal.com***, or select "Get Support" from [My Account](https://www.t1pal.com/account/). + +### [NS10BE](https://10be.de) + +[Pricing information.](https://ns.10be.de/en/pricing.html) + +Started in Nov 2017 and offers full managed Nightscout Services. You can create Nightscout with a few clicks and won't have to worry about maintenance, updates, database space and CPU limits. A backup of your database and settings is performed every 6-8 hours. You can import data from your old Nightscout instance or MongoDB database, also upload data (Freestyle, Dexcom, Omnipod, ...) via CSV files. The servers are located in different fail-safe data centers in Germany, Finland or France (can be selected) . They are monitored by [uptimerobot](https://ns.10be.de/en/status.html) and own Slackbot. When a server goes down, it restarts itself and sends a twitter message. + +Support: ***support*** at ***ns.10be.de*** or [https://10be.de/en/contact.html](https://10be.de/en/contact.html) or [https://twitter.com/10be_de](https://twitter.com/10be_de) or [https://www.facebook.com/10be.de](https://www.facebook.com/10be.de) + +### [Nightscout Pro](https://nightscout.pro/welcome-to-nightscout-pro/) + +[Pricing information.](https://nightscout.pro/#pricing) + +Founded in 2022 by **Andy Low** - A type 1 diabetic web developer from Scotland, UK. Nightscout Pro offers a completely 'hands-off' approach to Nightscout hosting, meaning all you need to do is subscribe via the website, and your Nightscout site will be created for you, with little to no configuration needed. Your site will be set up in a 'default' configuration, which can be modified easily from their admin panel. Nightscout Pro offers full access to all Nightscout features, and you can get **support** via [Email](mailto:support@nightscoutpro.com), [Facebook](https://www.facebook.com/nightscoutpro) or [Discord](https://discord.gg/7hYrkqVavU). + +### [Serendipity Bio](https://serendipitybio.com) + +[Pricing information.](https://serendipitybio.com/pricing) + +Serendipity provides instant deployment of Nightscout, literally. +[Create](https://serendipitybio.com/pricing) your account and we'll launch your Nightscout server, launch your Mongo database and provide you a secure, shareable URL. + +Never worry about Database size, reliability of your server and upgrading versions. Serendipity Bio fully manages your Nightscout server and database. Nightscout is configured for you automatically on start. Once launched you can use our UI to change your settings to your liking! + +Find support documents [here](https://support.serendipitybio.com/) or [email](mailto:support@serendipitybio.com) us any time! + +Concerned about reliability or sustainability? Serendipity Bio is built using Amazon Web Services, which also hosts all your favorite websites like Netflix, Apple, AirBnB, and ESPN. + +### [Nightscout4u](https://www.nightscout4u.com) + +[Pricing information.](https://www.nightscout4u.com/) + +Started its service in 2023 and offers a simple one-click hosted Nightscout service solution. It is possible to create and use multiple Nightscout instances with one account. + +The service is suitable for beginners to make their first steps and get used to Nightscout. + +### [Nightscout-easy](https://www.nightscout-easy.ru) + +[Pricing information.](https://nightscout-easy.ru/) + +Built by true enthusiasts who deeply understand the challenges faced by those using Nightscout. This understanding ensures that the service meets all user needs, providing a comfortable and convenient experience. + +Simple and intuitive control panel, automatic data backups, easy import and export of Nightscout data, option to choose between old and new versions of Nightscout, user-friendly interface for managing variables, detailed setup videos for xDrip and AndroidAPS, friendly tech support, always ready to help + +### [Opensource.clinic](https://www.opensource.clinic) + +[Pricing information.](https://www.opensource.clinic/pricing) + +Struggling with your DIY-loop? Do you need help fine-tuning? Our experts are here to guide you. + +Higher-tier subscriptions offer personalized coaching from a dedicated team of healthcare and IT professionals, all of whom are experienced or trained in DIY looping. The support team is located across various time zones, ensuring round-the-clock assistance, and is currently available in English and Dutch. + +Fast setup: Instance running within three steps, with payment options like credit card or Google Pay, 24/7 WhatsApp Helpdesk for both technical and medical questions, Data import/export support, Additional data visualizations, Personalized coaching in top-tier subscriptions. + + + +## How to Use These Docs + +- Use the navigation menu at the top on the left of the screen to find the section that you are looking for. + +- A Table of Contents for the current page is always displayed on the left side of the screen. + +- You can search the Nightscout Docs site by entering your search string (only English) below the Nightscout main logo top left. + +## How Can I Help? + +You'll find the source repository for this documentation [here](https://github.com/nightscout/nightscout.github.io). Please don't hesitate to improve or correct anything you see and create a pull request! + +You're also welcome to contribute or report any error, unclear explanation, typo, broken link etc. by going to GitHub and opening an [issue](https://github.com/nightscout/nightscout.github.io/issues). + +Finally, to help on the development of Nightscout itself, feel free to join in at our [Discord Channel](https://discord.gg/zg7CvCQ). + + + +```{toctree} +:hidden: +uploader/uploaders/ +``` + +```{toctree} +:hidden: +:caption: CREATE YOUR NIGHTSCOUT +nightscout/new_user/ +``` + +```{toctree} +:hidden: +:caption: CREATE YOUR DATABASE +nightscout/database/ +vendors/mongodb/atlas/ +vendors/railway/database/ +vendors/northflank/database/ +``` + +```{toctree} +:hidden: +:caption: CREATE YOUR WEB APP +nightscout/platform/ +vendors/azure/new_user/ +vendors/northflank/new_user/ +vendors/render/new_user/ +vendors/railway/new_user/ +vendors/heroku/new_user/ +vendors/fly.io/new_user/ +vendors/google/new_user/ +``` + +```{toctree} +:hidden: +:caption: SETUP NIGHTSCOUT +nightscout/profile_editor/ +uploader/setup/ +nightscout/downloaders/ +nightscout/wearable/ +nightscout/setup_variables/ +uploader/xdripcarelink/ +troubleshoot/dexcom_bridge/ +``` + +```{toctree} +:hidden: +:caption: USE NIGHTSCOUT +nightscout/discover/ +nightscout/reports/ +nightscout/security/ +nightscout/admin_tools/ +nightscout/close_loop/ +nightscout/ifttt/ +nightscout/pushover/ +troubleshoot/troubleshoot/ +update/update/ +update/dev_branch/ +update/downgrade/ +``` + +```{toctree} +:hidden: +:caption: ADVANCED DIY +nightscout/advanced/ +vendors/VPS/ubuntu/ +vendors/VPS/docker/ +vendors/NAS/synology/ +``` + +```{toctree} +:hidden: +:caption: VENDORS +vendors/heroku/migrate/ +nightscout/multiadmin/ +vendors/github/update/ +update/redeploy/ +troubleshoot/github/ +troubleshoot/atlas/ +troubleshoot/azure/ +troubleshoot/northflank/ +troubleshoot/railway/ +troubleshoot/heroku/ +vendors/heroku/ecoplan/ +vendors/heroku/hobbyplan/ +vendors/heroku/mfa/ +update/upd_stack/ +troubleshoot/fly.io/ +troubleshoot/render/ +``` + +```{toctree} +:hidden: +:caption: CLINICIANS +clinicians/home/ +clinicians/setup/ +clinicians/reports/ +``` + +```{toctree} +:hidden: +:caption: TRANSLATE +translate/ +``` diff --git a/_sources/nightscout/admin_tools.md.txt b/_sources/nightscout/admin_tools.md.txt new file mode 100644 index 00000000..53c30484 --- /dev/null +++ b/_sources/nightscout/admin_tools.md.txt @@ -0,0 +1,66 @@ +# Admin Tools + + + +## Subjects and Roles + +```{include} /nightscout/tokens.md + +``` + + + +## Database Maintenance + +If you use a small or a free database (like MongoDB Atlas), it will require maintenance as nothing in Nightscout is setup to perform cleanup and unless you planned for a larger size database, it will eventually fill-up. + +```{warning} +Make sure you leave [`dbsize`](/nightscout/setup_variables.md#dbsize-database-size) visible on your page to keep it under control. +``` + + + +This panel will give access to basic maintenance actions on various database collections. + + + +### Mongo `status` Database + + + +Your status database contains battery, pump, ... extra information as those defined in [devicestatus](/nightscout/setup_variables.md#devicestatus-device-status) that you can safely delete when necessary. + + + + + +When it comes to `treatments` and `entries`, deleting data is something you need to carefully evaluate if you like Nightscout to be the main repository for your history. + +### Mongo `treatments` Database + + + + + + + +### Mongo `entries` Database + + + + + + + +### Remove future items from Database + + + +Future treatments and entries generated by an incorrect time zone, daylight saving time change, or any other mistake can completely block your site. Using this feature will purge the database of these unwanted values automatically. Detected issues will appear in `Database contains `*`x`*` future records` and should be fixed. + + + + + + + diff --git a/_sources/nightscout/advanced.md.txt b/_sources/nightscout/advanced.md.txt new file mode 100644 index 00000000..1aadf9a1 --- /dev/null +++ b/_sources/nightscout/advanced.md.txt @@ -0,0 +1,63 @@ +# Advanced Nightscout deployments + + + +```{admonition} Too complicated? Not what you're looking for? +:class: seealso +Consider a hosted Nightscout service! Check for easier solutions [here](/index.md#nightscout-as-a-service). +``` + + + +## Building Nightscout DIY in a cloud platform + +You can run your Nightscout site in several vendors platforms, using free or paid accounts. + +We documented Heroku, Azure, Railway, Northflank and Fly.io. There are probably others, don't hesitate to [open an issue in the documentation](https://github.com/nightscout/nightscout.github.io/issues) with the easiest deployment method if you want to see them named here. + + + +## Building Nightscout DIY in a virtual server + +You can run your Nightscout site in physical or virtual private servers, using free or paid accounts. +The [original](https://github.com/jasoncalabrese/project-glu/blob/master/README.md) Nightscout project was also developed to run in Digital Ocean. + +You can use step by step Linux commands or deploy with a **simple** scripted install. + +Below is a list of some VPS. There are probably others, don't hesitate to [open an issue in the documentation](https://github.com/nightscout/nightscout.github.io/issues) with the easiest deployment method if you want to see them named here. + +[Google Cloud](https://navid200.github.io/xDrip/docs/Nightscout/GoogleCloud.html) with a Scripted deployment (one command). +[Oracle](https://www.dropbox.com/s/5twlqrndofqno0t/0-amber-oracle.pdf) and extensive documentation (npm and Docker). +[Amazon Web Service](https://github.com/rajdeut/terraform-aws-nightscout#readme) + +Some common deployment methods: + +[Ubuntu](/vendors/VPS/ubuntu) commands. +[Docker](/vendors/VPS/docker) container. + + + +(nas)= + +## Building Nightscout inside your NAS + +Don't buy a NAS device just for this, but if you already have one that's worth a try! + +You can host your Nightscout site in your [Synology](/vendors/NAS/synology) NAS. +You can also try with your [QNAP](https://docs.google.com/document/d/1zpF6Y3kPQqc9KOsClIQt686HDLhGfFxwz4vGfq8E254/edit) NAS. + + + +## Building Nightscout with a Raspberry PI 4 + +If you own one, you can use it to host your Nightscout, see [here](https://gist.github.com/Andries-Smit/daac75cd4c06af78cde68c5dec941705). + + + +## Home Assistant Add-On for Nightscout + +This add-on is a wrapper around nightscout/cgm-remote-monitor. It includes a Mongo Database which is used to store the uploaded values. + +See [here](https://github.com/marciogranzotto/addon-nightscout). + + diff --git a/_sources/nightscout/close_loop.md.txt b/_sources/nightscout/close_loop.md.txt new file mode 100644 index 00000000..771a9241 --- /dev/null +++ b/_sources/nightscout/close_loop.md.txt @@ -0,0 +1,60 @@ +# Closed loop systems + + + +Nightscout is integrated with DIY closed loop systems. + +Look into the specific app documentation to know more about optimal Nightscout settings. + +The heading for each section is a link to the Nightscout overview page for that closed-loop system. + +You will also find general support in **Loop and Learn**. + +* [The *Loop and Learn* Website](https://www.loopandlearn.org/) +* [The *Loop and Learn* *Facebook* group](https://www.facebook.com/groups/LOOPandLEARN) + + + +## [Loop](https://loopkit.github.io/loopdocs) + +[Loop](https://loopdocs.org) is an open source iOS app that assists in the many insulin dosing decisions people with diabetes face every day. You enter your own settings for desired correction range, basal schedule, insulin sensitivity factor (ISF), carbohydrate ratio (CR) and the type of insulin you are using. The glucose predictions, using your settings and meal entries, provide Loop with the information needed to modify insulin delivery to attain a targeted glucose range in the future. + +**See [here](https://loopkit.github.io/loopdocs/loop-3/services/#nightscout-login) how to configure Loop to upload to Nightscout.** + +Facebook group: [Looped](https://www.facebook.com/groups/TheLoopedGroup) + + + +## [AAPS](https://androidaps.readthedocs.io/en/latest/index.html) + +AndroidAPS is an open source app for people living with insulin-dependent diabetes that acts as an artificial pancreas system (APS) on Google Android smartphones. AAPS uses an openAPS software algorithm. + +**See [here](https://androidaps.readthedocs.io/en/latest/Configuration/Preferences.html#nsclient) how to configure AAPS NSClient to upload to Nightscout.** + +Facebook group: [Android APS Users](https://www.facebook.com/groups/AndroidAPSUsers) + + + +## [Trio](https://diy-trio.org) + +Trio is an open source iOS app that automates insulin delivery using OpenAPS' algorithm. + +[Documentation](https://docs.diy-trio.org/en/latest/) +[Facebook group](https://www.facebook.com/groups/1351938092206709) +[Discord](http://discord.diy-trio.org) + + + +## [iAPS](https://iaps.readthedocs.io/en/main/) + +iAPS is a open source artificial pancreas system based on the OpenAPS algorithm. + +Facebook group: [iAPS](https://www.facebook.com/groups/1351938092206709) + + + +## [OpenAPS](https://openaps.org/) + +*Mind the documentation is not up to date for Nightscout DIY options.* + +The Open Source Artificial Pancreas System (OpenAPS) is a safe but powerful, advanced but easily understandable, Artificial Pancreas System (APS) designed to automatically adjust an insulin pump’s insulin delivery to keep blood glucose (BG) in a safe range at all times. It does this by communicating with an insulin pump to obtain details of all recent insulin dosing (basal and boluses), by communicating with a Continuous Glucose Monitor (CGM) to obtain current and recent BG estimates, and by issuing commands to the insulin pump to adjust insulin dosing as needed. diff --git a/_sources/nightscout/database.md.txt b/_sources/nightscout/database.md.txt new file mode 100644 index 00000000..0eedb049 --- /dev/null +++ b/_sources/nightscout/database.md.txt @@ -0,0 +1,113 @@ +# Choose your database + +```{admonition} Too complicated? Not what you're looking for? +:class: seealso +Consider a hosted Nightscout service! Check for easier solutions [here](/index.md#nightscout-as-a-service). +``` + + + +You must create a database unless it's already included in the platform you selected, check below. + +````{tab-set} + +:::{tab-item} Select your platform -> + +::: + +:::{tab-item} Heroku/Railway/Azure/Northflank/Fly.io +You need to create a database. +::: + +:::{tab-item} Google Cloud script +You don't need to create a database: continue [**here**](https://navid200.github.io/xDrip/docs/Nightscout/GoogleCloud.html) +::: + +:::{tab-item} Hosted +You don't need to create a database: go directly to the [hosting site](/index.md#nightscout-as-a-service). +::: + +```` + + + +Find a list of commonly used database hosting services below, decide which one you'll want to use and create your database. + + + +```{warning} +Using a free, limited size database (like M0 Atlas) means you will have to maintain it. +Since it will regularly grow with the data you send to Nightscout, take a note to perform **regular cleanup** to avoid your site crashing. +``` + +```{card} +## MongoDB Atlas Database +![MongoDB Atlas](/vendors/img/Atlas.png) +^^^ +MongoDB bought [mLab](https://twitter.com/chrisckchang/status/506959446753284096) in 2018 and shutdown its service in 2020. Most users migrated to MongoDB Atlas, using a free M0 database with a limited 512MB capacity. + +**Pros**: +* The M0 cluster is free +* Nightscout was adapted to MongoDB Atlas + +**Cons**: +* M0 clusters are designed for learning and testing, not production: performance and availability are not guaranteed +* There is no warranty the M0 cluster will remain in the future +* A larger M2 cluster costs 9$ per month (not competitive against hosted solutions) +* A full M0 database crashes Nightscout, this is a common issue for DIY closed loop system users ++++ +Follow [these instructions](/vendors/mongodb/atlas.md) to build a small database to host your Nightscout data if you don't already have one. +``` + +```{card} +## Railway Mongo Database +![Railway](/vendors/img/Railway.png) ![MongoDB](/vendors/img/MongoDB.png) +^^^ +Railway offers a Mongo database. + +**Pros**: +* Simple to create +* Less overhead than Atlas (more space) + +**Cons**: +* Requires a 5$/month hobby plan as billing starting amount +* Running a database together with a Railway Nightscout site will increase billing above ~200MiB used +* Simple Mongo 4.4 database ++++ +Follow [these instructions](/vendors/railway/database.md) to create a database in Railway. +``` + +```{card} +## Northflank Mongo Database +![Northflank](/vendors/img/Northflank.png) ![MongoDB](/vendors/img/MongoDB.png) +^^^ +Northflank offers a Mongo database. + +**Pros**: +* Simple to create +* Economic reliable database +* High quality Mongo database with a replica set + +**Cons**: +* Billing will occur but the cost is really limited: 0.3$ per GiB (it usually takes years to reach 1GB for Nightscout) +* There is no warranty this offer will be maintained in the future ++++ +Follow [these instructions](/vendors/northflank/database.md) to create a database in Northflank. +``` + +```{card} +## VPS Mongo Database +![MongoDB](/vendors/img/MongoDB.png) +^^^ +You can create a Mongo Database in a Virtual Private Server, either using a free plan (Oracle, Google) or a paid account (Digital Ocean and so many others ...). + +**Pros**: +* Lot of space +* Standard community method largely supported by IT specialists + +**Cons**: +* Requires commands to be typed and some IT knowledge ++++ +Waiting for something easier (work in progress) [these are the instruction](https://www.mongodb.com/docs/manual/administration/install-on-linux). +``` + diff --git a/_sources/nightscout/discover.md.txt b/_sources/nightscout/discover.md.txt new file mode 100644 index 00000000..05e20778 --- /dev/null +++ b/_sources/nightscout/discover.md.txt @@ -0,0 +1,308 @@ +# Discover your Nightscout site + + + +```{admonition} Privacy +:class: tip +Having the URL of your Nightscout site, anybody can view your BG and run reports of your data. It it strongly recommended that you [secure](/nightscout/security) your site. +``` + + + +It should look very similar to this when your [uploader](/uploader/setup.md) has added some data. + + + + + +The central part will show your recent BG, you can select how many hours you want to be displayed with `Hours: 2 3 4 6 12 24`. The pale blue dots are the AR2 prevision as explained [here](/nightscout/setup_variables.md#ar2-ar2-forecasting). The lower part will display the last 48 hours and you can use the lower right selection to browse your old data. + + + + + +In the upper part you'll see the current time of your site, your current BG (and how long ago it was measured) plus the delta with the previous measurement and a trend arrow. More explanations [here](/nightscout/setup_variables.md#default-plugins). + +Optionally you will see other indications (pills) that can be personalized in your variables and plugins like detailed [here](/nightscout/setup_variables.md#plugins). + + + + + +## Authenticate yourself + +By default you site opens read only, you need to authenticate using your [API secret](api-secret) in order to modify settings and add treatments. Click on the lock icon, enter your API secret and click `Update`. + + + +This will unlock your `careportal` ([if enabled](/nightscout/setup_variables.md#careportal-careportal)) and `edit` ([if enabled](/nightscout/setup_variables.md#edit_mode-on)). + + + + + +## Add a treatment (`careportal`) + +Some uploaders will send treatments to Nightscout but others won't. If you whish to do this manually, `careportal` is here for that. + +`+` will open an interface to manually enter treatments. + + + + + +In the `Event Type` drop down menu, you can select the treatment type you want to add. Additional available entries will depend on the [plugins you enabled](/nightscout/setup_variables.md#advanced-plugins) like Loop and OpenAPS/AAPS. + +### BG Check + +`BG check` allows you to enter a blood glucose reading value from your `Meter`. With a CGM using `Sensor` reading doesn't add much value. + +Keep in mind the value will be inserted now (unless you modify the event time) and might not match your CGM value for non stable BG due to capillary time lag. + + + + + +### Correction Bolus + +`Correction Bolus` allows you to enter the amount of insulin units injected for a correction. + +It will show as a circle with the lower half blue, with its size depending on the amount of units, UI indicated below (depending on [bolus rendering](/nightscout/setup_variables.md#bolus_render) setting). + + + + + +### Meal Bolus + +### Carb Correction + +### Snack Bolus + +These treatments allow you to enter the amount of food you eat (and eventually the matching insulin treatment). + +It will show as a circle with the higher half white (if including carbs), with its size depending on the amount of food. Without carbs the upper half will not be filled with the white color. If you add proteins and fat, the amount will display in this order: `carbs/proteins/fat`. With insulin the lower half of the circle will fill in blue and units will be indicated below. + +You can select the timing of carbs absorption in `Carb Time` (i.e. when did you or will you actually eat these carbs) + + + + + +### Combo Bolus + +Combo bolus allows you to insert the corresponding bolus if you use a pump. Insert the total amount of insulin in `Insulin Given` then break down in `Split` with the percentage administered `now` and the `extended` amount. Enter the`Duration` of the extended bolus below. + +It will display as a classic bolus at treatment time and [basal](/nightscout/setup_variables.md#basal-basal-profile) will reflect the extended amount for the selected duration. + + + + + +### Announcement + +Announcements are used to change your page title in order to alert viewers. + +Entering another treatment will acknowledge the announcement and return your page title to [default](/nightscout/setup_variables.md#custom_title-nightscout). + + + + + +### Note + +### Question + +Notes and questions are a way to add comments and interact with others using your Nightscout page. + + + + + +### Exercise + +You can log physical activities and specify the duration. + + + + + +### Pump Site Change `cage` + +### CGM Sensor Start `sage` + +### CGM Sensor Insert + +### CGM Sensor Stop + +### Pump Battery Change `bage` + +### Insulin Cartridge Change `iage` + +Logging these events will help you remember various expirations dates and will update the [corresponding pills](/nightscout/setup_variables.md#age-pills) if enabled. + + + + + +### Temp Basal Start + +### Temp Basal Stop + +You can indicate temporary basal rate changes using either a percentage change in `Percent` or the absolute rate in `Basal value`. You need [basal](/nightscout/setup_variables.md#basal-basal-profile) to be enabled to visualize it. + + + + + +### Profile Switch + +If you have more than one profile stored, you can switch profile to keep your profile parameters synchronized. + +For a temporary switch (like for physical activities) you can select the duration. + + + + + +### D.A.D. Alert + +Log a Diabetic Alert Dog event. + + + + + +## Edit Mode (`edit`) + +For values still present on your display (last 48 hours), you can use Edit to move or delete bolus and correction treatments. + + will change color to red in edit mode . + +1. Drag the treatment in the past or future in the black area to move both food and insulin. +2. If you want to move only insulin drop in the blue area. +3. For carbs only, in the white area. +4. To delete a complete treatment drop it in the red delete area. + +Once done, exit the edit mode by de-selecting it (white on black background). + + + + + +## Drawer Menu + +Once authenticated (click the lock icon up right) you'll find many features in the drawer menu like access to advanced plugins and customizations of your web page (local view only, in order to modify the default view look into your Heroku variables [here](/nightscout/setup_variables/)). + + + +`Reports` will drive you to a powerful reporting toolset detailed [here](/nightscout/reports/). + +`Profile Editor` will allow you to modify and add profiles, see [here](/nightscout/profile_editor/). + +`Food Editor` handles your customized [food database](/nightscout/setup_variables.md#food-custom-foods). + +`Admin Tools` gives you access control and database tools, see [here](/nightscout/admin_tools). + + + +### Simple views: + + + + + +- `Clock` - Shows current BG, trend arrow, and time of day. Grey text on a black background. + + + +- `Color` - Shows current BG and trend arrow. White text on a color background. + + + +- `Simple` - Shows current BG. Grey text on a black background. + +- `[+]` - Create custom, simplified views using a predefined set of elements. + + + + + +List of available items: + +- `SGV` - Sensor Glucose Value +- `SGV age` - time since the last SGV read +- `SGV delta` - change of SGV in the last 5 minutes +- `Trend arrow` - icon of the SG trend +- `Time` - current time +- `Line break` - invisible item that will move following items to the next line (by default all are showing on the same level) + +All visible items have `Size` property which allows to customize the view even more. Also, all items may appear multiple times on the view. + +Apart from adding items, it is possible to customize other aspects of the views, like selecting `Color` or `Black` background. The first one will indicate current BG threshold (green = in range; blue = below range; yellow = above range; red = urgent below/above). `Show SGV age` option will make `SGV age` item appear `Always` or only if the predefined threshold is reached: `Only after threshold`. Breaching `SGV age threshold` will also make `Color` background turn grey and strike through `SGV`. `Clock view configurator` will generate an URL (available under `Open my clock view!` link) that could be bookmarked. + +If you launch one of these views in a fullscreen view in iOS, you can use a left-to-right swipe gesture to exit the view. + + + +### Settings: + + + + + +You can customize your view using Settings. Changes will only be applied to your current browser view, if you want to make these settings default for any browser you need to change directly the corresponding [system variables](/nightscout/setup_variables) indicated below and add the corresponding plugins in [`SHOW_PLUGINS`](/nightscout/setup_variables.md#plugins). + +You need to [authenticate](#authenticate-yourself) to save your settings. + +#### [**Units `DISPLAY_UNITS`**](display-units) + +#### [**Date Format `TIME_FORMAT`**](/nightscout/setup_variables.md#time_format-12) + +#### [**Language `LANGUAGE`**](/nightscout/setup_variables.md#language-en) + +#### [**Scale `SCALE_Y`**](/nightscout/setup_variables.md#scale_y-log) + +#### [**Render Basal `BASAL_RENDER`**](/nightscout/setup_variables.md#basal-basal-profile) + +#### [**Render Bolus Amount `BOLUS_RENDER`**](/nightscout/setup_variables.md#bolus_render) + +#### [**Alarms `ALARM`**](/nightscout/setup_variables.md#alarms) + + + + + + + +#### [**Edit Mode `EDIT`**](/nightscout/discover.md#edit-mode-edit) + +#### [**Show Raw BG Data `rawbg`**](/nightscout/setup_variables.md#rawbg-raw-bg) + +#### [**Custom Title `CUSTOM_TITLE`**](/nightscout/setup_variables.md#custom_title-nightscout) + +#### [**Theme `THEME`**](/nightscout/setup_variables.md#theme-colors) + +#### [**Show Plugins `SHOW_PLUGINS`**](/nightscout/setup_variables.md#plugins) + + + + + + + +In order to `Save` your changes you need to Authenticate, click `Authenticate` and enter your [API Secret](api-secret). + +`Reset, and use defaults` will reverse your changes to defaults from your [config variables](/nightscout/setup_variables.md#nightscout-config-vars). + +In `About` you'll see your current Nightscout version. + + + +### API + +You can find information about your site API at: + +https://{url}/api-docs[?token=TOKEN] + +https://{url}/api/v2/properties.json[?token=TOKEN] diff --git a/_sources/nightscout/dns.md.txt b/_sources/nightscout/dns.md.txt new file mode 100644 index 00000000..5c041a34 --- /dev/null +++ b/_sources/nightscout/dns.md.txt @@ -0,0 +1,129 @@ +--- +orphan: true +--- + +```{warning} +Nightscout developers advice: not a good idea. +``` + +# Use a Dynamic DNS + + + +Either because running a VPS, Northflank or simply because you'd like an alternate name to your Nightscout page, you can use either you own DNS name or free services like those below. + +```{warning} +Adding a free DNS service to your Nightscout setup increases the possibility of unexpected outage. +Paid DNS services are available at 1$ per month. +``` + + + +## No-IP + +No-IP provides one free dynamic DNS hostname. + +```{warning} +Using No-IP for free requires you to **confirm your hostname every month**. +``` + + + +1. Sign up to [No-IP](https://www.noip.com/sign-up). Do not create a `Hostname` yet. + + + +2. From the dashboard, in `Dynamic DNS`, `No-IP hostnames` click `Create Hostname`. + + + + +3. Invent your `Hostname` and select a `Domain` in the `Free Domain` list. This will be the URL you will be able to browse from any computer to your Nightscout site. + + + + +4. If you're using a VPS or you know the IP address of your current Nightscout, select `DNS Host (A)` and enter it in `IPv4 Address`. + + + + +5. Else, if you only know your current Nightscout site name, select `DNS Alias (CNAME)` and enter it in `Target`. + + + + +6. Click `Create Hostname` bottom right. + + + +You now can use this URL when accessing your Nightscout site, in any browser and also for your uploaders and followers. + + + +## Dynu + +1. Sign up to [Dynu](https://www.dynu.com/en-US/ControlPanel/CreateAccount). + + + +2. From the `Control Panel`, select `DDNS Services`. + + + + +3. Invent your `Host` name and select a `Top Level` domain in the list. This will be the URL you will be able to browse from any computer to your Nightscout site. + + + + +4. Click `Add`. + + + +5. Replace the proposed IP address in `IPv4 Address` by your own Nightscout IP, (you can disable IPv6 features) and click `Save`. + + + + +You now can use this URL when accessing your Nightscout site, in any browser and also for your uploaders and followers. + + + +## FreeDNS + +FreeDNS proposes thousands of free DNS names, with the issue that many are flagged as dangerous when you'll want to browse them from your cellular or within public/private networks. You'll find one that fits your needs but you might need several attempts. + +```{warning} +Using FreeDNS for free requires you to **login to confirm your account every six months**. +``` + + + +1. Sign up to [FreeDNS](https://freedns.afraid.org/signup/?plan=starter). Enter all required information and click `Send activation email`. + + + + +2. Check your inbox (search Spam if you don't receive the email) and click on the activation link. + + + + +3. Select `Subdomains` in the menu, then `Add a subdomain`. + + + + +4. Invent your host name in `Subdomain`, select a domain name in the list (there are more than you can see) and put your Nightscout IP in the `Destination` field. Write the text in the image and click `Save`. + + + Note: you might want to select a less popular name than those proposed by selecting Registry in the left menu (example below for us.to). + + + + +5. You now can use this URL when accessing your Nightscout site, in any browser and also for your uploaders and followers. + + + \ No newline at end of file diff --git a/_sources/nightscout/docker.md.txt b/_sources/nightscout/docker.md.txt new file mode 100644 index 00000000..c3df58c0 --- /dev/null +++ b/_sources/nightscout/docker.md.txt @@ -0,0 +1,48 @@ +--- +orphan: true +--- + + + + +Build your own Docker hub image + +1. Clone the cgm-remote-monitor project locally + +2. Open a shell in the project root directory (cd cgm-remote-monitor) + +3. Login + docker login --username username --password xxxxx + +4. Create the image + + docker build . -t cgm-remote-monitor + +5. Get the image ID + + docker image ls + + REPOSITORY TAG IMAGE ID CREATED SIZE + cgm-remote-monitor latest 81a5bfa0c365 50 seconds ago 263MB + +6. Create an empty cgm-remote-monitor repository in Docker hub + +7. Match your own Docker hub username with your Docker username + + docker image tag 81a5bfa0c365 username/cgm-remote-monitor + +8. Push the image to Docker hub + + docker push username/cgm-remote-monitor + +9. Your image is available as username/cgm-remote-monitor + + + + + +cleanup: + +``` +docker image prune -a +``` diff --git a/_sources/nightscout/downloaders.md.txt b/_sources/nightscout/downloaders.md.txt new file mode 100644 index 00000000..c1d083c8 --- /dev/null +++ b/_sources/nightscout/downloaders.md.txt @@ -0,0 +1,276 @@ +# Setup Downloaders - Followers + + + +```{admonition} Smartwatches +:class: tip + +See the dedicated page [**here**](/nightscout/wearable.md). + +``` + + + +Note: indicates applications compliant to [Nightscout access tokens](/nightscout/security.md). + + + +## Android + +### [xDrip+](https://github.com/NightscoutFoundation/xDrip/releases) + + + + + +Select the Nightscout Follower data source and type your Nightscout URL: + +*Example:* `https://name.domain.tld` + +For a secured site add the token and @ before: + + *Example:* `https://token@name.domain.tld` + + + +Facebook group [xDrip](https://www.facebook.com/groups/xDripG5/) + + + +### [AAPSClient](https://github.com/nightscout/AndroidAPS/releases) + + + +Facebook group [AndroidAPS Users](https://www.facebook.com/groups/AndroidAPSUsers) + + + +### [GlucoDataHandler](https://github.com/pachi81/GlucoDataHandler) + +Available in [Google Play store](https://play.google.com/store/apps/details?id=de.michelinside.glucodatahandler). + + + +Receives glucose, IOB and COB values from **Nightscout** (pebble interface). + + + + + +[GlucoDataAuto](https://github.com/pachi81/GlucoDataAuto/blob/main/README.md) for Android Auto. + + + +### [Nightwatch](https://play.google.com/store/apps/details?id=se.cornixit.nightwatch) (Google Play Store) + + + +Monitor your Nightscout glucose levels on your Android phone or tablet. Dark UI, large readings and buttons, designed for usage at night. + + + + + +### [Nightwatch](https://github.com/StephenBlackWasAlreadyTaken/NightWatch/releases) (legacy) + + + +CGM data on your Android Phone and Android Wear Watch! + +Nightwatch is not maintained anymore and might not work with recent Android versions. Switching to xDrip+ is recommended. + + + +### [Glimp](https://play.google.com/store/apps/details?id=it.ct.glicemia) + + + +In Settings, Cloud, Nightscout, select Download only and type your Nightscout URL. Use a token or API_SECRET for a secure site. + + + + + +### [Diabox](https://www.bubblan.org/diabox/) + + + +In Settings, set Data Collection to Follower, select Nightscout and type your Nightscout URL. + + + + + +## iOS + +### [Nightscout X](https://apps.apple.com/us/app/nightscout-x/id1333154219) + + + + + + + +### [Nightguard](https://apps.apple.com/us/app/nightguard/id1116430352) + + + +[GitHub](https://github.com/nightscout/nightguard) + + + + + +### [Nightscouter](https://testflight.apple.com/join/UczafrJp) + + + +[GitHub](https://github.com/someoneAnyone/Nightscouter) + + + +### [Loop Follow](https://www.loopandlearn.org/loop-follow/) + + + + + +### [Spike](https://spike-app.com/) + + + + + +Look [here](https://github.com/SpikeApp/Spike/wiki/Spike-Follower-Mode#configure-spike-follower-manually). + + + +### [xDrip4iOS](https://xdrip4ios.readthedocs.io/en/latest/) + + + +Set xDrip4iOS to follower mode and enable Nightscout, type your Nightscout URL. +If you're using a secured Nightscout site, enter your token in the matching field. + + + +Facebook group [xDrip4iOS](https://www.facebook.com/groups/853994615056838) + + + +### [sugarmate](https://sugarmate.io/) + +```{admonition} Important limitation +:class: warning +**Sugarmate doesn't allow Nightscout as a data source if you included `bridge` in `ENABLE`.** +If you need this data source: enable [obscuration](/nightscout/setup_variables.md#bridge-share2nightscout-bridge) variables. +``` + + + + + +Add Nightscout as a data source, type your Nightscout URL. + + + + + +### [Diabetes Cockpit](https://apps.apple.com/us/app/diabetes-cockpit/id1580577116) + + + + + + + +### [Gluco-Tracker](https://apps.apple.com/it/app/gluco-tracker/id1526976290) + + + + + + + +### [NightscoutMenuBar](https://github.com/mpangburn/NightscoutMenuBar) + +### [BitBar Nightscout](https://github.com/pdaddyo/bitbar-nightscout) + + + +## Mac + +### [Nightscout MacOS Menu Bar](https://github.com/adamd9/Nightscout-MacOS-Menu-Bar) + +Show your current BG in the system bar at the top of your screen on Mac (including Loop details). Available directly through the [Apple Store](https://apps.apple.com/au/app/nightscout-menu-bar/id1639776072?mt=12). + + + + + +### [GlucoseBar](https://github.com/t1dtools/glucosebar) + +Show your current BG in the menu bar and a nice chart for your historic data. Also available on the [Apple App Store](https://apps.apple.com/se/app/glucosebar/id6468110131?l=en-GB&mt=12). + + + + + +## Windows + +### [FloatingGlucose](https://github.com/dabear/FloatingGlucose) (archived) + + + + + + + +### [Owlet](https://github.com/kashamalasha/nightscout-widget-electron) + + + + + + + +### [NS2Win](https://github.com/emp-00/NS2Win) + + + + + + + +## Displays + +### [M5Stack NightscoutMon](https://github.com/mlukasek/M5_NightscoutMon/wiki) + + Facebook group [M5STACK NIGHTSCOUT](https://www.facebook.com/groups/606295776549008) + + + +### [M5Stick NightscoutMon](https://github.com/mlukasek/M5StickC_NightscoutMon) + + + + + + + +### [BGBuddy](https://github.com/VeryKross/BGBuddy) + + + + + +### [SugarPiDisplay](https://github.com/bassettb/SugarPiDisplay) + + + + + +## Other + +[Home assistant](https://www.home-assistant.io/integrations/nightscout/) + diff --git a/_sources/nightscout/first_setup.md.txt b/_sources/nightscout/first_setup.md.txt new file mode 100644 index 00000000..f978009f --- /dev/null +++ b/_sources/nightscout/first_setup.md.txt @@ -0,0 +1,69 @@ +--- +orphan: true +--- + +## New Nightscout Setup + + + +a) Your Nightscout site should open and direct you to a new profile creation. + + + + + +b) Setup your `Time zone` and eventually all other fields. Do not leave any fields empty. If you don't know which value to use, just use the default value. You can change these values later at any time. + + + + + +c) Browse down to `Authentication status` and click `Authenticate`. Enter your API secret. Click `Update`. + + + + + +d) Click `Save`. + + + + + +e) If the following pop-up shows up click `OK`, and check status (upper right of the window). + + + + + +f) If you need to modify your profile after this, authenticate with the lock icon (top right of the page): enter your API secret. Then click on the hamburger menu and select `Profile Editor`. + + + + + +```{admonition} Privacy warning +:class: warning +Anyone with access to the URL of your Nightscout site, can view your BG and run reports of your data. It it strongly recommended that you enable [security](/nightscout/security) to your site once you're done with the setup +``` + + + +g) Dexcom Share users should see data flowing in after some minutes. +xDrip+ users (including Medtronic [CareLink followers](/uploader/setup.md#medtronic-carelink)) should setup the uploader as shown [**here**](/uploader/setup.md#xdrip). +xDrip4iOS users [here](https://xdrip4ios.readthedocs.io/en/latest/connect/cgm/#nightscout-upload). +[AAPS](https://androidaps.readthedocs.io/en/latest/Configuration/Preferences.html#nsclient) and [Loop](https://loopkit.github.io/loopdocs/operation/loop-settings/services/): consult the relative documentation. + + + + + +------ + +You have completed a new Nightscout site creation. You can continue [here](/nightscout/discover) now. + +The following section provides more information that you might not need to use now. + +------ + + diff --git a/_sources/nightscout/github.md.txt b/_sources/nightscout/github.md.txt new file mode 100644 index 00000000..a8611182 --- /dev/null +++ b/_sources/nightscout/github.md.txt @@ -0,0 +1,36 @@ +--- +orphan: true +--- + +# GitHub + +You will need your own GitHub account if you want to deploy Nightscout in some platforms (check below). + +````{tab-set} + +:::{tab-item} Select your platform -> + +::: + +:::{tab-item} Heroku/Railway/Northflank +You need your own GitHub account and `cgm-remote-monitor` fork (copy). +::: + +:::{tab-item} Fly.io +A GitHub account and `cgm-remote-monitor` fork (copy) is not mandatory but it is recommended. +::: + +:::{tab-item} Google Cloud (xDrip+ script) +You don't need a GitHub account. +::: + +```` + + + +## Create a GitHub account + +```{include} /vendors/github/create.md +``` + + diff --git a/_sources/nightscout/ifttt.md.txt b/_sources/nightscout/ifttt.md.txt new file mode 100644 index 00000000..68f766c2 --- /dev/null +++ b/_sources/nightscout/ifttt.md.txt @@ -0,0 +1,200 @@ +# IFTTT Integration + +If This, Then That (IFTTT) is a useful Nightscout integration. By using IFTTT, you can have single button presses on your iPhone that will set an override, log a cannula change, log a sensor change and much more. + + +## Step 1: Get your API Secret Hash + +First we need to gather one thing called your "hashed API Secret". In your internet browser, open a "console" window while viewing your Nightscout site. Make sure you have "authenticated" your site by using your API secret in the Nightscout settings area (hint: if you see a little padlock in the upper left corner of the site, you haven't authenticated it). Refresh the site and your hashed secret key will be shown as "apisecrethash: "xxxxxxxxxx..."" + +**For Safari users on Mac**, you can open the console window by selecting "Develop" from the Safari top menu, and then "Show Page Source" (if you do not see "Develop" in the top menu, activate it by going to Safari > Preferences... > Advanced, and checking the "Show Develop menu in menu bar" option). If you're having problems seeing the apisecrethash, click the little grey triangle next to the "status isAuthenticated" line and the objects below it will display (see screenshot). Your hashed API secret can be copied and pasted from that line, as shown below. Save that somewhere easy to get to again, because you will be using it later. + + + +**For Chrome users**, the console window is found through the View >> Developer >> View Source. Click on the Console tab and scroll to find the "status isAuthenticated" row to find your apisecrethash. Copy your API hash to somewhere you can retreive it again, we will be copy/pasting it in Step 2. + + + + +## Step 2: Create your "Applets" + +IFTTT calls their little actions that you'll create an "applet". I have no idea why. But, I will go along and use their terminology so we are all consistent. We are basically interested in creating applets that will be buttons on your phone to do cool things in Nightscout. So, you'll have a button that will log when you changed your sensor last...letting you see in Nightscout easily just how old a sensor is at any given time. Or you can create a button that will turn on an "exercise" override that you already programmed into your kid's Loop app. So, let's make our first applet (aka button). + +* Get an [IFTTT account](https://ifttt.com/join) + + + + + +* Login to your IFTTT.com account and select click [this link](https://ifttt.com/create) to get to the page for creating your first "New Applet". (You can also get to this Applet creation page by selecting your Account icon in the upper right of the IFTTT website, then clicking on "Create".) + +* In the screen that appears, click on the black "+this" part of the screen + + + + + + +* In the next screen, type "button" in the search field and then click on the red box labelled "ButtonWidget" + + + + + + +* Connect the button widget by clicking on the large black"connect" button twice, once on the main screen and then second on the pop-up window that will appear immediately after that. (You will only have to "connect" the widgets for the first applet you make. After that the widgets will already connected to your IFTTT account.) + + + + + + +* Click on the large red "button press" box + + + + + +* Click on the black "+that" text + + + + + + +* Enter "Webhooks" in the search field and click on the Webhooks app + + + + + + +* Connect the Webhooks app + + + + + +* Select the blue "Make a Web Request" box + + + + + +* Now you will have a blank web request template to complete. Screenshot below is an example of a completed recipe for eating soon IFTTT action. There are four parts you will need to fill in, and they are described below the screenshot. + + + +```{danger} URL +`https://yoursite.platform.fqd/api/v1/treatments.json`(for all IFTTT recipes that are NOT remote overrides...so things like cannula changes, sensor changes, pump battery changes, etc.) + Change the your URL to your actual site's info. +``` + +```{warning} Method +The method will be `POST` +``` + +```{hint} Content Type +The content type will be `application/json`. +``` + +```{danger} Body +The content of the body will depend on the action that you would like this particular button press to perform. While many recipes are available, any recipe that log carbs to NS will only display the carbs in Nightscout...Loop will not "use" those carbs in treatment or prediction math. The display of carbs in NS though may still be helpful for remote care givers to leave an indication that a low is being noticed and treated. Some sample content for actions that may be useful in Loop: + **Pump Site Change** + {"enteredBy": "IFTTT-button", "eventType": "Site Change", "duration": 0, "secret": "your_hashed_api_goes_here!!!"} + **CGM Sensor Start** + {"enteredBy": "IFTTT-button", "eventType": "Sensor Start", "duration": 0, "secret": "your_hashed_api_goes_here!!!"} + **Note** + {"enteredBy": "IFTTT-button", "eventType": "Note", "notes": "Hi mom, please don't text me for a bit. I'm taking a test.", "secret": "your_hashed_api_goes_here!!!"} +``` + +```{warning} Special note for IFTTT to set a Remote Override with dev branch +Triggering a remote override with IFTTT takes a couple considerations; +1. You have followed [the directions for setting up remote overrides](https://loopkit.github.io/loopdocs/nightscout/remote-overrides/) in Nightscout already. +2. Remote overrides will use **`https://yoursite.herokuapp.com/api/v2/notifications/loop`** for the URL line of the applet. Notice that is different from the other type of applets' URL. +3. The Body message of the applet needs to match the override already programmed in Loop app; the reason, reasonDisplay, and duration all need to match what is preset in your Loop app. The "duration" is giving in minutes in the body message (vs hours in Loop), and if the override is one that is "enabled indefinitely" then the duration is "infinite". The "reason" is the name of the override but NO EMOJI, and the "reasonDisplay" is the override name with the emoji. Check out the samples Body messages for overrides below. You will have to edit your body messages to match your reason and reasonDisplay. The target range and duration of the override does not need to be specified. +**Body message for override named "hormones"** +{"eventType": "Temporary Override", "reason": "hormones", "reasonDisplay": "🧟♀️ hormones", "secret": "your_hashed_api_goes_here!!!"} +**Body message for override named "running"** +{"eventType": "Temporary Override", "reason": "running", "reasonDisplay": "🏃♀️ running", "secret": "your_hashed_api_goes_here!!!"} +**Body message for override named "Low Treatment"** +{"eventType": "Temporary Override", "reason": "Low Treatment", "reasonDisplay": "🍬 Low Treatment", "secret": "your_hashed_api_goes_here!!!"} +**Body message to cancel any override** +{"eventType": "Temporary Override Cancel", "secret": "your_hashed_api_goes_here!!!"} +``` + + +* Click the `Create Action` button on the bottom of the screen when you finish. + +* Now is your chance to change the title of your applet now to something meaningful. You can turn on notifications, too, using the slider shown. If you turn on the notifications, you will get an alert on your phone and pebble watch when the button press has been successfully deployed. Finish the IFTTT button by clicking on the Finish button that appears. + + + + + +* Repeat the setup for new applets for as many automated actions/overrides as you would like to setup. + + + + + +## Step 3: Enable IFTTT in your Nightscout site + +Now that we have cool applets made, we need to give Nightscout some information so that it will accept commands from our applets. It's pretty simple to do...just a couple additions to your Heroku settings. + +* Find your Maker Key by going to your IFTTT account icon in upper right corner, choose "My services" and then click on the Webhooks service, settings. + +******** + + + + +* You will see your Maker Key as the last part of the URL after the `use/`; copy and paste that last part (the red circled part as shown) + + + + + +* Login to your Nightscout site host (azure or heroku) and (1) add your Maker Key to the MAKER_KEY line and (2) add "maker" to your ENABLE line. + + + + + + + + + +## Step 4: Install IFTTT app on your iPhone/Android + +Now that all the hard work is done, we can take easy street and just add that work to the phone via the IFTTT app. By accessing the IFTTT widget on your iPhone, you'll be able to easily and quickly access the useful buttons you've just created. + +* Download the IFTTT app on your phone and log in using your IFTTT account. + +* For iPhone users, if you swipe right from your iPhone's home screen, you will have the Today view showing. Scroll to the bottom, click "edit". This should show a list of existing widgets, followed by a list of "more widgets" with green + signs. Click on the IFTTT's green circle and the widget will be moved to the top, active widgets area. You can hold your finger on the three left lines of the IFTTT widget row to drag it to the top of your widget panel, if you prefer to have it as the top-most widget. + + + + + +If you end up with more than four IFTTT applets, they will appear in reverse-order of when they were created...which may not be the same as you'd prefer them to appear on your widget bar. If you'd like to reorder them: + + * go into your iPhone's IFTTT app + * click on My Applets + * click on the gear icon in upper left of screen + * click on Widgets + * click on the pencil icon in upper right of screen + * click and hold the three lines that appear on the right side of the widget that you want to move. Drag the widget to the order in the list that you'd like it to appear in your widget quickscreen. + + + + + +## Extra Credit: Alexa integration +* Since you have IFTTT/Maker requests working, you can get it to work with anything that supports IFTTT, including Alexa. You will need to add "alexa" to your ENABLE line in your Heroku settings. And then repeat the steps above, but instead of using "ButtonWidget" service we started with earlier (the "+if" part of the setup)...you will use the "AmazonAlexa" service. + + + + + + * Alexa requests do not need underscores, FYI. diff --git a/_sources/nightscout/multiadmin.md.txt b/_sources/nightscout/multiadmin.md.txt new file mode 100644 index 00000000..489485a0 --- /dev/null +++ b/_sources/nightscout/multiadmin.md.txt @@ -0,0 +1,231 @@ +# Multiple sites and support + + + +You might need to have access to multiple accounts without having to juggle between logins and passwords. Below are described some centralizing methods reducing the administrative burden. + + + +## Remote support and security + +Giving username and passwords to someone in order to obtain help to fix Nightscout raises serious security issues. Malicious code can be added to your Nightscout project by ill-intentioned people. Always make sure the version deployed is a fork of the official project. After receiving help, good practice is to change your passwords (if shared) and your API secret. + +When possible prefer inviting collaborators (see below) and remove them once the issue is fixed. + + + +## Github + +You need only one Github account since you can connect multiple web apps to the same GitHub account. + +Using this strategy you only need to update one GitHub account when a new Nightscout version is released and you will be able to deploy it in all your web apps. + +```{hint} +If you have several web apps connected to the same GitHub repository you must use the [standard update method](/update/update/). +**Not redeploy** (else you'll break all the links to the repository). +``` + + + +### Enable automatic deploys in Heroku + +Automatic deploys will allow you to update automatically your Heroku apps when you update the GitHub repository: you will not need to login into Heroku and perform Manual Deploy, as soon as a new version will be merged into GitHub an automated deploy will trigger in all enabled Heroku apps. + +- To enable automatic deploy, [log in Heroku](https://dashboard.heroku.com/apps/) and select your app, then `Deploy`. Verify GitHub and your `cgm-remote-monitor` app are connected. + + + + + +- Verify the `master` branch is selected and click `Enable Automatic Deploys`. + + + + + +- Your Heroku site will update automatically every time you update the GitHub repository. + + + + + +### Automatic deploys in Railway and Northflank + +You don't need to do anything as all your web apps will upgrade automatically when you upgrade GitHub. + + + +## Heroku + +You can setup multiple Nightscout sites per Heroku account. You be charged the Eco/Basic plan fee for **each app**. + +You can setup collaborators in Heroku. This is very useful for remote support. + + + +### Invite someone as a collaborator + +- Log into your Heroku account and select your app. + + + + + +- Select `Access`. + + + + + +- Click `Add collaborator` and enter the email address of the person supporting you (that is the email address he used to setup his own Heroku account). + + + + + +- You will now see it as a collaborator. Using the pen icon you can modify it or delete it (useful when asking for support, once everything is working). + + + + + +### Being a collaborator + +*Note: you will receive an email with the invitation.* + +- Log in your Heroku account. You will see the apps you are collaborating to in the same list than your primary app. You can now perform most tasks directly in that one Heroku account (deploys, change variables, ...). + + + + + +## Atlas + +You can invite another user in your organization in order to manage several organizations from the same Atlas account. This is very useful for remote support. + +### Invite another user + +[Log into](https://account.mongodb.com/account/login) your Atlas account. + + + +- Top menu, click `Access Manager` and select `Organization Access` from the drop down menu + + + + + +- Click `Invite Users` + + + + + +- Enter the email address of the person supporting you (that is the email address he used to setup his own Atlas account). + + + + + +- Select `Organization Owner` then click `Invite to Organization`. + +```{warning} +**Make sure you enable `Organization Owner` for the invited user!** +``` + + + + + +### Being invited + +*Note: you will receive an email with the invitation.* + +- Log in your own Atlas account. + +- Top left, from the drop down menu click the caret and select `View all Organizations` + + + + + +- In the left menu, click `Invitations` then click `ACCEPT` the invitation. + + + + + +- Going back to all your organizations you can now see and administer both of them from this account. In the example below `Nightscout` is your own organization and `My Org 2020-09-20` is a guest organization. + + + + + +```{hint} +You can rename your organizations from the top left cog (Settings) then clicking the pen icon. +``` + + + + + +## Northflank + +You can setup two Nightscout sites per Northflank account. The 20$ per month credit applies. + +You can setup teammates in Northflank. + + + +### Invite a teammate + +- Log into your Northflank account and select `Overview`, in `Members` click **`+`** to add a teammate. + + + + + +- Enter the email address of the person supporting you (that is the email address he used to setup his own Northflank account). Add `Admin` privileges if you want him to interact with your data, leave `Default` for an observer. + + + + + +- You can manage teammates in `Members`: change privileges and delete them, or revoke invitations. + + + +### Being invited + +You will receive an email with the invitation. + +You will see the invitee project with yours. + + + +## Railway + +- Open your Railway [dashboard](https://railway.app/dashboard) and select your project. + + + + + +- Top right select `Settings` and `Members`. +- Enter the email address of the person supporting you (that is the email address he used to setup his own Railway account). Select `Can Edit` privileges if you want him to interact with your data, leave `Can View` for an observer. + + + +- Confirm the invite with `Invite to project`. + + + + + +### Being invited + +You will receive an email with the invitation. + +You will see the invitee project with yours. + + diff --git a/_sources/nightscout/new_user.md.txt b/_sources/nightscout/new_user.md.txt new file mode 100644 index 00000000..5d30a3b7 --- /dev/null +++ b/_sources/nightscout/new_user.md.txt @@ -0,0 +1,84 @@ +# New Nightscout Users + +*"What is great is there will be multiple options for those interested in setting up the system! #wearenotwaiting" J.A.* + + + +## Vendors + +```{note} +Hosted services include everything: platform, database and support. +``` + +You can use a hosting provider that does all of this work for you in exchange for a monthly fee. There are many options available for this. If you're a non-technical person, this is a **great choice**. + + + +## Building Nightscout DIY in a cloud platform + +You can run your Nightscout site in several vendors platforms, using free or paid accounts. + +Below is a list of most used platforms. There are probably others, don't hesitate to [open an issue in the documentation](https://github.com/nightscout/nightscout.github.io/issues) with the easiest deployment method if you want to see them named here. + + + +## Basic concepts + +Even if knowing how it works is not mandatory, it is very useful to understand a few background concepts before starting DIY Nightscout. + +1. The **code** available open source in [GitHub](https://github.com/nightscout/cgm-remote-monitor) or packaged for you in [Docker](https://hub.docker.com/u/nightscout) is the set of instruction that will be used to make your Nightscout. You don't need to understand it or be a programmer to use it. +2. Your Nightscout will usually be running a **web application** in the internet cloud, meaning that somewhere on the planet, a computer or another will spend some of its time to keep your Nightscout active. This is the engine of Nightscout: it will make sure to be ready to accept the data you will send to it (BG, treatments, ...) or to answer to data requests when you ask them (BG, reports, ...) and even send alarms when instructed to do so. You will not see the engine work but you will see its frontpage: the web URL of your Nightscout site, which will be available on any device connected to the internet. +3. Since you will need to store a lot of data, Nightscout must have a **database**. This database will also be in the cloud, meaning data will be stored on one or more computers, somewhere. The Nightscout engine mentioned above will store and read data from this database whenever required. + + + +**From this you understand there are three main pieces necessary to build your Nightscout:** + +1. **The Nightscout code also known as cgm-remote-monitor** +2. **A cloud platform running the Nightscout web app** +3. **A cloud database storing Nightscout data** + +Some platforms offer both engine and database like Azure, Railway, Northflank and all VPS servers. But you can use an external database if you want. Some others like Heroku or Fly.io don't propose a database and require you to use an external one. Traditionally the database holding Nightscout data is hosted by another provider (mLab, now MongoDB Atlas) but it might not be the most reliable solution. + + + +## Free DIY + +These are the current solutions not involving, or limiting to a strict minimum, costs. + +```{note} +Most vendors will require a credit card to authenticate users and avoid abuse. +``` + +[Azure](/vendors/azure/new_user), [Northflank](/vendors/northflank/new_user), [Fly.io](/vendors/fly.io/new_user), [Render](/vendors/render/new_user), [Atlas](/vendors/mongodb/atlas), [Google Cloud](/vendors/google/new_user), [Oracle](https://www.dropbox.com/s/5twlqrndofqno0t/0-amber-oracle.pdf) + + + + + +## Paid DIY + +These solutions require a monthly fee. + +```{note} +Paying for a platform doesn't imply your database is included and covered by the plan. +``` + +[Heroku](/vendors/heroku/new_user), [Railway](/vendors/railway/new_user) with [database](/vendors/railway/database), [Northflank database](/vendors/northflank/database) or [NAS](nas) + + + + + +## Security and safekeeping + + +- Do not use the same password for all your accounts, and choose passwords that are not easy to guess. +- Do not use the `API_SECRET` for the Atlas database password. +- Do not use your Dexcom or CareLink user name or password for Nightscout components. +- Do not share the `API_SECRET` or other passwords of your accounts to others. +- Do not use Nightscout or any related applications on rooted and/or otherwise compromised devices, and ensure you always have the latest operating system and virus protection updates installed. + +If you want to read more about Nightscout security, including about additional configuration options to make your installation more secure, please check our [security guide](/nightscout/security.md). + + diff --git a/_sources/nightscout/platform.md.txt b/_sources/nightscout/platform.md.txt new file mode 100644 index 00000000..288b11a0 --- /dev/null +++ b/_sources/nightscout/platform.md.txt @@ -0,0 +1,159 @@ +# Choose your platform + +```{admonition} Too complicated? Not what you're looking for? +:class: seealso +Consider a hosted Nightscout service! Check for easier solutions [here](/index.md#nightscout-as-a-service). +``` + + + +Various platforms are available to host your Nightscout site in the cloud. + +```{warning} +**Creating a [database](/nightscout/database) is mandatory if you want to use: Heroku, Railway, Northflank, Fly.io or Azure.** +Make sure you have one before creating a Nightscout web app in these platforms. +``` + +Find a list of commonly used hosting services below, decide which one you'll want to use. + + + +```{card} +## Heroku +![Heroku Eco](/vendors/img/Heroku.png) +^^^ +Since the [beginning](https://github.com/nightscout/cgm-remote-monitor/pull/98) Heroku has been a very popular platform for Nightscout. Most of the documentation was based on a Heroku Nightscout. +On August 25th 2022, Salesforce decided to [drop the free plan](https://blog.heroku.com/next-chapter). +You can [create your new Nightscout site with Heroku](/vendors/heroku/new_user) using an [Eco plan](https://www.heroku.com/pricing) (5$/month). + +**Pros**: +* Large platform with a reliable history +* Well documented, well known by the community + +**Cons**: +* The Eco plan has the same limitations than the previous Free plan, for 5$ per month +* For a Nightscout site a 7$ per month Basic plan is not really worth it (compared to hosted solutions) +* **Doesn't include a database** + ++++ +Follow [these instructions](/vendors/heroku/new_user.md) to build your Nightscout site in Heroku. +``` + +```{card} +## Azure +![Azure](/vendors/img/Azure.png) +^^^ +Nightscout DIY was [originally](https://github.com/rnpenguin/cgm-remote-monitor) created with Azure but most users dropped it after costs increased. +A new deployment method fitting in the [free tier](https://azure.microsoft.com/en-us/pricing/free-services) has [been created using a Docker container](/vendors/azure/new_user). + +**Pros**: +* Large platform with a reliable history +* Well known by the community IT specialists +* Using a basic plan and free services keep it free + +**Cons**: +* Trial account lasts maximum 12 months +* Basic plan and pay as you go is free if you stay within quotas +* The F1 free app service plan is designed for testing, not production +* **The Cosmos database doesn't integrate correctly with Nightscout** + ++++ +Follow [these instructions](/vendors/azure/new_user.md) to build your Nightscout site in Azure. +``` + +```{card} +## Railway.app +![Railway](/vendors/img/Railway.png) +^^^ +You can easily create a new Railway Nightscout site with a MongoDB Atlas or a Railway MongoDB database. The [Hobby plan](https://railway.app/pricing) (5$ per month) allows one Nightscout site and a small database. + +**Pros**: +* Easy to deploy or migrate an existing site from Heroku (but not worth it without free tier) +* Simple to use and troubleshoot +* Can use a reliable native Railway MongoDB database, the cost will add-up within the subscription ($) + +**Cons**: +* The free tier has been removed, only active developers can have 5$ credit per month +* The railway.app domain is blocked for safety by some companies +* Railway network model causes issues with some follower app and devices + ++++ +Follow [these instructions](/vendors/railway/new_user.md) to build your Nightscout site in Railway. +``` + +```{card} +## Northflank +![](/vendors/img/Northflank.png) +^^^ +You can create your new [free](https://northflank.com/pricing) Northflank Nightscout site, with its own Northflank database or with a MongoDB Atlas database. + +**Pros**: +* Nightscout fits in the free tier +* Easy to deploy or migrate an existing site from Heroku +* Simple to use and troubleshoot +* Can use a professional native Northflank MongoDB database ($) + +**Cons**: +* The Nightscout address generated for your site is impossible to remember + ++++ +Follow [these instructions](/vendors/northflank/new_user.md) to build your Nightscout site in Northflank. +``` + +```{card} +## Fly.io +![Fly.io](/vendors/img/Fly.io.png) +^^^ +Fly.io proposed a simple migration wizard from Heroku and you can create your new Nightscout site in Fly.io. Using a computer is mandatory with Fly.io as managing your site will require the use of a command line utility. Not recommended for beginners. + +**Pros**: +* Nightscout fits in the free tier +* Easy to migrate an existing site from Heroku + +**Cons**: +* **Maintaining your site requires the use of command line instructions, not very intuitive** +* **Doesn't include a database** + ++++ +Follow [these instructions](/vendors/fly.io/new_user.md) to build your Nightscout site in Fly.io. +``` + +```{card} +## Google Cloud +![xDrip+](/vendors/img/GoogleCloud.png) +^^^ +A scripted Nightscout installation in Google Cloud is a new complete solution proposed by the xDrip+ developers team. Whilst deploying Nightscout manually in Ubuntu can be complex, their approach makes is rather simple for non-technical people. + +**Pros**: +* Complete solution offering a large free database +* A web interface to edit your variables +* Tools provided to migrate the database from another platform +* Virtually free (<5c/month) + +**Cons**: +* Not available for free for Australia and Cina users +* Relying on a free DNS provider + ++++ +Follow [these instructions](https://navid200.github.io/xDrip/docs/Nightscout/GoogleCloud.html) to build your Nightscout site in Google Cloud. +``` + +```{card} +## Render +![xDrip+](/vendors/img/Render.png) +^^^ +A free solution with little experience. + +**Pros**: +* No credit card required + +**Cons**: +* The free plan doesn't guarantee any reliability +* App will sleep after 15 minutes +* Render URLs are considered unsafe by some internet providers +* **Doesn't include a database** + ++++ +Follow [these instructions](/vendors/render/new_user.md) to build your Nightscout site in Render. +``` + diff --git a/_sources/nightscout/plugins-old.md.txt b/_sources/nightscout/plugins-old.md.txt new file mode 100644 index 00000000..dfb08c82 --- /dev/null +++ b/_sources/nightscout/plugins-old.md.txt @@ -0,0 +1,4 @@ +--- +orphan: true +--- + diff --git a/_sources/nightscout/plugins-v15.md.txt b/_sources/nightscout/plugins-v15.md.txt new file mode 100644 index 00000000..1adfd179 --- /dev/null +++ b/_sources/nightscout/plugins-v15.md.txt @@ -0,0 +1,68 @@ +--- +orphan: true +--- + +# [Nightscout-connect](https://github.com/nightscout/nightscout-connect) + +As the dependencies of the historical plugins (`bridge` and `mmconnect`) have been deprecated, a new plugin has being created to allow long term sustaining and increase the number of supported cloud providers. + +This plugin is under test and is currently only available in the `dev` branch of Nightscout ([version 15.0](https://github.com/nightscout/cgm-remote-monitor/tree/dev)). + +## Prerequisites + +You need to use the development branch of Nightscout. + +```{admonition} AAPS users +:class: warning +Do not upgrade Nightscout to V15 unless you use the `dev` version of AAPS. +``` + +Follow [these guidelines](/update/dev_branch) to update your Nightscout app to `dev`. + + + +In order to enable the `nightscout-connect` plugin you need to add `connect` in your ENABLE variable. + +Edit your variables following [these instructions](/nightscout/setup_variables.md#nightscout-configuration), search the `ENABLE` variable, modify its contents to add the word `connect`, separated by a space, at the end of the line. + + + +## `dexcomshare` + +`dexcomshare` is the replacement of `bridge`. + +In order to use it you need to add the following variables in your [Nightscout configuration](/nightscout/setup_variables.md#nightscout-configuration): + +Remove the word `bridge` from the `ENABLE` variable list. + +`CONNECT_SOURCE=dexcomshare` + +`CONNECT_SHARE_SERVER=ous` Add this variable **only** if you're not in the US. **Else don't add it (us).** + +`CONNECT_SHARE_ACCOUNT_NAME=` The username on your master device (the one connected to the sensor) + +`CONNECT_SHARE_PASSWORD=` The password matching the username above. + + + +## `minimedcarelink` + +`minimedcarelink` is the replacement of `mmconnect`. + +In order to use it you need to add the following variables in your [Nightscout configuration](/nightscout/setup_variables.md#nightscout-configuration): + +Remove the word `mmconnnect` from the `ENABLE` variable list. + +`CONNECT_SOURCE=minimedcarelink` + +`CONNECT_CARELINK_REGION=us` or `eu` Match the area with minimed.carelink.**eu** or .com (i.e. **us**) + +`CONNECT_CARELINK_USERNAME=` The username on your master device Minimed app + +`CONNECT_CARELINK_PASSWORD=` The password matching the username above. + +If you are caregiver of more than one patient also add: + +`CONNECT_CARELINK_PATIENT_USERNAME=` The name of the patient whom data you'll want in Nightscout. + + diff --git a/_sources/nightscout/profile_editor.md.txt b/_sources/nightscout/profile_editor.md.txt new file mode 100644 index 00000000..7b483c5a --- /dev/null +++ b/_sources/nightscout/profile_editor.md.txt @@ -0,0 +1,67 @@ +# Setup your Profile + + + +The top part will show your site settings: [`Title`](/nightscout/setup_variables.md#custom_title-nightscout), [`Units`](display-units) and [`Date Format`](/nightscout/setup_variables.md#time_format-12). + + + + + +## Profile view + +Profile Editor will display your active profile. If you created more than one profile you can select the one you want with the drop down menu `Stored Profiles`. + +You can add a profile with `+`, delete it with `X` and duplicate (clone) it to create a new one starting with the values in the current one. + +Note: changing profile selection keeps the modifications you've made in other profiles. + + + + + +Each profile has a `Name`, a `Timezone` and a `DIA` that you can modify. If you don't know which DIA to use, ask you endocrinologist since this is a complex subject. See also [here](https://www.ncbi.nlm.nih.gov/pmc/articles/PMC4454113/). + + + + + +For each profile you can define `Insulin to carb ratio (I:C)`, `Insulin sensitivity factor (ISF)` and `Carbs absorption rate`. Both `I:C` and `ISF` can be defined for specific times of the day by slices of 30 minutes, click the `+` sign to add another interval. + +These values are key to diabetes management. Ask your endocrinologist about them if you don't know where to start. + +Look [here](https://diyps.org/2014/05/29/determining-your-carbohydrate-absorption-rate-diyps-lessons-learned/) for calculating the carbs absorption rate. + + + + + +If your uploader doesn't send pump `basal` values to Nightscout, you can duplicate the information in `Basal rates` in order to match your current basal profile (and Nightscout is also a nice place to save this information). Basal rates can be defined by 30 minutes intervals, click `+` to add another one . + + + + + +You can also define your `Target BG range` Low and High for various moments of the day. + + + + + +After you defined your profile you need to `Authenticate` with your API Secret in order to be able to save it. + +For modifications, read the next paragraph and make sure you understand the `Database records` mechanism. + + + + + +## Modifying a profile and Database records + +When you modify a profile and save it, the whole database record will be updated to reflect the profile change. This means all periods of time using this specific profile since the database record `Valid time and date` will be updated to your profile modification. If you don't want this to happen, you should create a new database record and recreate your profiles in this new record. + +You can add a record with `+`, delete one with `X` (it will delete the corresponding profiles information in the time frame of the record) and duplicate (clone) it. + + + + \ No newline at end of file diff --git a/_sources/nightscout/pushover.md.txt b/_sources/nightscout/pushover.md.txt new file mode 100644 index 00000000..3c3ec8c0 --- /dev/null +++ b/_sources/nightscout/pushover.md.txt @@ -0,0 +1,349 @@ +# Remote notifications + +While Loop app currently sends notifications locally on Loop user's iPhone, parents and caregivers likely want those messages on their phones, too. We can achieve this functionality through a combination of Nightscout, IFTTT, Google, and Pushover. + +Traditionally, most people may already know of Pushover alerts through their NS site. The old Loop docs had set up for how to add your `PUSHOVER_ANNOUNCEMENT_KEY` , `PUSHOVER_API_TOKEN`, and `PUSHOVER_USER_KEY` in your Heroku settings to get notifications on the non-looping phones of parents and caregivers. The drawback for that method is that you could not necessarily fine-tune the alerts (maybe you wanted battery alarms on your NS website, but not get pushovers for them...a bit hard to separate out the environments that way) and Pushover had a demanding acknowledgment requirement. If you failed to acknowledge an alert, you may end up getting alarm fatigue fairly quickly as the alarm repeated itself. + +Using Pushover **THROUGH** IFTTT however, we can improve the possible notifications and who receives which ones. For example, a teenage Looper may want notifications when his/her pump site needs changing and when his/her Dexcom is about to expire in the next day. S/he already gets local notifications on his/her phone via Loop for low reservoir volumes, low pump battery, and Loop failures. Dexcom app provides high/low BG notifications locally, too. If s/he were to get those same alarms via Pushover, s/he would inevitably get alarm fatigue. A remotely-monitoring parent may want additional information, like a pushover alert when the school nurse boluses for lunch, as well as Loop failures, low iPhone battery level for the child, low pump battery, and other such information that might be useful. Perhaps there's also an emergency contact person that you only want to get high/low BG alerts...you can set that up as well quite easily. + +The basic concept is that NS puts out an event that triggers the IFTTT service called Webhooks (old name was "Maker Webhooks" hence you may see references to "maker" in NS docs). Actually, there are several types of events that NS has programmed in all ready to use in IFTTT. + + + + + +For this setup, we are going to use the most general logging event called `ns-event`. You'll get all the alarms and notifications logged, and then you can decide in subsequent steps which ones you'd actually like to send to your phone for pushover notification. + +As a brief roadmap for what we are going to do: + +1. Get necessary accounts setup +2. Add a folder to your Google Drive +3. Make an IFTTT applet to log NS events to your Google Spreadsheets +4. Enable NS to work with that new IFTTT applet +5. Make an IFTTT applet to send Pushover alert when the Google Spreadsheet is updated + +## Get Prepped + +If you don't already have these steps done, you will need them. Skip any that you already have done. + +* Setup a Nightscout site +* Get an [IFTTT account](https://ifttt.com) +* Get a [Pushover Account](https://pushover.net) +* Get a [Google Account](https://accounts.google.com/SignUp) +* Download the Pushover app onto your phone, and any other phone you'd like to receive Pushover alerts +* Download the IFTTT app onto your phone, and any other phone you'd like to use IFTTT applets on +* Login to the Pushover and IFTTT apps with your login information + +## Add a Google Drive folder + +* Login to your Google account and select Google Drive + + + + + +* Click on the blue "New" button and create a new folder named IFTTT. + + + + + +* Double click on the newly created IFTTT folder, select the blue "New" button again, and create a new subfolder called "Nightscout-Alarms" + + + + + +This IFTTT/Nightscout-Alarms folder will eventually contain numerous Google Spreadsheets, one for each NS alarm or information that is logged. As new alarms are triggered, the IFTTT applet we are about to write will add a row to the appropriate spreadsheet logging the time of the alarm and any other reported details that go with the entry. For now though, your drive will be blank...screenshot below just to give you an idea of where we are going. + + + + + +## Make 1st IFTTT Applet to Log NS Alarms + +* Login to your IFTTT.com account and select the "New Applet" button. + + + + + +* In the screen that appears, click on the blue "+this" part of the screen + + + + + +* In the next screen, type "webhooks" in the search field and then click on the blue connect button + + + + + +* If this is the first time you are using IFTTT Webhooks service, you will have a "Connect" button to select. If you already have IFTTT applets using Webhooks, you won't see this screen...just move to the next bullet. + + + + + +* Click on the "receive a web request" blue box, and then fill in the Event Name as `ns-event` and then press the "Create trigger" button. (Side note: the event name used here corresponds to the triggers discussed above for core events that NS already has integrated for IFTTT users. If you want to, instead, use the other triggers such as ns-warn or ns-urgent, you can. This example is using the most general trigger so that the options are wider for most users.) + + + + + +* Click on the blue "+that" text + + + + + +* Enter `google` in the search field and click on the Google Sheets icon + + + + + +* Select the green "Add row to spreadsheet" box + + + + + +* Delete the contents of the "Spreadsheet Name" and "Drive folder path". For the "Spreadsheet Name", click the "Add Ingredient" button and select the "Value1". For the "Drive folder path", enter `IFTTT/Nightscout-Alarms`. You do not have to modify the "Formatted row" box's contents. Click the "Create action" button at the bottom. + + + + + +* Turn off the toggle for receiving notifications when the applet runs, and then click the Finish button + + + + + +* You'll now have the finished IFTTT applet that will cause a row to be added to a Google spreadsheet...tracking all your NS notifications and alarms. If it is the first time that alarm has been logged, the applet will also create the spreadsheet itself. After a while, your IFTTT/Nightscout-Alarms folder will start to look like the screenshot posted above with numerous spreadsheets for each alarm type. + + + + + +## Enable IFTTT Webhooks in your Nightscout site + +```{note} +If you already have created IFTTT buttons previously to work with your NS site, you can skip this section. If those buttons are working, then you've already added your MAKER_KEY and "maker" to your ENABLE line in Heroku. +``` + +* To actually make that first applet work, we need to enter a "Maker Key" to get NS and IFTTT talking to each other. Find your Maker Key by going to your IFTTT account, Services and then clicking on Webhooks. (Your screen may not have as many services showing; the example account below just happens to already use several services.) + + + + +******** + + + + +* You will see your Maker Key as the last part of the URL; copy that last part (the red circled part) + + + + + +* Navigate to your Heroku account's settings tab, "reveal config vars" and (1) add your Maker Key to the MAKER_KEY line and (2) add "maker" to your ENABLE line. + + + + + + + + + +## Make 2nd IFTTT Applet to send Pushover notifications + +* In your IFTTT account, select the "New Applet" button. + + + + + +* In the screen that appears, click on the blue "+this" part of the screen + + + + + +* In the next screen, type "google" in the search field and then click on the "Google Sheets" logo. + + + + + +* Click on the "New row added to spreadsheet" as the trigger. + + + + + +* Enter the following information: Folder path is `IFTTT/Nightscout-Alarms` and for the filename you are going to enter the name of the particular NS alarm or information that you would like to get pushover alerts for. Click on the "Create trigger" button to save the trigger. + + + + +```{note} +This applet can't be created unless your filename (alarm spreadsheet) already exists. If your 1st applet we created above hasn't run for a long time, the spreadsheets may not exist yet because the alarms haven't triggered. You have two options...(1) manually create the file in your Google Drive so that you can finish the applet now or (2) wait several days/weeks for the alarms to happen and that will automatically create the files in your Google drive. +If you choose option 1, here's a partial list of some of the filenames you could create in advance: +``` + + * Loop isn't looping + * Cannula age 48 hours + * Cannula age 72 hours + * Meal Bolus + * Warning, Pump Reservoir Low + * Warning Uploader Battery is Low + * Temporary Override + + Depending on your alert levels you specified in NS, some of the hours in the titles may vary to match your settings + +* Click on the blue "+that" text + + + + + +* Enter `pushover` in the search field and click on the Pushover icon. If this is your first time linking your IFTTT to Pushover, you will be prompted to enter your Pushover account login and allow IFTTT access. This only needs to be done once. + + + + + +* Select the "Send a Pushover notification" box + + + + + +* Delete the contents of the "Title" and "Message" and "URL" boxes. For the Title, click the "Add Ingredient" button and add `ColumnC`. For the "Message", click the "Add Ingredient" button and add the values of various columns from your spreadsheet for the information you would like to include. For the alerts: `ColumnC` contains the alarm name, `ColumnA` is the date/time of the alarm, and `ColumnD` has more detailed information about the info/alarm. This is a pretty decent recipe to follow to get the useful information in your notification. + + + + +* Select the "Message Priority" that you would like for this particular alarm type. + + + + + +* Select the "Device" that you would like to receive this particular alarm type. The devices listed will be all your devices that have Pushover app installed and logged into. Click "Create Action" when you are finished. + + + + + +* You'll now have made the IFTTT applet that will cause a Pushover notification to a particular device for a particular NS alarm, once the first applet records the alarm in the google spreadsheet. Keep the "receive notification when this Applet runs" toggled off and click the Finish button. + + + + + +## Revisit Nightscout Alert Levels + +Putting all these notifications together may cause you to want to revisit the alert levels you have set in your Heroku settings. Here's a short summary of NS for the looping-related alerts (Note: the last row, Upbat, is the Looping iPhone battery level for Loop users; or the rig's battery level for OpenAPS users.) If you'd like some of these alarms for your site and don't currently have them activated (they are all off by default unless specifically turned on), the lines you'd need to add are in the last column. If you like the default values of the WARN and/or URGENT, you don't have to add those extra lines...just the line to enable the alerts will be sufficient. + +SETTING | +DEFAULTWARN | +DEFAULTURGENT | +HEROKUSETTINGS | +
---|---|---|---|
CAGE | +48 | +72 | +CAGE_ENABLE_ALERTS = trueCAGE_WARN=XXCAGE_URGENT=XX | +
SAGE | +164 | +168 | +SAGE_ENABLE_ALERTS = trueSAGE_WARN=XXSAGE_URGENT=XX | +
IAGE | +48 | +72 | +IAGE_ENABLE_ALERTS = trueIAGE_WARN=XXIAGE_URGENT=XX | +
LOOP | +30 | +60 | +LOOP_ENABLE_ALERTS = trueLOOP_WARN=XXLOOP_URGENT=XX | +
OPENAPS | +30 | +60 | +OPENAPS_ENABLE_ALERTS = trueOPENAPS_WARN=XXOPENAPS_URGENT=XX | +
PUMP_CLOCK | +30 | +60 | +PUMP_ENABLE_ALERTS = truePUMP_WARN_CLOCK=XXPUMP_URGENT_CLOCK=XX | +
PUMP_RES | +10 | +5 | +PUMP_ENABLE_ALERTS = truePUMP_WARN_RES=XXPUMP_URGENT_RES=XX | +
PUMP_BATT_P | +30 | +20 | +PUMP_ENABLE_ALERTS = truePUMP_WARN_BATT_P=XXPUMP_URGENT_BATT_P=XX | +
PUMP_BATT_V | +1.35 | +1.30 | +PUMP_ENABLE_ALERTS = truePUMP_WARN_BATT_V=XXPUMP_URGENT_BATT_V=XX | +
UPBAT | +30 | +20 | +UPBAT_ENABLE_ALERTS = trueUPBAT_WARN=XXUPBAT_URGENT=XX | +
+ +
++ +
+Analysis result will appear here.
+ +If the analysis result doesn't show any error, check below the data is what you actually wanted: + +**Database Username:**...
+**Database Password:**...
+**Database name:**...
(No database name is not an error) + + + +```{hint} +If you migrated from Heroku mLab add-on, your database username and database name should be identical. +``` + + + + + +If you've just created a new site, try to use [this help page](/_static/stringhelp.html) to verify or recreate it. + + + +If you're still in trouble continue below: + + + +## Recover your connection string + +If you've tried several times to deploy or migrate, you might end-up with many useless items in your accounts. At this point, you could benefit doing some cleanup in order to identify the correct Atlas database you want to connect to. Consider [cleanup](#cleanup) before continuing. + + + +a) Go to your MongDB account. Log in if necessary [https://cloud.mongodb.com/](https://cloud.mongodb.com/) + +b) Click `Connect` below your cluster name (in the example below `Cluster0`, but it might have another name) + + + + + +c) Click `Connect your application` + + + + + +d) A new view opens, in `(2) Add your connection string into your application code` you will find your `MONGODB_URI` or `MONGO_CONNECTION` string. + +Click `Copy` then `Close` + + + + + +e) Paste it into a place where you can edit the text (i.e. a Word or a Notepad document). + +Edit your string so that you add the database user password after the database user info. You defined them during your MongoDB Atlas database creation, when you reached [step **e)**](/vendors/mongodb/atlas/). + +Here’s an example of how the string is built up (`myFirstDatabase` might not show, this is normal): + +`mongodb+srv://` `nightscout` `:`**`