• Skip to primary navigation
  • Skip to main content
  • Skip to footer
DAILYNOMIE

DAILYNOMIE

Know Thyself

  • 🏑 Home
  • πŸ“² INSTALL
  • πŸ“– DOCS
    • πŸ“– Overview
    • πŸ’§Track Tab
    • πŸ•¦ Timeline Tab
    • πŸ“ˆ Dashboard Tab
    • πŸ… Goals Tab
    • ⁉️ WHATS UP
    • 🧰 Trackable
    • πŸ”Ž Super Search
    • πŸ’Ύ Storage Types
    • βŒ› Back in Time
    • ☁️ Sort/Remove
    • 🧊 Analytics
    • πŸ“Έ QR Codes
    • δ·• AfterNomie
  • πŸ”Œ PLUGINS
    • πŸͺ Nomie API
    • πŸ”„ Nomie Sync
    • 🧱 Blockly
    • πŸ‘¨β€πŸ‘©β€πŸ‘§β€πŸ‘¦ My People
    • πŸ“† Memories
    • πŸ’¨ Weather
    • πŸ§˜πŸ½β€β™€οΈ Meditate
    • βš–οΈ My Balance
    • ☁️ WordCloud
    • πŸ’¬ Quotes
    • 🫁 Breathe
    • ⏲ Fasting
    • πŸ’ͺ 7MinWO
    • ⌚️ Apple Watch
  • πŸ“” TUTORIALS
  • ⌚️ APPLE WATCH
  • 🎁 RELEASES
  • πŸͺ API
  • πŸͺ’API Connectors
    • πŸͺ’IFTTT
    • πŸͺ’ IOS Sortcuts
    • πŸͺ’ QR CODES

Featured

AfterNomie Integration

3 March 2024 by rdl

Sneak Preview: I recently created the AfterNomie Service. AfterNomie is a platform for creating emergency notes that can be read by your trusted contacts when you are death or if you are seriously injured. It is inspired by the WeExpire opensource tool, but specifically created to be used in conjunction with the DailyNomie app & Sync Service to also enable you to disclose your Nomie tracking history.

In order to enable to use the AfterNomie Service in conjunction with the DailyNomie instance of Nomie, I have integrated the platform in the DailyNomie App.

You can find more information on: δ·• Nomie AfterNomie
You can also directly visit the platform (you can use the service, but it will not be integrated with your Nomie Data): https://www.afternomie.com

Currently this integration is already running on the development environment (you can try it): https://dev.dailynomie.com

In the next production release of DailyNomie (v6.7.0-dn) this feature will be included.

DailyNomie QR Code Generator

29 February 2024 by rdl

I am pleased to announce that I have launched a service which will enable you to create QR Codes which containes specific tracker information which will be logged to Nomie when scanned.

Although the service is still in experimental mode, I decided to make it available for everybody so you can start using it. Your feedback will be much appreciated in order to improve the service!

You can find all information on how to use the service at: πŸ“Έ DailyNomie QR Code Generator

Happy scanning!

DailyNomie QR Magic

11 February 2024 by rdl

It has been some time since my last message on this page, so I thought let’s give you all an update what I am currently working on. Nomie is currently giving me the features I need, so there is not much to wish for..at least not for me. Please let me know if you have additional features you would like to see, I am always giving them a thought.

Lately I have been looking into some QR code opportunities. Brandon once shortly showed a tool he created which gives you the opportunity to create QR Codes to automatically track data to Nomie. One by your Coffee Maker for example. Although the code still had some challenges I am working on making this feature available for Nomie.

While working on the QR code tracking feature I got curious about other opportunities and I found a very intresting implementation on www.weexpire.com. This service let’s you capture your last wishes into a QR code which can only be accessed by your trusted friends or family after you died or get seriously injured. I thought this would also be a very good addition to the DailyNomie service, including some additional possibilities to disclose your Nomie tracking history next to your last emergency message. So I am also working on this service, sneak preview below:

🎁 Nomie Release 6.6.0-dn

5 September 2023 by rdl

