Water Reminder and logger


At the moment, Scriptable got the notification API, I got the idea of a water reminder because I know I drink too little. So I made this script to get a notification every hour, but keep it customiseable. The feature list has been growing since then and now reached a point where I’m satisfied to release it :slight_smile:

It’s features are:

  • Highly customiseable (interval of notifications, repeated notifications if I haven’t responded, sound, preset list of how much you want to write down,…)
  • Works completely in notifications, no need to open the app
  • Supports multiple languages & easily add new ones (currently supported: English, German)
  • Deletes the data after 2 days, which is stored locally in the documents directory of Scriptable

This uses optionally moment.js, which can be installed with my import-moment script


Well, it seems like I forgot to me the most important feature: The data is stored locally and is overwritten after 2 days.

Shortcuts can also log your water intake to Health, but there is no option to bulk delete it. Also, Shortcuts can’t schedule notifications. These are the two main reasons I made this script :wink:

I’ve added support to also log the water intake with Siri. How to set it up is described in the comment at the top of the script.

1 Like

thanks for the script. I am using it, its really cool.

For some reason, I do not want it any more. I have deleted the script in the Scriptable app. But I still get the notifications.

How can I disable the script ?

In the Scriptable settings there is an entry Notifications. Tap on it and it will display all scheduled notifications. Just delete all from this script by swiping left on them.

If you haven’t deleted the script, you could open a notification and tap “Disable notifications for today and tomorrow morning” to achieve the same effect.

Thanks for the hint. It worked.

	nl: {
		nothingDrunken: "je hebt nog niet gedronken vandaag. Neem je eerste slokje!",
		schedulingNotifications: "Scheduling Notifications",
		scheduledNotifications: "Herinnering gepland om:",
		notificationBody: "Vergeet niet te drinken! Heb je al gedronken? Open dan deze melding en kies de hoeveelheid.",
		progressToday: "Je hebt vandaag %a %u gedronken!",
		drunkenTooMuch: "Let op! Drink niet te veel want dat is niet gezond!",
		goalReached: "Woop woop! Je hebt je doel bereikt! Gefeliciteerd makker!",
		drinkMore: "Nog maar %a %u te gaan. Blijf water drinken!",
		yesterdayDrunken: "Gister: %a %u",
		lastTime: "De laatste keer heb je %a %u gedronken om %d uur.",
		nextNotification: "De volgende herinnering staat gepland om %d uur.",
		disableNotifications: "Schakel herinneringen voor vandaag en morgen ochtend uit.",
		scheduleNewNotifications: "plan herinneringen...",
		customAmount: "Aangepaste hoeveelheid...",
		lastDay: "gister",
		nextDay: "morgen",
		done: "Klaar",
		undo: "Maak ongedaan...",
		saved: "Opgeslagen!",
		added: "%a %u toegevoegd.",
		totalAfterAdd: "Het totaal is nu %a %u.",
		undoneAdd: "%a %u ongedaan gemaakt.",
		enterAmount: "Hoeveel heb je gedronken?",
		ok: "OK",
		amountAndUnit: "%a %u"

Thank you! I’ve added it to the script and fixed a bug if you’re using moment.js and it wasn’t downloaded. The updated script is in the Gist!