Release 6.6.0-dn is a release which is mainly geared to update the code with the latest packages….regular maintenance. Along the way though I also fixed some small bugs and I was able to introduce 2 new features. One of the features is the ability to ‘overlay’ line and bar charts in the dashboard with context. This will enable you to visually see the impact of a certain context to trackables.

Features:
– Context overlays added in dashboard charts
– Location Manager added in the settings tab

Fixes:
– Year chart in trackable statistics was not showing the correct amounts.
– Locations could not be set manually in a Note

Context Overlay in Dashboard Chart
Context Overlay in Dashboard Chart

How To Install CouchDB on a Synology with self-signed certificates

23 April 2023 by rdl

Nomie’s CouchDB Storage is powered by PouchDB – which lets you sync your data in near time with a CouchDB server. If you’re technical enough to host and run a couchdb server, you can run Nomie on multiple devices on your own network. Note that CouchDB does not use encryption, and the data will be stored in readable JSON format.
The implementation of CouchDB requires you to be able to host a Docker Container and it requires some complex configuration. The good newsπŸ₯³ is that when you carefully follow below instructions you should be able to set it up yourself.

Starting points for below instructions

Below instructions will guide you through the steps which are required to host a CouchDB Docker container on your Synology NAS. Although there other ways (Portainer Stacks) of running the CouchDB Image as container on your NAS, below instructions will use the native -out of the box- toolset as part of your Synology DSM operating system. This tutorial will enable you to deploy a CouchDB container on your Synology NAS which you can securely connect to within your own network.

Instructions

Step1: Open the Docker Manager on your Synology NAS

Step2: Select the Image you would like to use

After you have opened the Docker manager, please:

  1. Click on Registry
  2. Search for couchdb
  3. Select the ‘couchdb’ option

When you have selected the image, please click on the Download button to download the image. When requested, pick the latest tag to download:

Your image will be download, see the blue indicator next to the Image section:

Step3: Configure a container from your CouchDB Image

Once your image is download (this can take some time, depending on your network speed), switch to the ‘Image’ tab, where you will find your just downloaded Image:

Select the couchdb:latest image and click on the Launch button:

You will now be guided though the setup and configuration steps of the container. The first step is to pick your Network. Please keep the default option -bridge- and click on the NEXT button:

The next screen will request you to configure some general settings.
First of all, give your new container a name which makes sense.
Please make sure to enable the auto restart option, which will make sure your container will automatically restart when it is stopped from running. This can -for example- happen when your NAS is rebooted.

Now that the initial settings are configured, you can click on the Advanced Settings button. A new screen will appear:

We need to create 2 additional Environment Variables to ensure our CouchDB instance will work properly:

  1. COUCHDB_USER => which defines the username which will enables you to login to CouchDB
  2. COUCHDB_PASSWORD => the password to use for the above defined user

Once you have added these 2 variables, click on the SAVE button and you will be redirected to the General Settings screen where you can click the NEXT button which will direct you to the next step/screen of the guided setup. This screen will define the network ports CouchDB will expose from the container. In order to access the container via these ports from your server, you should map them to similar local (server) ports. In addition you should add an additional port configuration (port 6984) which we will use later:

When you created above mapping, you can click on the NEXT button which will direct you to the screen where you will have to map a directory (volume in docker terms) from the container to a local (NAS) directory. This will ensure that the data persist hen the container needs to be rebooted, re-deployed or upgraded to a new version.

Click on the Add Folder options and provide the details as per below screenshot. Please make sure that you have created the folders you would like to map towards within your file explorer on your Synology NAS. In my example below I created the folders /docker/couchdb/data & /docker/couchdb/cert in the root of my Synology file explorer.

Click on the NEXT button and you will be directed to the last screen which will provide you with a summary of the settings you created:

When all the settings are correct, you can choose the DONE button to confirm. The container will be deployed and initialized.

Step4: Validate if your container is running

In order to validate if your container is running, please click on the ‘container’ tab and search for the container you just deployed:

As you can see in above screenshot, mine is properly running πŸ₯³πŸŽ‰. In addition you can validate in your browser if the database is running by typing <your server ip>:5984

Step5: Some additional settings for Nomie

As Nomie runs as a PWA from within your webbrowser and stores data in the browser cache, by default it will not be able to connect with your CouchDB server/data. This is by design -to keep your setup secure- to prevent that the CouchDB server can be connected and consumed from each and every ‘domain’.
We need to configure CouchDB to allow for Cross-Origin Resource Sharing (CORS). We will configure CouchDB via its admin Gui.
In your browser, please go to <your server ip>:5984/_utils and logon with your userid and password you configured in Step3.

After you have successfully logged in, please go to the settings page and select CORS as per below screenshot:

Now, click on the Enable CORS button and you will be given the below options:

You can either allow CouchDB to be accessed from all domains (not recommended from a security perspective), or you can specify the domain your Nomie application is running from. Click on the Add Domain button to activate your input.

Step6: Initialize CouchDB

We need to make sure that we run CouchDB in single Node Mode, as that all we need for our Nomie setup. In order to do so, please point your browser to <your server ip>:5984/_utils/#setup/singlenode

Once you have clicked the Configure Node button, you will get a message about replicating data. You can ignore this for our single node purpose.

Step7: Create your database

While you are in the CouchDB user interface, please click on the database icon and choose ‘Create Database’ as per below screenshot. Once done, you can configure the database as also shown in the screenshot:

Step8: Set the DataBase permissions

You have now created your database, but still need to configure its permissions. In order to do so, click on the Permissions option and under the Members section, add a user named nomie:

Step9: Create the user

In Step8 we made a user named ‘nomie’ member of our database, but that specific user is not yet defined in our environment. In this last step we will define the user. In order to do so, please use the UI to navigate to the _users database, and click on Create Document. A basic JSON string is populated for you, with a random _id value. Overwrite this string with a variation of the object below, and click Create Document.

{
  "_id": "org.couchdb.user:nomie",
  "name": "nomie",
  "type": "user",
  "roles": [],
  "password": "yoursecretpassword"
}

Step10: Enabling secure (ssl) connectivity

Most modern browsers will not allow to connect from a secure connection (https) to a non secure connection (http). The current setup of CouchDB as we established in the first 10 steps delivers us a non secure (http) setup. Luckily we have already prepared our container for the next step as we have enabled port 6984 (which will be needed for a secure connection) and we have created a volume mount for the certificates we need for the secure connection.

CouchDB supports TLS/SSL natively, without the use of a proxy server. HTTPS setup can be tricky, but the configuration in CouchDB was designed to be as easy as possible. All you need is two files; a certificate and a private key. If you have an official certificate from a certificate authority, both should be in your possession already. If you just want to try this out and don’t want to go through the hassle of obtaining an official certificate, you can create a self-signed certificate. Everything will work the same, but clients will get a warning about an insecure certificate. In the below instructions we will assume you do not have the certificates yet.

Step10-1: create a self-signed certificate

We will create our self-signed certificates ‘inside’ your running CouchDB container. Once created, they will persist in the certificate volume we have mounted in one of the earlier steps above. This will ensure that when you have to restart/update/upgrade the container, your certificates will be available and you do not have to repeat these steps. Please move to the container section in your Docker Manager app on your Synology. Select the CouchDB container and click on the Details button:

You will be directed to the screen as per below screenshot. Where you should select terminal (at the top in blue) and thereafter push the Create button:

Now a new terminal screen will appear.

Within this screen, please -one by one- execute the below commands:

shell> mkdir /etc/couchdb/cert
shell> cd /etc/couchdb/cert
shell> openssl genrsa > privkey.pem
shell> openssl req -new -x509 -key privkey.pem -out couchdb.pem -days 1095
shell> chmod 600 privkey.pem couchdb.pem
shell> chown couchdb privkey.pem couchdb.pem

Please see my example below, when requested in the terminal, please provide the details as per your situation:

Now you can close this window.

Step10-2: configure CouchDB

The next step is to ensure that CouchDB is enabled to use a secure connection by using the created certificates. Please switch to your CouchDB instance in your browser via <your server ip>:5984/_utils

While in the UI, choose the configuration screen, click on Main config.

The next action is to click on the Add Option button and fill in the below details and click on the Create button:

[ssl]
enable = true

Please repeat the above steps 2 more times with the following details:

[ssl]
cert_file = /etc/couchdb/cert/couchdb.pem
key_file = /etc/couchdb/cert/privkey.pem

Once done, you can validate if all was processed accordingly by scrolling through the Main config settings. You should find the following items as just created:

Step10-3: restart your container

In order to make the changes effective, you should restart your container. Please go back to your Synology Docker Manager app, find your CouchDB container and toggle the ‘active’ switch:

You should be able to connect to it using HTTPS on port 6984

Step10-4: validate if all is working

Now it is time to see if we can reach our CouchDB instance in a secure way, using https. Go to https://<ip to your server>:6984

When everything goes well, you will see a warning… Oh no! What happened?! Remember, clients will notify their users that your certificate is self signed!

Please be aware that the message might look different in each browser. The above example is from a Firefox screenshot. Click on the Advanced… button and you will be directed to the next screen:

Click on the Accept the Risk and Continue button. There you go, you will be directed to a screen which looks familiar from one of the first steps in this instruction, but now via a secure connection:

The final step we need to take is to make sure Nomie is configured to connect to our database. Let’s quickly configure Nomie to sync with your newly created database.

Step11: Setting up Nomie

REMARK: if you use Nomie on your Iphone/Ipad as an app (so not in a browser), please first follow the steps which I have added at the bottom of this instruction page (=> Iphone Users additional steps)

Please open your Nomie application and go to the More tab. When in the tab, go to the CouchDB settings. If you have not yet configured Nomie to use CouchDB, please make sure the CouchDB option is enabled by clicking on the Local Storage Only setting. You will be directed to below view, make sure to select he CouchDB option:

Once the CouchDB option is enabled you will be provided with a couple of fields to configure Nomie. Make sure to configure the settings as per below screenshot and in line with the configuration of your database through step1 to step9:

Note how we connect via our secure connection. Please make sure to use the password you have created for the nomie user in step 9. Sometimes you might get an error message that the connection was not successful. In most cases I was able to solve that by following step10-4 first in the browser you are launching Nomie from….
(and if you are using Nomie in an Iphone/Ipad app, please first follow the steps at the bottom of these instructions)
If everything went well, you will be shown the following screen:

You can click on the OK button after which this popup message will disappear and you will be back to the previous screen…. almost the same, but with 1 important difference. The switch behind the CouchDB option is now active and nicely colored green πŸŽ‰

We are done! I hope you made it so far following above instructions, because that means you have your own CouchDB database running on your Synology NAS, correctly configured and securely connecting to your Nomie installations on the devices you have installed Nomie on.

You are now in Sync πŸ›Ÿ…..have fun with it!

Some afterburners

Please be aware that your CouchDB database is only accessible within your own network (wifi). So a connection via a mobile service provider will fail.

You can obtain a domain or use the Synology DDNS functionality to enable connection from outside your own network/lan. This requires some more complex network setup on your Synology or your router. That can be a nice set of additional instructions I can add in the future.πŸ˜ƒ

βœ‹Iphone/Ipad Users additional steps

A self signed certificate is an easy way to secure your connection…unfortunately, if you have installed Nomie on your Iphone/Ipad as an application (so not running within a browser) you connection will fail. IOS does not trust self signed certificates, unless you take some additional actions.
You are lucky, I have documented these steps below.πŸ‘Œ

Iphone Setup Step1: locate your certificate file

In order to have your Iphone trust your self signed certificate, you need to load it within your settings as a trusted profile/certificate.
The first step is to get your certificate file downloaded on your Iphone. There are several ways to achieve this:

  • send the file via an email to your email address. Open the email on your Iphone and download the file
  • download the file in your Icloud and open the file in your Icloud from your Iphone
  • send the file via airdrop to your Iphone

I will provide you with a fourth alternative method which will also work.
First of all, make sure you remember where your certificate files are stored on your Synology Nas. We have defined that in Step3 of these instructions, where we mounted the volumes to your docker container. In my example I have mounted the certificate folder in the container to the /docker/couchdb/cert folder on my NAS. When you open that folder on your NAS with the Synology file explorer you will indeed find 2 certificate files:

In the next steps below, we will use the couchdb.pem file.

Iphone Setup Step1: download your certificate file

Now move over to your Iphone, go to your browser and browse to the address of your Synology NAS. You will be asked to login, please do so.
Initially you will be directed to the mobile UI of your Synology NAS as per below screenshot. Now please click on the settings icon:

You will see the following dialogue, please select Desktop Mode:

You will be directed to the desktop User interface, which will look very small on your screen πŸ₯΄. Remember you can always ‘zoom’ in via your normal gestures on your phone. On your screen you will see the file explorer icon, please click on this icon:

You will be directed to the file explorer on your NAS. Please navigate to the folder where your certificate files are located (see Iphone Setup Step1 above):

Now select the couchdb.pem file, click on the Action Button and choose ‘download’:

The following Popup screen will appear on your Iphone, please select Allow.
By the way, if you have chosen to download the certificate file via an alternative way as listed above, you will get the same Popup screen and you can follow the instructions further below for the additional setup steps.

When applicable you will be asked on which device you would like to install the profile. Pick your Iphone:

You will get a confirmation that the profile is download, you can now logout of the Synology NAS web GUI:

Iphone Setup Step3: Install the profile/certificate

The next step is to open the settings app on your Iphone and you will immediately notice below option popping up. Please click on it:

You will be directed to the following screen where you have the option to install your profile. Mine is called rdl, your is probably called different, depending on the name you gave it when you created the certificate. Please click on the install button:

You will be requested for your Iphone password and directed to the following screen where you should click on the install button:

Your profile is now installed, click on the Done button:

Next step is (again in your settings app) to navigate to: settings => General => About
At the bottom of the screen you will find the Certificate Trust Settings option. Please click on that option:

You will be directed to the next screen where you will also see your newly imported certificate (in my case ‘rdl’):

Now you can toggle the switch to activate your certificate. You will be requested to confirm, once confirmed…you are done.

You should now be able to connect to your CouchDB database from Nomie installed on your Iphone/Ipad as explained in Step11 above.

Have fun with itπŸ‘

Nomie API Plugin Introduction

13 April 2023 by rdl

What’s the API?

An API (“application programming interface”) is how two programs can talk to each other remotely. Nomie’s API lets you send data from external apps / websites / services into Nomie. Nomie’s API DOES NOT send data OUT of the app, only for bringing data in (for security purposes).

About the πŸͺNomie API Plugin

The Nomie API plugin allows you to push data notes into Nomie, for example importing your sleep data using IFTTT or Zapier.

The πŸͺNomie API Plugin acts as a client between a Nomie API Server and the Nomie app.

You can make use of the DAILYNOMIE API Server which I host.
Alternatively you can self host the Nomie API Server. You can find instructions on how to host your own server via the following link: Nomie Api Server

API calls are not sent directly to the device. Instead, each note sent through the API is encrypted with your private key and held in a slot on the API Server until Nomie on your device can import and decrypt it. That slot will be freed up once Nomie pulls the note down.

Installing the Plugin

The url of the plugin is:

https://dailynomie.github.io/nomie-plugin-api/

The πŸͺNomie API Plugin can be installed in Nomie via the following steps:

  • Go to the More Tab
  • Select Plugins
  • Click the + or Add Custom Plugin
  • Provide the url for the plugin
  • Tap Install Plugin

Configuring the Plugin

After installing the plugin, please open the plugin and you will be prompted to generate a new API key on an api server. Alternatively -if you already have an API key from a previous configuration- you can restore that key.

Generating a new key

Click on the New Key button and you will be prompted to provide the domain of your api server. You only have to provide the domain of your server (so without the https://). preferably you will host your own server, for convenience I have enabled a server which I only support on best effort: api.dailynomie.com

After your key is generated, you are ready to receive notes/logs.

Restore a key

If you previously acquired a key and you want to restore that on your device, you can do that by clicking on the Restore Key button.

in order to do so you need to provide the following information:

  • the domain of the server your previous key was acquired from
  • your previous API key
  • your previous private key

Only the combination of above information will enable a restore, so please make sure to keep these details after you have been provided with an api key.

Sending Data to the Api

Preferably you wil host your own Nomie API Server (and as such have your own url), but for convenience I have made a server available which I will support on best effort only.

  • URL :https://api.dailynomie.com/log
  • METHOD : POST
  • BODY : application/json

Available payload properties:

note – the content of the note to save in Nomie. Can include #tracker, @people, +context, text, anything

api_key – your api key

lat – latitude of a location

lng – longitude of a location

date – Date of event – any[javascript date format

Minimum required body payload

{
  "note": "Content of Note to save to nomie",
  "api_key": "YOUR API KEY"
}

All Available Options

{
    "lat": 31.3456,
    "lng" : -81.43235,
    "date": "2020-09-14T12:00:00.130Z",
    "note" : "#tracker(123) @person +context",
    "api_key": "YOUR API KEY"
}

Curl Example

curl --request POST \
  --url https://nomieapi.com/log \
  --header 'Content-Type: application/json' \
  --data '{
    "lat": 31.3456,
    "lng" : -81.43235,
    "date": "2020-09-14T12:00:00.130Z",
    "note" : "NOTE CONTENT HERE",
    "api_key": "YOUR API KEY"
}'

The Plugin Settings

After succesfully registering an api key you will be able to further configure some settings. When setting up the plugin for the first time, you will be directed to the settings page automatically. Otherwise you can access the settings page by clicking on the settings icon in the menu:

You will be directed to the following screen:

  1. Your API Key (you need this key to send logs/notes to Nomie)
  2. An example request. This will show you an example request which you can send to the API.
  3. Advanced. By expanding the advanced section you can copy your private key. You need your private key to restore your API (for example on an other device)
  4. Auto save new logs. Everytime data is send to the api, your data is stored (in an encrypted slot) on the server. When you open the Nomie app on your device, Nomie will pull the data from the server and empty the related server slots. When autosave is enabled, Nomie will automatically save the pulled data into Nomie log/note entries. When autosave is disabled, Nomie will hold the data untill you will manually authorise each pulled slot to flow into Nomie as a log/note.
  5. Toggle to switch the API functionality on and off. When disables, Nomie will NOT reach out to the server to pull data slots.
  6. You can either remove the current key from the Nomie app, but it will be kept on the server so you can resore it later. You can also fully destroy your key on both the client and the server. You API key will be gone…forever πŸ˜„

New Entries and Archive

When configured and enabled, the default startpage for the plugin is the inbox/archive section. This section can also be reached from other sections by clicking in the left top corner of the plugin:

The New Entries and Archive sections looks as follows:

New Entries

In above example I have just send over 2 entries via the api. Autosave is set to off, so you can manually decide what to do with the entry. You can either delete the entry by clicking on the bin icon, or you can save the entry.

Archive

From above example i have deleted one item and saved the other item. Both items will be stored in the archive….so you can repair any mistakes you madeπŸ˜„:

For the deleted/discarded entries, you have the option to restore them. When completely confident, you can clear the full archive.

« Previous Page

Footer

NOMIE

Nomie and the Blue Elephant are registered Trademarks of Happy Data, LLC. Indianapolis, IN.

DAILY NOMIE

Daily Nomie is maintained by Ronald de Lange. For any remarks or questions, please reach out to me via ronald_de_lange@hotmail.com

ME – THE DAILY NOMIE MAINTAINER

Our website uses cookies to provide you the best experience. However, by continuing to use our website, you agree to our use of cookies.